*/
void add_disk(struct gendisk *disk)
{
+ get_device(disk->driverfs_dev);
disk->flags |= GENHD_FL_UP;
blk_register_region(MKDEV(disk->major, disk->first_minor),
disk->minors, NULL, exact_match, exact_lock, disk);
static void disk_release(struct kobject * kobj)
{
struct gendisk *disk = to_disk(kobj);
+ put_device(disk->driverfs_dev);
kfree(disk->random);
kfree(disk->part);
free_disk_stats(disk);