From: Felix Fietkau Subject: block2mtd Signed-off-by: Felix Fietkau --- drivers/mtd/devices/block2mtd.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) --- a/drivers/mtd/devices/block2mtd.c +++ b/drivers/mtd/devices/block2mtd.c @@ -392,7 +392,7 @@ static int block2mtd_setup2(const char * /* 80 for device, 12 for erase size, 80 for name, 8 for timeout */ char buf[80 + 12 + 80 + 8]; char *str = buf; - char *token[3]; + char *token[4]; char *name; size_t erase_size = PAGE_SIZE; unsigned long timeout = MTD_DEFAULT_TIMEOUT; @@ -406,7 +406,7 @@ static int block2mtd_setup2(const char * strcpy(str, val); kill_final_newline(str); - for (i = 0; i < 3; i++) + for (i = 0; i < 4; i++) token[i] = strsep(&str, ","); if (str) { @@ -435,6 +435,9 @@ static int block2mtd_setup2(const char * if (token[2] && (strlen(token[2]) + 1 > 80)) pr_err("mtd device name too long\n"); + if (token[3] && kstrtoul(token[3], 0, &timeout)) + pr_err("invalid timeout\n"); + add_device(name, erase_size, token[2], timeout); return 0; @@ -469,7 +472,7 @@ static int block2mtd_setup(const char *v module_param_call(block2mtd, block2mtd_setup, NULL, NULL, 0200); -MODULE_PARM_DESC(block2mtd, "Device to use. \"block2mtd=[,[,]]\""); +MODULE_PARM_DESC(block2mtd, "Device to use. \"block2mtd=[,[,[,]]]\""); static int __init block2mtd_init(void) { ion> upstream openwrtJames
aboutsummaryrefslogtreecommitdiffstats
blob: 8d48673c6de0fa54122cf4215ce2884f7d8b52d4 (plain)
1
2
3
4
5
6
7
8
9
10
11