Workaround perdev_minors path change in Linux

This upstream Linux change has been discussed at https://patchwork.kernel.org/patch/8281851/
And included in AOSP in https://android-review.googlesource.com/c/kernel/common/+/202752
Some devices have been released without it, so we need this change to
have a working SDcard on those devices.

Change-Id: I323d85bd8381f82b75db09493ddc22f432cec548
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* 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 @@
     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;
         }