kernel: remove obsolete non-upstream block2mtd patches
Since block2mtd is not used for firmware images anymore, these patches are no longer needed Signed-off-by: Felix Fietkau <nbd@nbd.name>
This commit is contained in:
		| @@ -1,116 +0,0 @@ | ||||
| From: Felix Fietkau <nbd@nbd.name> | ||||
| Subject: block2mtd | ||||
|  | ||||
| Signed-off-by: Felix Fietkau <nbd@nbd.name> | ||||
| --- | ||||
|  drivers/mtd/devices/block2mtd.c | 30 ++++++++++++++++++++---------- | ||||
|  1 file changed, 20 insertions(+), 10 deletions(-) | ||||
|  | ||||
| --- a/drivers/mtd/devices/block2mtd.c | ||||
| +++ b/drivers/mtd/devices/block2mtd.c | ||||
| @@ -26,6 +26,7 @@ | ||||
|  #include <linux/list.h> | ||||
|  #include <linux/init.h> | ||||
|  #include <linux/mtd/mtd.h> | ||||
| +#include <linux/mtd/partitions.h> | ||||
|  #include <linux/mutex.h> | ||||
|  #include <linux/mount.h> | ||||
|  #include <linux/slab.h> | ||||
| @@ -214,7 +215,7 @@ static void block2mtd_free_device(struct | ||||
|   | ||||
|   | ||||
|  static struct block2mtd_dev *add_device(char *devname, int erase_size, | ||||
| -		int timeout) | ||||
| +		const char *mtdname, int timeout) | ||||
|  { | ||||
|  #ifndef MODULE | ||||
|  	int i; | ||||
| @@ -222,6 +223,7 @@ static struct block2mtd_dev *add_device( | ||||
|  	const fmode_t mode = FMODE_READ | FMODE_WRITE | FMODE_EXCL; | ||||
|  	struct block_device *bdev; | ||||
|  	struct block2mtd_dev *dev; | ||||
| +	struct mtd_partition *part; | ||||
|  	char *name; | ||||
|   | ||||
|  	if (!devname) | ||||
| @@ -278,13 +280,16 @@ static struct block2mtd_dev *add_device( | ||||
|   | ||||
|  	/* Setup the MTD structure */ | ||||
|  	/* make the name contain the block device in */ | ||||
| -	name = kasprintf(GFP_KERNEL, "block2mtd: %s", devname); | ||||
| +	if (!mtdname) | ||||
| +		mtdname = devname; | ||||
| +	name = kmalloc(strlen(mtdname) + 1, GFP_KERNEL); | ||||
|  	if (!name) | ||||
|  		goto err_destroy_mutex; | ||||
|   | ||||
| +	strcpy(name, mtdname); | ||||
|  	dev->mtd.name = name; | ||||
|   | ||||
| -	dev->mtd.size = dev->blkdev->bd_inode->i_size & PAGE_MASK; | ||||
| +	dev->mtd.size = dev->blkdev->bd_inode->i_size & PAGE_MASK & ~(erase_size - 1); | ||||
|  	dev->mtd.erasesize = erase_size; | ||||
|  	dev->mtd.writesize = 1; | ||||
|  	dev->mtd.writebufsize = PAGE_SIZE; | ||||
| @@ -297,7 +302,11 @@ static struct block2mtd_dev *add_device( | ||||
|  	dev->mtd.priv = dev; | ||||
|  	dev->mtd.owner = THIS_MODULE; | ||||
|   | ||||
| -	if (mtd_device_register(&dev->mtd, NULL, 0)) { | ||||
| +	part = kzalloc(sizeof(struct mtd_partition), GFP_KERNEL); | ||||
| +	part->name = name; | ||||
| +	part->offset = 0; | ||||
| +	part->size = dev->mtd.size; | ||||
| +	if (mtd_device_register(&dev->mtd, part, 1)) { | ||||
|  		/* Device didn't get added, so free the entry */ | ||||
|  		goto err_destroy_mutex; | ||||
|  	} | ||||
| @@ -305,8 +314,7 @@ static struct block2mtd_dev *add_device( | ||||
|  	list_add(&dev->list, &blkmtd_device_list); | ||||
|  	pr_info("mtd%d: [%s] erase_size = %dKiB [%d]\n", | ||||
|  		dev->mtd.index, | ||||
| -		dev->mtd.name + strlen("block2mtd: "), | ||||
| -		dev->mtd.erasesize >> 10, dev->mtd.erasesize); | ||||
| +		mtdname, dev->mtd.erasesize >> 10, dev->mtd.erasesize); | ||||
|  	return dev; | ||||
|   | ||||
|  err_destroy_mutex: | ||||
| @@ -379,7 +387,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[2]; | ||||
| +	char *token[3]; | ||||
|  	char *name; | ||||
|  	size_t erase_size = PAGE_SIZE; | ||||
|  	unsigned long timeout = MTD_DEFAULT_TIMEOUT; | ||||
| @@ -393,7 +401,7 @@ static int block2mtd_setup2(const char * | ||||
|  	strcpy(str, val); | ||||
|  	kill_final_newline(str); | ||||
|   | ||||
| -	for (i = 0; i < 2; i++) | ||||
| +	for (i = 0; i < 3; i++) | ||||
|  		token[i] = strsep(&str, ","); | ||||
|   | ||||
|  	if (str) { | ||||
| @@ -419,8 +427,10 @@ static int block2mtd_setup2(const char * | ||||
|  			return 0; | ||||
|  		} | ||||
|  	} | ||||
| +	if (token[2] && (strlen(token[2]) + 1 > 80)) | ||||
| +		pr_err("mtd device name too long\n"); | ||||
|   | ||||
| -	add_device(name, erase_size, timeout); | ||||
| +	add_device(name, erase_size, token[2], timeout); | ||||
|   | ||||
|  	return 0; | ||||
|  } | ||||
| @@ -454,7 +464,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=<dev>[,<erasesize>]\""); | ||||
| +MODULE_PARM_DESC(block2mtd, "Device to use. \"block2mtd=<dev>[,<erasesize>[,<name>]]\""); | ||||
|   | ||||
|  static int __init block2mtd_init(void) | ||||
|  { | ||||
| @@ -1,47 +0,0 @@ | ||||
| From: Felix Fietkau <nbd@nbd.name> | ||||
| Subject: block2mtd | ||||
|  | ||||
| Signed-off-by: Felix Fietkau <nbd@nbd.name> | ||||
| --- | ||||
|  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 | ||||
| @@ -387,7 +387,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; | ||||
| @@ -401,7 +401,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) { | ||||
| @@ -430,6 +430,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; | ||||
| @@ -464,7 +467,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=<dev>[,<erasesize>[,<name>]]\""); | ||||
| +MODULE_PARM_DESC(block2mtd, "Device to use. \"block2mtd=<dev>[,<erasesize>[,<name>[,<timeout>]]]\""); | ||||
|   | ||||
|  static int __init block2mtd_init(void) | ||||
|  { | ||||
| @@ -1,116 +0,0 @@ | ||||
| From: Felix Fietkau <nbd@nbd.name> | ||||
| Subject: block2mtd | ||||
|  | ||||
| Signed-off-by: Felix Fietkau <nbd@nbd.name> | ||||
| --- | ||||
|  drivers/mtd/devices/block2mtd.c | 30 ++++++++++++++++++++---------- | ||||
|  1 file changed, 20 insertions(+), 10 deletions(-) | ||||
|  | ||||
| --- a/drivers/mtd/devices/block2mtd.c | ||||
| +++ b/drivers/mtd/devices/block2mtd.c | ||||
| @@ -26,6 +26,7 @@ | ||||
|  #include <linux/list.h> | ||||
|  #include <linux/init.h> | ||||
|  #include <linux/mtd/mtd.h> | ||||
| +#include <linux/mtd/partitions.h> | ||||
|  #include <linux/mutex.h> | ||||
|  #include <linux/mount.h> | ||||
|  #include <linux/slab.h> | ||||
| @@ -214,7 +215,7 @@ static void block2mtd_free_device(struct | ||||
|   | ||||
|   | ||||
|  static struct block2mtd_dev *add_device(char *devname, int erase_size, | ||||
| -		int timeout) | ||||
| +		const char *mtdname, int timeout) | ||||
|  { | ||||
|  #ifndef MODULE | ||||
|  	int i; | ||||
| @@ -222,6 +223,7 @@ static struct block2mtd_dev *add_device( | ||||
|  	const fmode_t mode = FMODE_READ | FMODE_WRITE | FMODE_EXCL; | ||||
|  	struct block_device *bdev; | ||||
|  	struct block2mtd_dev *dev; | ||||
| +	struct mtd_partition *part; | ||||
|  	char *name; | ||||
|   | ||||
|  	if (!devname) | ||||
| @@ -278,13 +280,16 @@ static struct block2mtd_dev *add_device( | ||||
|   | ||||
|  	/* Setup the MTD structure */ | ||||
|  	/* make the name contain the block device in */ | ||||
| -	name = kasprintf(GFP_KERNEL, "block2mtd: %s", devname); | ||||
| +	if (!mtdname) | ||||
| +		mtdname = devname; | ||||
| +	name = kmalloc(strlen(mtdname) + 1, GFP_KERNEL); | ||||
|  	if (!name) | ||||
|  		goto err_destroy_mutex; | ||||
|   | ||||
| +	strcpy(name, mtdname); | ||||
|  	dev->mtd.name = name; | ||||
|   | ||||
| -	dev->mtd.size = dev->blkdev->bd_inode->i_size & PAGE_MASK; | ||||
| +	dev->mtd.size = dev->blkdev->bd_inode->i_size & PAGE_MASK & ~(erase_size - 1); | ||||
|  	dev->mtd.erasesize = erase_size; | ||||
|  	dev->mtd.writesize = 1; | ||||
|  	dev->mtd.writebufsize = PAGE_SIZE; | ||||
| @@ -297,7 +302,11 @@ static struct block2mtd_dev *add_device( | ||||
|  	dev->mtd.priv = dev; | ||||
|  	dev->mtd.owner = THIS_MODULE; | ||||
|   | ||||
| -	if (mtd_device_register(&dev->mtd, NULL, 0)) { | ||||
| +	part = kzalloc(sizeof(struct mtd_partition), GFP_KERNEL); | ||||
| +	part->name = name; | ||||
| +	part->offset = 0; | ||||
| +	part->size = dev->mtd.size; | ||||
| +	if (mtd_device_register(&dev->mtd, part, 1)) { | ||||
|  		/* Device didn't get added, so free the entry */ | ||||
|  		goto err_destroy_mutex; | ||||
|  	} | ||||
| @@ -305,8 +314,7 @@ static struct block2mtd_dev *add_device( | ||||
|  	list_add(&dev->list, &blkmtd_device_list); | ||||
|  	pr_info("mtd%d: [%s] erase_size = %dKiB [%d]\n", | ||||
|  		dev->mtd.index, | ||||
| -		dev->mtd.name + strlen("block2mtd: "), | ||||
| -		dev->mtd.erasesize >> 10, dev->mtd.erasesize); | ||||
| +		mtdname, dev->mtd.erasesize >> 10, dev->mtd.erasesize); | ||||
|  	return dev; | ||||
|   | ||||
|  err_destroy_mutex: | ||||
| @@ -381,7 +389,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[2]; | ||||
| +	char *token[3]; | ||||
|  	char *name; | ||||
|  	size_t erase_size = PAGE_SIZE; | ||||
|  	unsigned long timeout = MTD_DEFAULT_TIMEOUT; | ||||
| @@ -395,7 +403,7 @@ static int block2mtd_setup2(const char * | ||||
|  	strcpy(str, val); | ||||
|  	kill_final_newline(str); | ||||
|   | ||||
| -	for (i = 0; i < 2; i++) | ||||
| +	for (i = 0; i < 3; i++) | ||||
|  		token[i] = strsep(&str, ","); | ||||
|   | ||||
|  	if (str) { | ||||
| @@ -421,8 +429,10 @@ static int block2mtd_setup2(const char * | ||||
|  			return 0; | ||||
|  		} | ||||
|  	} | ||||
| +	if (token[2] && (strlen(token[2]) + 1 > 80)) | ||||
| +		pr_err("mtd device name too long\n"); | ||||
|   | ||||
| -	add_device(name, erase_size, timeout); | ||||
| +	add_device(name, erase_size, token[2], timeout); | ||||
|   | ||||
|  	return 0; | ||||
|  } | ||||
| @@ -456,7 +466,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=<dev>[,<erasesize>]\""); | ||||
| +MODULE_PARM_DESC(block2mtd, "Device to use. \"block2mtd=<dev>[,<erasesize>[,<name>]]\""); | ||||
|   | ||||
|  static int __init block2mtd_init(void) | ||||
|  { | ||||
| @@ -1,47 +0,0 @@ | ||||
| From: Felix Fietkau <nbd@nbd.name> | ||||
| Subject: block2mtd | ||||
|  | ||||
| Signed-off-by: Felix Fietkau <nbd@nbd.name> | ||||
| --- | ||||
|  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 | ||||
| @@ -389,7 +389,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; | ||||
| @@ -403,7 +403,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) { | ||||
| @@ -432,6 +432,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; | ||||
| @@ -466,7 +469,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=<dev>[,<erasesize>[,<name>]]\""); | ||||
| +MODULE_PARM_DESC(block2mtd, "Device to use. \"block2mtd=<dev>[,<erasesize>[,<name>[,<timeout>]]]\""); | ||||
|   | ||||
|  static int __init block2mtd_init(void) | ||||
|  { | ||||
		Reference in New Issue
	
	Block a user
	 Felix Fietkau
					Felix Fietkau