diff options
-rw-r--r-- | drivers/mtd/ubi/block.c | 39 | ||||
-rw-r--r-- | drivers/mtd/ubi/cdev.c | 4 | ||||
-rw-r--r-- | drivers/mtd/ubi/ubi.h | 14 |
3 files changed, 32 insertions, 25 deletions
diff --git a/drivers/mtd/ubi/block.c b/drivers/mtd/ubi/block.c index cea7d1cf9d0..6402e41e40b 100644 --- a/drivers/mtd/ubi/block.c +++ b/drivers/mtd/ubi/block.c @@ -29,10 +29,10 @@ * * LEB number = addressed byte / LEB size * - * This feature is compiled in the UBI core, and adds a new 'block' parameter - * to allow early block device attaching. Runtime block attach/detach for UBI - * volumes is provided through two new UBI ioctls: UBI_IOCVOLATTBLK and - * UBI_IOCVOLDETBLK. + * This feature is compiled in the UBI core, and adds a 'block' parameter + * to allow early creation of block devices on top of UBI volumes. Runtime + * block creation/removal for UBI volumes is provided through two UBI ioctls: + * UBI_IOCVOLATTBLK and UBI_IOCVOLDETBLK. */ #include <linux/module.h> @@ -374,7 +374,7 @@ static const struct block_device_operations ubiblock_ops = { .getgeo = ubiblock_getgeo, }; -int ubiblock_add(struct ubi_volume_info *vi) +int ubiblock_create(struct ubi_volume_info *vi) { struct ubiblock *dev; struct gendisk *gd; @@ -464,7 +464,7 @@ static void ubiblock_cleanup(struct ubiblock *dev) put_disk(dev->gd); } -int ubiblock_del(struct ubi_volume_info *vi) +int ubiblock_remove(struct ubi_volume_info *vi) { struct ubiblock *dev; @@ -503,7 +503,8 @@ static void ubiblock_resize(struct ubi_volume_info *vi) /* * Need to lock the device list until we stop using the device, - * otherwise the device struct might get released in 'ubiblock_del()'. + * otherwise the device struct might get released in + * 'ubiblock_remove()'. */ mutex_lock(&devices_mutex); dev = find_dev_nolock(vi->ubi_num, vi->vol_id); @@ -528,12 +529,12 @@ static int ubiblock_notify(struct notifier_block *nb, switch (notification_type) { case UBI_VOLUME_ADDED: /* - * We want to enforce explicit block device attaching for + * We want to enforce explicit block device creation for * volumes, so when a volume is added we do nothing. */ break; case UBI_VOLUME_REMOVED: - ubiblock_del(&nt->vi); + ubiblock_remove(&nt->vi); break; case UBI_VOLUME_RESIZED: ubiblock_resize(&nt->vi); @@ -561,7 +562,7 @@ open_volume_desc(const char *name, int ubi_num, int vol_id) return ubi_open_volume(ubi_num, vol_id, UBI_READONLY); } -static int __init ubiblock_attach_from_param(void) +static int __init ubiblock_create_from_param(void) { int i, ret; struct ubiblock_param *p; @@ -582,7 +583,7 @@ static int __init ubiblock_attach_from_param(void) ubi_get_volume_info(desc, &vi); ubi_close_volume(desc); - ret = ubiblock_add(&vi); + ret = ubiblock_create(&vi); if (ret) { ubi_err("block: can't add '%s' volume, err=%d\n", vi.name, ret); @@ -592,7 +593,7 @@ static int __init ubiblock_attach_from_param(void) return ret; } -static void ubiblock_detach_all(void) +static void ubiblock_remove_all(void) { struct ubiblock *next; struct ubiblock *dev; @@ -618,13 +619,13 @@ int __init ubiblock_init(void) return ubiblock_major; /* Attach block devices from 'block=' module param */ - ret = ubiblock_attach_from_param(); + ret = ubiblock_create_from_param(); if (ret) - goto err_detach; + goto err_remove; /* - * Block devices needs to be attached to volumes explicitly - * upon user request. So we ignore existing volumes. + * Block devices are only created upon user requests, so we ignore + * existing volumes. */ ret = ubi_register_volume_notifier(&ubiblock_notifier, 1); if (ret) @@ -633,14 +634,14 @@ int __init ubiblock_init(void) err_unreg: unregister_blkdev(ubiblock_major, "ubiblock"); -err_detach: - ubiblock_detach_all(); +err_remove: + ubiblock_remove_all(); return ret; } void __exit ubiblock_exit(void) { ubi_unregister_volume_notifier(&ubiblock_notifier); - ubiblock_detach_all(); + ubiblock_remove_all(); unregister_blkdev(ubiblock_major, "ubiblock"); } diff --git a/drivers/mtd/ubi/cdev.c b/drivers/mtd/ubi/cdev.c index 39d377489c2..11c84734964 100644 --- a/drivers/mtd/ubi/cdev.c +++ b/drivers/mtd/ubi/cdev.c @@ -567,7 +567,7 @@ static long vol_cdev_ioctl(struct file *file, unsigned int cmd, struct ubi_volume_info vi; ubi_get_volume_info(desc, &vi); - err = ubiblock_add(&vi); + err = ubiblock_create(&vi); break; } @@ -577,7 +577,7 @@ static long vol_cdev_ioctl(struct file *file, unsigned int cmd, struct ubi_volume_info vi; ubi_get_volume_info(desc, &vi); - err = ubiblock_del(&vi); + err = ubiblock_remove(&vi); break; } diff --git a/drivers/mtd/ubi/ubi.h b/drivers/mtd/ubi/ubi.h index e76ff98440a..2e588a9809c 100644 --- a/drivers/mtd/ubi/ubi.h +++ b/drivers/mtd/ubi/ubi.h @@ -868,13 +868,19 @@ int ubi_scan_fastmap(struct ubi_device *ubi, struct ubi_attach_info *ai, #ifdef CONFIG_MTD_UBI_BLOCK int ubiblock_init(void); void ubiblock_exit(void); -int ubiblock_add(struct ubi_volume_info *vi); -int ubiblock_del(struct ubi_volume_info *vi); +int ubiblock_create(struct ubi_volume_info *vi); +int ubiblock_remove(struct ubi_volume_info *vi); #else static inline int ubiblock_init(void) { return 0; } static inline void ubiblock_exit(void) {} -static inline int ubiblock_add(struct ubi_volume_info *vi) { return -ENOTTY; } -static inline int ubiblock_del(struct ubi_volume_info *vi) { return -ENOTTY; } +static inline int ubiblock_create(struct ubi_volume_info *vi) +{ + return -ENOTTY; +} +static inline int ubiblock_remove(struct ubi_volume_info *vi) +{ + return -ENOTTY; +} #endif |