summaryrefslogtreecommitdiffstats
path: root/fs
diff options
context:
space:
mode:
authorMiklos Szeredi2014-11-20 16:08:59 +0100
committerAl Viro2014-12-17 14:27:14 +0100
commit10975933da3d65f8833d4ce98dcc2ecc63a695d6 (patch)
treed68accb6a448af5031c2e4fb524e2557cdfb50d2 /fs
parentunfuck binfmt_misc.c (broken by commit e6084d4) (diff)
downloadkernel-qcow2-linux-10975933da3d65f8833d4ce98dcc2ecc63a695d6.tar.gz
kernel-qcow2-linux-10975933da3d65f8833d4ce98dcc2ecc63a695d6.tar.xz
kernel-qcow2-linux-10975933da3d65f8833d4ce98dcc2ecc63a695d6.zip
init: fix read-write root mount
If mount flags don't have MS_RDONLY, iso9660 returns EACCES without actually checking if it's an iso image. This tricks mount_block_root() into retrying with MS_RDONLY. This results in a read-only root despite the "rw" boot parameter if the actual filesystem was checked after iso9660. I believe the behavior of iso9660 is okay, while that of mount_block_root() is not. It should rather try all types without MS_RDONLY and only then retry with MS_RDONLY. This change also makes the code more robust against the case when EACCES is returned despite MS_RDONLY, which would've resulted in a lockup. Signed-off-by: Miklos Szeredi <mszeredi@suse.cz> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs')
0 files changed, 0 insertions, 0 deletions