2003-07-13 05:03:31

by Lou Langholtz

[permalink] [raw]
Subject: [PATCH] BLKBSZSET ioctl: fixes possibly silent blocksize change failure

diff -urN linux-2.5.75/drivers/block/ioctl.c linux-2.5.75-patched/drivers/block/ioctl.c
--- linux-2.5.75/drivers/block/ioctl.c 2003-07-10 14:04:46.000000000 -0600
+++ linux-2.5.75-patched/drivers/block/ioctl.c 2003-07-12 16:35:27.421331789 -0600
@@ -166,13 +166,11 @@
return -EINVAL;
if (get_user(n, (int *) arg))
return -EFAULT;
- if (n > PAGE_SIZE || n < 512 || (n & (n - 1)))
- return -EINVAL;
if (bd_claim(bdev, &holder) < 0)
return -EBUSY;
- set_blocksize(bdev, n);
+ ret = set_blocksize(bdev, n);
bd_release(bdev);
- return 0;
+ return ret;
case BLKPG:
return blkpg_ioctl(bdev, (struct blkpg_ioctl_arg *) arg);
case BLKRRPART:


Attachments:
blocksize.diff (668.00 B)