block: introduce partition 0
[safe/jmp/linux-2.6] / block / ioctl.c
index a5f672a..64e7c67 100644 (file)
@@ -30,7 +30,7 @@ static int blkpg_ioctl(struct block_device *bdev, struct blkpg_ioctl_arg __user
        if (bdev != bdev->bd_contains)
                return -EINVAL;
        partno = p.pno;
-       if (partno <= 0 || partno > disk_max_parts(disk))
+       if (partno <= 0 || partno >= disk_max_parts(disk))
                return -EINVAL;
        switch (a.op) {
                case BLKPG_ADD_PARTITION:
@@ -102,7 +102,7 @@ static int blkdev_reread_part(struct block_device *bdev)
        struct gendisk *disk = bdev->bd_disk;
        int res;
 
-       if (!disk_max_parts(disk) || bdev != bdev->bd_contains)
+       if (!disk_partitionable(disk) || bdev != bdev->bd_contains)
                return -EINVAL;
        if (!capable(CAP_SYS_ADMIN))
                return -EACCES;