difficult unmount-on-shutdown problem

Daniel Drake dsd at laptop.org
Fri Nov 6 10:46:31 EST 2009

In #9629 I found a bug that also affects our deployed XO-1 OSes. We are
always shutting down without unmounting the root filesystem.

This seems hard to fix.

On our disk/nand, our core filesystem is *not* stored at /
Instead, it is stored at /versions/run/<hash>/

For example, /bin/mkdir is actually at /versions/run/<hash>/bin/mkdir

We hide this from you: In our early boot procedure we do this from the

mount disk at /sysroot
mount --move /sysroot /

and everything looks normal once you've booted up.

But during shutdown, i.e. if I modify /etc/init.d/halt to open a shell
just before it calls /sbin/halt at the very end, I can't figure out any
way to remount / read-only (or unmount it)

I've tried all kinds of umount and mount flags and I just get -EINVAL
I would expect umount to fail (this is the active filesystem), but
remount read-only to work. However the mount(2) man page says that for
remounting, you must provide the exact same mountpoint and device, and
we lost that mountpoint (/sysroot) a long time ago...

Any ideas?


More information about the Devel mailing list