Merge "Add kVisible flag to vold::Disk"

This commit is contained in:
Treehugger Robot 2021-01-18 14:54:27 +00:00 committed by Gerrit Code Review
commit 5e103f1106
2 changed files with 13 additions and 5 deletions

View file

@ -1092,9 +1092,14 @@ int VolumeManager::createStubVolume(const std::string& sourcePath, const std::st
auto vol = std::shared_ptr<android::vold::StubVolume>( auto vol = std::shared_ptr<android::vold::StubVolume>(
new android::vold::StubVolume(stubId, sourcePath, mountPath, fsType, fsUuid, fsLabel)); new android::vold::StubVolume(stubId, sourcePath, mountPath, fsType, fsUuid, fsLabel));
int32_t passedFlags = android::vold::Disk::Flags::kStub; int32_t passedFlags = 0;
passedFlags |= (flags & android::vold::Disk::Flags::kUsb); passedFlags |= (flags & android::vold::Disk::Flags::kUsb);
passedFlags |= (flags & android::vold::Disk::Flags::kSd); passedFlags |= (flags & android::vold::Disk::Flags::kSd);
if (flags & android::vold::Disk::Flags::kStubVisible) {
passedFlags |= (flags & android::vold::Disk::Flags::kStubVisible);
} else {
passedFlags |= (flags & android::vold::Disk::Flags::kStubInvisible);
}
// StubDisk doesn't have device node corresponds to it. So, a fake device // StubDisk doesn't have device node corresponds to it. So, a fake device
// number is used. // number is used.
auto disk = std::shared_ptr<android::vold::Disk>( auto disk = std::shared_ptr<android::vold::Disk>(

View file

@ -53,9 +53,12 @@ class Disk {
kUsb = 1 << 3, kUsb = 1 << 3,
/* Flag that disk is EMMC internal */ /* Flag that disk is EMMC internal */
kEmmc = 1 << 4, kEmmc = 1 << 4,
/* Flag that disk is Stub disk, i.e., disk that is managed from outside /* Flag that disk is an invisible Stub disk, i.e., disk that is managed from outside
* Android (e.g., ARC++). */ * Android (e.g., ARC++) and invisible to apps. */
kStub = 1 << 5, kStubInvisible = 1 << 5,
/* Flag that disk is a visible Stub disk, i.e., disk that is managed from outside
* Android (e.g., ARC++) and visible to apps. */
kStubVisible = 1 << 6,
}; };
const std::string& getId() const { return mId; } const std::string& getId() const { return mId; }
@ -120,7 +123,7 @@ class Disk {
int getMaxMinors(); int getMaxMinors();
bool isStub() { return mFlags & kStub; } bool isStub() { return (mFlags & kStubInvisible) || (mFlags & kStubVisible); }
DISALLOW_COPY_AND_ASSIGN(Disk); DISALLOW_COPY_AND_ASSIGN(Disk);
}; };