Bug#602553: kfreebsd-image-8.1-1-686: mount -u -o rw /dev/ad0s1 / fails silently after boot, works after -o ro
Package: kfreebsd-image-8.1-1-686
Version: 8.1-5
Severity: normal
Steps to reproduce:
1) install debian to /dev/da0s1 (e.g. in qemu)
2) move the installation to a system where root is as /dev/ad0s1
(e.g. real usb stick)
3) pass -s option via grub to get to single user mode
4) enter ufs:/dev/ad0s1 when kernel "mountroot>" prompt appears
5) enter root password when asked
6) issue
mount -u -o rw /dev/ad0s1 /
to mount the root read-write.
7) touch /foo
Expected results
7) touch succeeds
Actual results:
7) touch fails with "Read-only file system"
More info:
1) Interestingly
mount -u -o ro /dev/ad0s1 /
mount -u -o rw /dev/ad0s1 /
touch /foo
works.
2) gdb shows that in ffs_mount the fs_ronly is zero in step 6. So ufs
thinks that the filesystem is already read-write and thus ignores the
update request? However, since touch fails VFS must be thinking that
the fs is read-only?
3) grub shows the following options:
insmod part_msdos
insmod ufs2
set root='(hd0,1)'
search --no-floppy --fs-uuid --set 4cc08aab6455cf88
echo 'Loading kernel of FreeBSD 8.1-1-686 ...'
kfreebsd /boot/kfreebsd-8.1-1-686.gz
set kFreeBSD.vfs.root.mountfrom=ufs:/dev/ad0s1
set kFreeBSD.vfs.root.mountfrom.options=rw
but removing the last option does not seem to improve the situation.
-- System Information:
Debian Release: squeeze/sid
APT prefers testing
APT policy: (500, 'testing')
Architecture: kfreebsd-i386 (i686)
Kernel: kFreeBSD 8.1-1-686
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Versions of packages kfreebsd-image-8.1-1-686 depends on:
ii freebsd-utils 8.1-2+b1 FreeBSD utilities needed for GNU/k
ii kldutils 8.1-2+b1 tools for managing kFreeBSD module
Versions of packages kfreebsd-image-8.1-1-686 recommends:
pn libc0.1-i686 <none> (no description available)
kfreebsd-image-8.1-1-686 suggests no packages.
-- no debconf information
Reply to: