Loading fs_mgr/fs_mgr.c +13 −0 Original line number Diff line number Diff line Loading @@ -56,6 +56,7 @@ #define FSCK_LOG_FILE "/dev/fscklogs/log" #define ZRAM_CONF_DEV "/sys/block/zram0/disksize" #define ZRAM_CONF_MCS "/sys/block/zram0/max_comp_streams" #define ARRAY_SIZE(a) (sizeof(a) / sizeof(*(a))) Loading Loading @@ -802,6 +803,18 @@ int fs_mgr_swapon_all(struct fstab *fstab) * we can assume the device number is 0. */ FILE *zram_fp; FILE *zram_mcs_fp; if (fstab->recs[i].max_comp_streams >= 0) { zram_mcs_fp = fopen(ZRAM_CONF_MCS, "r+"); if (zram_mcs_fp == NULL) { ERROR("Unable to open zram conf comp device %s\n", ZRAM_CONF_MCS); ret = -1; continue; } fprintf(zram_mcs_fp, "%d\n", fstab->recs[i].max_comp_streams); fclose(zram_mcs_fp); } zram_fp = fopen(ZRAM_CONF_DEV, "r+"); if (zram_fp == NULL) { Loading fs_mgr/fs_mgr_fstab.c +5 −0 Original line number Diff line number Diff line Loading @@ -31,6 +31,7 @@ struct fs_mgr_flag_values { char *label; int partnum; int swap_prio; int max_comp_streams; unsigned int zram_size; unsigned int file_encryption_mode; }; Loading Loading @@ -72,6 +73,7 @@ static struct flag_list fs_mgr_flags[] = { { "recoveryonly",MF_RECOVERYONLY }, { "swapprio=", MF_SWAPPRIO }, { "zramsize=", MF_ZRAMSIZE }, { "max_comp_streams=", MF_MAX_COMP_STREAMS }, { "verifyatboot", MF_VERIFYATBOOT }, { "verify", MF_VERIFY }, { "noemulatedsd", MF_NOEMULATEDSD }, Loading Loading @@ -206,6 +208,8 @@ static int parse_flags(char *flags, struct flag_list *fl, } } else if ((fl[i].flag == MF_SWAPPRIO) && flag_vals) { flag_vals->swap_prio = strtoll(strchr(p, '=') + 1, NULL, 0); } else if ((fl[i].flag == MF_MAX_COMP_STREAMS) && flag_vals) { flag_vals->max_comp_streams = strtoll(strchr(p, '=') + 1, NULL, 0); } else if ((fl[i].flag == MF_ZRAMSIZE) && flag_vals) { int is_percent = !!strrchr(p, '%'); unsigned int val = strtoll(strchr(p, '=') + 1, NULL, 0); Loading Loading @@ -355,6 +359,7 @@ struct fstab *fs_mgr_read_fstab_file(FILE *fstab_file) fstab->recs[cnt].label = flag_vals.label; fstab->recs[cnt].partnum = flag_vals.partnum; fstab->recs[cnt].swap_prio = flag_vals.swap_prio; fstab->recs[cnt].max_comp_streams = flag_vals.max_comp_streams; fstab->recs[cnt].zram_size = flag_vals.zram_size; fstab->recs[cnt].file_encryption_mode = flag_vals.file_encryption_mode; cnt++; Loading fs_mgr/fs_mgr_priv.h +1 −0 Original line number Diff line number Diff line Loading @@ -86,6 +86,7 @@ __BEGIN_DECLS #define MF_LATEMOUNT 0x20000 #define MF_NOFAIL 0x40000 #define MF_VERIFYATBOOT 0x80000 #define MF_MAX_COMP_STREAMS 0x100000 #define DM_BUF_SIZE 4096 Loading fs_mgr/include/fs_mgr.h +1 −0 Original line number Diff line number Diff line Loading @@ -73,6 +73,7 @@ struct fstab_rec { char *label; int partnum; int swap_prio; int max_comp_streams; unsigned int zram_size; unsigned int file_encryption_mode; }; Loading Loading
fs_mgr/fs_mgr.c +13 −0 Original line number Diff line number Diff line Loading @@ -56,6 +56,7 @@ #define FSCK_LOG_FILE "/dev/fscklogs/log" #define ZRAM_CONF_DEV "/sys/block/zram0/disksize" #define ZRAM_CONF_MCS "/sys/block/zram0/max_comp_streams" #define ARRAY_SIZE(a) (sizeof(a) / sizeof(*(a))) Loading Loading @@ -802,6 +803,18 @@ int fs_mgr_swapon_all(struct fstab *fstab) * we can assume the device number is 0. */ FILE *zram_fp; FILE *zram_mcs_fp; if (fstab->recs[i].max_comp_streams >= 0) { zram_mcs_fp = fopen(ZRAM_CONF_MCS, "r+"); if (zram_mcs_fp == NULL) { ERROR("Unable to open zram conf comp device %s\n", ZRAM_CONF_MCS); ret = -1; continue; } fprintf(zram_mcs_fp, "%d\n", fstab->recs[i].max_comp_streams); fclose(zram_mcs_fp); } zram_fp = fopen(ZRAM_CONF_DEV, "r+"); if (zram_fp == NULL) { Loading
fs_mgr/fs_mgr_fstab.c +5 −0 Original line number Diff line number Diff line Loading @@ -31,6 +31,7 @@ struct fs_mgr_flag_values { char *label; int partnum; int swap_prio; int max_comp_streams; unsigned int zram_size; unsigned int file_encryption_mode; }; Loading Loading @@ -72,6 +73,7 @@ static struct flag_list fs_mgr_flags[] = { { "recoveryonly",MF_RECOVERYONLY }, { "swapprio=", MF_SWAPPRIO }, { "zramsize=", MF_ZRAMSIZE }, { "max_comp_streams=", MF_MAX_COMP_STREAMS }, { "verifyatboot", MF_VERIFYATBOOT }, { "verify", MF_VERIFY }, { "noemulatedsd", MF_NOEMULATEDSD }, Loading Loading @@ -206,6 +208,8 @@ static int parse_flags(char *flags, struct flag_list *fl, } } else if ((fl[i].flag == MF_SWAPPRIO) && flag_vals) { flag_vals->swap_prio = strtoll(strchr(p, '=') + 1, NULL, 0); } else if ((fl[i].flag == MF_MAX_COMP_STREAMS) && flag_vals) { flag_vals->max_comp_streams = strtoll(strchr(p, '=') + 1, NULL, 0); } else if ((fl[i].flag == MF_ZRAMSIZE) && flag_vals) { int is_percent = !!strrchr(p, '%'); unsigned int val = strtoll(strchr(p, '=') + 1, NULL, 0); Loading Loading @@ -355,6 +359,7 @@ struct fstab *fs_mgr_read_fstab_file(FILE *fstab_file) fstab->recs[cnt].label = flag_vals.label; fstab->recs[cnt].partnum = flag_vals.partnum; fstab->recs[cnt].swap_prio = flag_vals.swap_prio; fstab->recs[cnt].max_comp_streams = flag_vals.max_comp_streams; fstab->recs[cnt].zram_size = flag_vals.zram_size; fstab->recs[cnt].file_encryption_mode = flag_vals.file_encryption_mode; cnt++; Loading
fs_mgr/fs_mgr_priv.h +1 −0 Original line number Diff line number Diff line Loading @@ -86,6 +86,7 @@ __BEGIN_DECLS #define MF_LATEMOUNT 0x20000 #define MF_NOFAIL 0x40000 #define MF_VERIFYATBOOT 0x80000 #define MF_MAX_COMP_STREAMS 0x100000 #define DM_BUF_SIZE 4096 Loading
fs_mgr/include/fs_mgr.h +1 −0 Original line number Diff line number Diff line Loading @@ -73,6 +73,7 @@ struct fstab_rec { char *label; int partnum; int swap_prio; int max_comp_streams; unsigned int zram_size; unsigned int file_encryption_mode; }; Loading