diff options
Diffstat (limited to 'block/partition-generic.c')
-rw-r--r-- | block/partition-generic.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/block/partition-generic.c b/block/partition-generic.c index 81430b317379..dd936ac1e62b 100644 --- a/block/partition-generic.c +++ b/block/partition-generic.c @@ -466,7 +466,9 @@ static int drop_partitions(struct gendisk *disk, struct block_device *bdev) struct hd_struct *part; int res; - if (bdev->bd_part_count || bdev->bd_super) + if (!disk_part_scan_enabled(disk)) + return 0; + if (bdev->bd_part_count || bdev->bd_openers > 1) return -EBUSY; res = invalidate_partition(disk, 0); if (res) |