diff --git a/Disk.cpp b/Disk.cpp index b424aba..6c09295 100644 --- a/Disk.cpp +++ b/Disk.cpp @@ -49,7 +49,8 @@ static const char* kSgdiskPath = "/system/bin/sgdisk"; static const char* kSgdiskToken = " \t\n"; static const char* kSysfsLoopMaxMinors = "/sys/module/loop/parameters/max_part"; -static const char* kSysfsMmcMaxMinors = "/sys/module/mmcblk/parameters/perdev_minors"; +static const char* kSysfsMmcMaxMinorsDeprecated = "/sys/module/mmcblk/parameters/perdev_minors"; +static const char* kSysfsMmcMaxMinors = "/sys/module/mmc_block/parameters/perdev_minors"; static const unsigned int kMajorBlockLoop = 7; static const unsigned int kMajorBlockScsiA = 8; @@ -559,7 +560,8 @@ int Disk::getMaxMinors() { case kMajorBlockMmc: { // Per Documentation/devices.txt this is dynamic std::string tmp; - if (!ReadFileToString(kSysfsMmcMaxMinors, &tmp)) { + if (!ReadFileToString(kSysfsMmcMaxMinors, &tmp) && + !ReadFileToString(kSysfsMmcMaxMinorsDeprecated, &tmp)) { LOG(ERROR) << "Failed to read max minors"; return -errno; }