Merge "Extend vold support for creating ext4 images."

gugelfrei
Kenny Root 12 years ago committed by Gerrit Code Review
commit fd5b29be8c

@ -67,16 +67,18 @@ int Ext4::doMount(const char *fsPath, const char *mountPoint, bool ro, bool remo
return rc;
}
int Ext4::format(const char *fsPath) {
int Ext4::format(const char *fsPath, const char *mountpoint) {
int fd;
const char *args[4];
const char *args[6];
int rc;
args[0] = MKEXT4FS_PATH;
args[1] = "-J";
args[2] = fsPath;
args[3] = NULL;
rc = logwrap(3, args, 1);
args[2] = "-a";
args[3] = mountpoint;
args[4] = fsPath;
args[5] = NULL;
rc = logwrap(5, args, 1);
if (rc == 0) {
SLOGI("Filesystem (ext4) formatted OK");

@ -23,7 +23,7 @@ class Ext4 {
public:
static int doMount(const char *fsPath, const char *mountPoint, bool ro, bool remount,
bool executable);
static int format(const char *fsPath);
static int format(const char *fsPath, const char *mountpoint);
};
#endif

@ -379,8 +379,12 @@ int VolumeManager::createAsec(const char *id, unsigned int numSectors, const cha
if (wantFilesystem) {
int formatStatus;
char mountPoint[255];
snprintf(mountPoint, sizeof(mountPoint), "%s/%s", Volume::ASECDIR, id);
if (usingExt4) {
formatStatus = Ext4::format(dmDevice);
formatStatus = Ext4::format(dmDevice, mountPoint);
} else {
formatStatus = Fat::format(dmDevice, numImgSectors);
}
@ -395,9 +399,6 @@ int VolumeManager::createAsec(const char *id, unsigned int numSectors, const cha
return -1;
}
char mountPoint[255];
snprintf(mountPoint, sizeof(mountPoint), "%s/%s", Volume::ASECDIR, id);
if (mkdir(mountPoint, 0000)) {
if (errno != EEXIST) {
SLOGE("Mountpoint creation failed (%s)", strerror(errno));

Loading…
Cancel
Save