Messages in this thread |  | | Date | Sun, 13 Feb 2011 03:02:35 +0100 | From | Milan Broz <> | Subject | block device read-only handling regression in 2.6.38-rc4 (bisected) |
| |
Hi Tejun,
Seems this commit cause regressions:
commit 75f1dc0d076d1c1168f2115f1941ea627d38bd5a Author: Tejun Heo <tj@kernel.org> Date: Sat Nov 13 11:55:17 2010 +0100
block: check bdev_read_only() from blkdev_get()
bdev read-only status can be queried using bdev_read_only() and may change while the device is being opened. Enforce it by checking it from blkdev_get() after open succeeds.
1) loop device once set read-only is not able to be used read-write afterward
touch /x1.img losetup -r /dev/loop0 /x1.img losetup -d /dev/loop0 losetup /dev/loop0 /x1.img /dev/loop0: Permission denied
2) it breaks read-only dm-snapshots (Fedora LiveCD operations is broken by this as well.)
(x.img is backing device, xs.img is prepared COW, you can simply run it once in read-write to create dm-snap header and then re-run this commands)
losetup -r /dev/loop0 /x.img losetup -r /dev/loop1 /xs.img dmsetup create x --readonly --table '0 131072 snapshot /dev/loop0 /dev/loop1 p 8' device-mapper: reload ioctl failed: Permission denied
Milan
|  |