As discussed on bug 642784, PID 1 (init) may hold open references to files which have been unlinked. These references may cause unmounting/remounting of filesystems to fail.
OpenRC should cause PID 1 to re-execute itself on shutdown to avoid this problem. This may generally be accomplished by calling "telinit u".
Created attachment 512870 [details]
Here's an init script that should get the job done. This should be added to the "boot" runlevel in pkg_postinst.
Created attachment 512872 [details]
init script v2
Alternate init script, should be added to the 'shutdown' runlevel.
Created attachment 553548 [details, diff]
call telinit u from inittab
Here's another alternative that calls telinit u from inittab for the relevant runlevels.
The bug has been closed via the following commit(s):
Author: Mike Gilbert <email@example.com>
AuthorDate: 2018-10-28 19:12:43 +0000
Commit: William Hubbs <firstname.lastname@example.org>
CommitDate: 2018-10-31 14:10:03 +0000
sys-apps/sysvinit: call telinit u when halting or rebooting
Package-Manager: Portage-2.3.51_p2, Repoman-2.3.11_p27
Signed-off-by: Mike Gilbert <email@example.com>
Signed-off-by: William Hubbs <firstname.lastname@example.org>
sys-apps/sysvinit/files/inittab-2.91 | 61 ++++++++++++++++
sys-apps/sysvinit/sysvinit-2.91-r1.ebuild | 117 ++++++++++++++++++++++++++++++
2 files changed, 178 insertions(+)