swapon: support "pri=NNN" in fstab
No binary (build failed)
—
(log yok)
| @@ -95,6 +95,20 @@ static int do_em_all(void) | |
| if (applet_name[5] != 'n' | |
| || hasmntopt(m, MNTOPT_NOAUTO) == NULL | |
| ) { | |
| + | #if ENABLE_FEATURE_SWAPON_PRI |
| + | char *p; |
| + | g_flags = 0; /* each swap space might have different flags */ |
| + | p = strstr(m->mnt_opts, "pri="); |
| + | if (p) { |
| + | /* Max allowed 32767 (==SWAP_FLAG_PRIO_MASK) */ |
| + | int swap_prio = MIN(bb_strtoull(p + 4 , NULL, 10), SWAP_FLAG_PRIO_MASK); |
| + | /* We want to allow "NNNN,foo", thus errno == EINVAL is allowed too */ |
| + | if (errno != ERANGE) { |
| + | g_flags = SWAP_FLAG_PREFER | |
| + | (swap_prio << SWAP_FLAG_PRIO_SHIFT); |
| + | } |
| + | } |
| + | #endif |
| err += swap_enable_disable(m->mnt_fsname); | |
| } | |
| } | |