Summary: | sys-apps/openrc-0.10.5 fails to remounts reiserfs root file system read only on reboot: failed because we are using / | ||
---|---|---|---|
Product: | Gentoo Hosted Projects | Reporter: | Thorsten Kampe <thorsten> |
Component: | OpenRC | Assignee: | OpenRC Team <openrc> |
Status: | UNCONFIRMED --- | ||
Severity: | normal | CC: | hu |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- |
Description
Thorsten Kampe
2012-08-07 12:27:14 UTC
prelink -amfR: bug exist else: no bug fs reiserfs OR lvm OR soft raid... (In reply to comment #0) just add telinit u after sync; sync in the /etc/init.d/mount-ro enjoy I'm sorry for the late reply; neither prelink nor adding "telinit u" in the init script made a difference. As far as I can see you suspect that some process is still having a handle open on the / mount. Wouldn't it make sense to do some kind of logging or debugging to see which one? I've added now a simple "ps -ef f > /ps.log" to /lib/rc/sh/rc-mount.sh (right before the "failed because we are using" line). This is what I get: UID PID PPID C STIME TTY STAT TIME CMD root 2 0 0 12:17 ? S 0:00 [kthreadd] root 3 2 0 12:17 ? S 0:00 \_ [ksoftirqd/0] root 4 2 0 12:17 ? S 0:00 \_ [kworker/0:0] root 5 2 0 12:17 ? S< 0:00 \_ [kworker/0:0H] root 6 2 0 12:17 ? S 0:00 \_ [kworker/u:0] root 7 2 0 12:17 ? S< 0:00 \_ [kworker/u:0H] root 8 2 0 12:17 ? S< 0:00 \_ [khelper] root 9 2 0 12:17 ? S 0:00 \_ [kdevtmpfs] root 209 2 0 12:17 ? S 0:00 \_ [bdi-default] root 211 2 0 12:17 ? S< 0:00 \_ [kblockd] root 296 2 0 12:17 ? S 0:00 \_ [khubd] root 402 2 0 12:17 ? S< 0:00 \_ [rpciod] root 403 2 0 12:17 ? S 0:00 \_ [kworker/0:1] root 415 2 0 12:17 ? S 0:00 \_ [kswapd0] root 416 2 0 12:17 ? SN 0:00 \_ [khugepaged] root 417 2 0 12:17 ? S 0:00 \_ [fsnotify_mark] root 424 2 0 12:17 ? S< 0:00 \_ [nfsiod] root 425 2 0 12:17 ? S< 0:00 \_ [cifsiod] root 428 2 0 12:17 ? S< 0:00 \_ [crypto] root 974 2 0 12:17 ? S 0:00 \_ [kworker/u:2] root 983 2 0 12:17 ? S< 0:00 \_ [ttm_swap] root 1054 2 0 12:17 ? S< 0:02 \_ [kworker/0:1H] root 1084 2 0 12:17 ? S 0:00 \_ [kworker/0:2] root 1091 2 0 12:17 ? S< 0:00 \_ [kpsmoused] root 1151 2 0 12:17 ? S< 0:00 \_ [deferwq] root 1166 2 0 12:17 ? S< 0:00 \_ [reiserfs] root 1383 2 0 12:17 ? S< 0:00 \_ [mpt_poll_0] root 1384 2 0 12:17 ? S< 0:00 \_ [mpt/0] root 1387 2 0 12:17 ? S 0:00 \_ [scsi_eh_0] root 2141 2 0 12:17 ? S 0:00 \_ [flush-3:0] root 3409 2 0 12:18 ? S 0:00 \_ [kworker/0:3] root 1 0 0 12:17 ? Ss 0:01 init [6] root 5342 1 0 12:21 ? Ss 0:00 /sbin/rc reboot root 6239 5342 0 12:22 ? S 0:00 \_ /sbin/runscript /etc/init.d/mount-ro --lockfd 48 start root 6240 6239 0 12:22 ? S 0:00 \_ /bin/sh /lib/rc/sh/runscript.sh /etc/init.d/mount-ro start root 6261 6240 0 12:22 ? R 0:00 \_ ps -ef f (In reply to comment #4) > I've added now a simple "ps -ef f > /ps.log" to /lib/rc/sh/rc-mount.sh > (right before the "failed because we are using" line). This is what I get: Which version of linux-utils are you running? Add this command in place of your ps command; I think it will give better information about which processes are using the file system. fuser -v $f_opts "$mnt" > /fuser.log 2>&1 What does that output look like? (In reply to comment #5) > (In reply to comment #4) > Which version of linux-utils are you running? util-linux-2.22.1 > Add this command in place of your ps command; I think it will give better > information about which processes are using the file system. > > fuser -v $f_opts "$mnt" > /fuser.log 2>&1 > > What does that output look like? USER PID ACCESS COMMAND /: root kernel mount / root 1 .rce. init root 2 .rc.. kthreadd root 3 .rc.. ksoftirqd/0 root 5 .rc.. kworker/0:0H root 6 .rc.. kworker/u:0 root 7 .rc.. kworker/u:0H root 8 .rc.. khelper root 9 .rc.. kdevtmpfs root 10 .rc.. kworker/u:1 root 209 .rc.. bdi-default root 211 .rc.. kblockd root 296 .rc.. khubd root 402 .rc.. rpciod root 403 .rc.. kworker/0:1 root 415 .rc.. kswapd0 root 416 .rc.. khugepaged root 417 .rc.. fsnotify_mark root 424 .rc.. nfsiod root 425 .rc.. cifsiod root 428 .rc.. crypto root 983 .rc.. ttm_swap root 1054 .rc.. kworker/0:1H root 1090 .rc.. kpsmoused root 1092 .rc.. kworker/0:2 root 1151 .rc.. deferwq root 1166 .rc.. reiserfs root 1384 .rc.. mpt_poll_0 root 1385 .rc.. mpt/0 root 1387 .rc.. scsi_eh_0 root 2154 .rc.. flush-3:0 root 7370 .rc.. kworker/0:0 root 7466 .rc.. kworker/0:3 root 8649 .rce. rc root 9573 .rce. mount-ro root 9574 frce. runscript.sh I have the same problem with openrc-0.9.8.4 when using PXE boot in combination with NFS share for the squashfs image. My fuser output looks about the same: livecd ~ # cat /fuser.log USER PID ACCESS COMMAND /: root kernel mount / root 1 .rc.. init root 2 .rc.. kthreadd root 3 .rc.. ksoftirqd/0 root 5 .rc.. kworker/u:0 root 6 .rc.. migration/0 root 7 .rc.. cpuset root 8 .rc.. khelper root 9 .rc.. kdevtmpfs root 10 .rc.. netns root 11 .rc.. kworker/u:1 root 117 .rc.. sync_supers root 119 .rc.. bdi-default root 121 .rc.. kblockd root 283 .rc.. md root 406 .rc.. kswapd0 root 407 .rc.. fsnotify_mark root 408 .rc.. xfs_mru_cache root 409 .rc.. xfslogd root 410 .rc.. xfsdatad root 411 .rc.. xfsconvertd root 412 .rc.. ocfs2_wq root 413 .rc.. user_dlm root 415 .rc.. glock_workqueue root 416 .rc.. delete_workqueu root 417 .rc.. gfs_recovery root 418 .rc.. crypto root 569 .rc.. iscsi_eh root 571 .rc.. bnx2i_thread/0 root 576 .rc.. cnic_wq root 577 .rc.. bnx2x root 591 .rc.. kpsmoused root 602 .rc.. kworker/0:2 root 1792 .rc.. ata_sff root 4885 .rc.. scsi_eh_0 root 4888 .rc.. scsi_eh_1 root 7203 .rc.. mpt_poll_0 root 7204 .rc.. mpt/0 root 7205 .rc.. scsi_eh_2 root 7965 .rc.. cciss_scan root 9540 .rc.. khubd root 15004 .rc.. jfsIO root 15005 .rc.. jfsCommit root 15006 .rc.. jfsSync root 15209 .rc.. rpciod root 15216 .rc.. nfsiod root 16210 .rce. busybox root 16219 .rc.. loop0 root 22345 .rc.. udevd root 22713 .rc.. udevd root 22714 .rc.. udevd root 23143 Frc.. dhcpcd root 23233 .rc.. bash root 23234 .rc.. bash root 23235 .rc.. bash root 23236 .rc.. bash root 23237 .rc.. bash root 23238 .rc.. bash root 23271 .rc.. kworker/0:1 root 23281 .rc.. sshd root 23283 .rc.. bash root 24909 .rc.. mount-ro root 25087 .rc.. runscript.sh |