Merge "vold: metadata encryption: ensure F2FS GC targets correct device."

am: 3adf30745a

Change-Id: I9df60bbc12d7c70c0bd0fbda1e8604051306a8ee
gugelfrei
Paul Crowley 6 years ago committed by android-build-merger
commit 61ab6986a6

@ -15,6 +15,7 @@
*/
#include "IdleMaint.h"
#include "FileDeviceUtils.h"
#include "Utils.h"
#include "VolumeManager.h"
#include "model/PrivateVolume.h"
@ -92,8 +93,8 @@ static void addFromVolumeManager(std::list<std::string>* paths,
} else if (path_type == PathTypes::kBlkDevice) {
std::string gc_path;
const std::string& fs_type = vol->getFsType();
if (fs_type == "f2fs" &&
Realpath(vol->getRawDevPath(), &gc_path)) {
if (fs_type == "f2fs" && (Realpath(vol->getRawDmDevPath(), &gc_path) ||
Realpath(vol->getRawDevPath(), &gc_path))) {
paths->push_back(std::string("/sys/fs/") + fs_type +
"/" + Basename(gc_path));
}
@ -137,7 +138,8 @@ static void addFromFstab(std::list<std::string>* paths, PathTypes path_type) {
} else if (path_type == PathTypes::kBlkDevice) {
std::string gc_path;
if (std::string(fstab->recs[i].fs_type) == "f2fs" &&
Realpath(fstab->recs[i].blk_device, &gc_path)) {
Realpath(android::vold::BlockDeviceForPath(
std::string(fstab->recs[i].mount_point) + "/"), &gc_path)) {
paths->push_back(std::string("/sys/fs/") + fstab->recs[i].fs_type +
"/" + Basename(gc_path));
}

@ -41,6 +41,7 @@ public:
virtual ~PrivateVolume();
const std::string& getFsType() { return mFsType; };
const std::string& getRawDevPath() { return mRawDevPath; };
const std::string& getRawDmDevPath() { return mDmDevPath; };
protected:
status_t doCreate() override;

Loading…
Cancel
Save