mirror of https://gitee.com/openkylin/linux.git
swim: don't call blk_register_region
The swim driver (unlike various other floppy drivers) doesn't have magic device nodes for certain modes, and already registers a gendisk for each of the floppies supported by a device. Thus the region registered is a no-op and can be removed. Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Hannes Reinecke <hare@suse.de> Signed-off-by: Jens Axboe <axboe@kernel.dk>
This commit is contained in:
parent
d18e8b1bf9
commit
f9550f1b39
|
@ -745,18 +745,6 @@ static const struct block_device_operations floppy_fops = {
|
||||||
.check_events = floppy_check_events,
|
.check_events = floppy_check_events,
|
||||||
};
|
};
|
||||||
|
|
||||||
static struct kobject *floppy_find(dev_t dev, int *part, void *data)
|
|
||||||
{
|
|
||||||
struct swim_priv *swd = data;
|
|
||||||
int drive = (*part & 3);
|
|
||||||
|
|
||||||
if (drive >= swd->floppy_count)
|
|
||||||
return NULL;
|
|
||||||
|
|
||||||
*part = 0;
|
|
||||||
return get_disk_and_module(swd->unit[drive].disk);
|
|
||||||
}
|
|
||||||
|
|
||||||
static int swim_add_floppy(struct swim_priv *swd, enum drive_location location)
|
static int swim_add_floppy(struct swim_priv *swd, enum drive_location location)
|
||||||
{
|
{
|
||||||
struct floppy_state *fs = &swd->unit[swd->floppy_count];
|
struct floppy_state *fs = &swd->unit[swd->floppy_count];
|
||||||
|
@ -846,9 +834,6 @@ static int swim_floppy_init(struct swim_priv *swd)
|
||||||
add_disk(swd->unit[drive].disk);
|
add_disk(swd->unit[drive].disk);
|
||||||
}
|
}
|
||||||
|
|
||||||
blk_register_region(MKDEV(FLOPPY_MAJOR, 0), 256, THIS_MODULE,
|
|
||||||
floppy_find, NULL, swd);
|
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
exit_put_disks:
|
exit_put_disks:
|
||||||
|
@ -932,8 +917,6 @@ static int swim_remove(struct platform_device *dev)
|
||||||
int drive;
|
int drive;
|
||||||
struct resource *res;
|
struct resource *res;
|
||||||
|
|
||||||
blk_unregister_region(MKDEV(FLOPPY_MAJOR, 0), 256);
|
|
||||||
|
|
||||||
for (drive = 0; drive < swd->floppy_count; drive++) {
|
for (drive = 0; drive < swd->floppy_count; drive++) {
|
||||||
del_gendisk(swd->unit[drive].disk);
|
del_gendisk(swd->unit[drive].disk);
|
||||||
blk_cleanup_queue(swd->unit[drive].disk->queue);
|
blk_cleanup_queue(swd->unit[drive].disk->queue);
|
||||||
|
|
Loading…
Reference in New Issue