linux-sg2042/drivers/mtd/ubi
Logan Gunthorpe 493cfaeaa0 mtd: utilize new cdev_device_add helper function
This is not as straightforward a conversion as the others
in this series. These drivers did not originally make use of
kobj.parent so they likely suffered from a use after free bug if
someone unregistered the devices while they are being used.

In order to make the conversions, switch from device_register
to device_initialize / cdev_device_add.

In build.c, this patch unwinds a complicated mess of extra
get_device/put_devices and reference tracking by moving device_initialize
early in the attach process. Then it always uses put_device and instead of
using device_unregister and extra get_devices everywhere we just use
cdev_device_del and one put_device once everything is completely done.
This simplifies things dramatically and makes it easier to reason about.

In vmt.c, the patch pushes device initialization up to the beginning of the
device creation and then that function only needs to use put_device
in the error path which simplifies things a good deal.

Signed-off-by: Logan Gunthorpe <logang@deltatee.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-03-21 06:44:33 +01:00
..
Kconfig UBI: block: Add CONFIG_BLOCK dependency 2014-03-04 14:49:53 +02:00
Makefile UBI: R/O block driver on top of UBI volumes 2014-02-28 16:29:48 +02:00
attach.c UBI: introduce the VID buffer concept 2016-10-02 22:48:14 +02:00
block.c block: fold cmd_type into the REQ_OP_ space 2017-01-31 14:00:44 -07:00
build.c mtd: utilize new cdev_device_add helper function 2017-03-21 06:44:33 +01:00
cdev.c UBI: add an helper to check lnum validity 2016-10-02 22:48:14 +02:00
debug.c UBI: Silence an unintialized variable warning 2016-05-24 15:24:30 +02:00
debug.h UBI: power cut emulation for testing 2015-04-13 21:05:17 +02:00
eba.c UBI: Fix crash in try_recover_peb() 2016-10-20 00:06:06 +02:00
fastmap-wl.c ubi: Fix races around ubi_refill_pools() 2016-10-02 22:54:01 +02:00
fastmap.c ubi: fastmap: Fix add_vol() return value test in ubi_attach_fastmap() 2016-10-28 14:48:18 +02:00
gluebi.c ubi: gluebi: Fix double refcounting 2016-07-29 23:31:54 +02:00
io.c UBI: introduce the VID buffer concept 2016-10-02 22:48:14 +02:00
kapi.c statx: Add a system call to make enhanced file info available 2017-03-02 20:51:15 -05:00
misc.c mtd: ubi: Add logging functions ubi_msg, ubi_warn and ubi_err 2016-03-20 21:36:05 +01:00
ubi-media.h UBI: Fix typo in comment 2015-10-03 20:09:41 +02:00
ubi.h UBI: introduce the VID buffer concept 2016-10-02 22:48:14 +02:00
upd.c ubi: Fix out of bounds write in volume update code 2016-03-05 21:56:23 +01:00
vmt.c mtd: utilize new cdev_device_add helper function 2017-03-21 06:44:33 +01:00
vtbl.c UBI: introduce the VID buffer concept 2016-10-02 22:48:14 +02:00
wl.c ubi: Fix races around ubi_refill_pools() 2016-10-02 22:54:01 +02:00
wl.h UBI: Fastmap: Remove is_fm_block() 2015-03-26 22:47:38 +01:00