Draft: Make unmounting of /proc and /sys more resilient
.. against concurrent ephemeral accesses (f.e. by git status calls from inside ranger file manager)
I was thinking about limiting the number of unmount attempts, but from my logs, the maximum time it needed was twenty seconds.. Here's an example:
[2020-09-10 16:28:49] lb chroot_proc remove
P: Begin unmounting /proc...
umount: /mnt/stickbuildarea/fsfw-dresden-usb-stick/chroot/proc: target is busy.
USER PID ACCESS COMMAND
/mnt/stickbuildarea/fsfw-dresden-usb-stick/chroot/proc:
root kernel mount /proc
rtkit 4872 .rc.. rtkit-daemon
empee584 1076570 f.... element-desktop
root 1758598 f.... git
root 1758850 f.... git
empee584 2039370 f.... chromium
umount: /mnt/stickbuildarea/fsfw-dresden-usb-stick/chroot/proc: target is busy.
USER PID ACCESS COMMAND
/mnt/stickbuildarea/fsfw-dresden-usb-stick/chroot/proc:
root kernel mount /proc
rtkit 4872 .rc.. rtkit-daemon
empee584 1076570 f.... element-desktop
root 1759170 f.... git
empee584 2039370 f.... chromium
umount: /mnt/stickbuildarea/fsfw-dresden-usb-stick/chroot/proc: target is busy.
USER PID ACCESS COMMAND
/mnt/stickbuildarea/fsfw-dresden-usb-stick/chroot/proc:
root kernel mount /proc
rtkit 4872 .rc.. rtkit-daemon
empee584 1076570 f.... element-desktop
root 1759303 f.... git
root 1759362 f.... git
empee584 2039370 f.... chromium
umount: /mnt/stickbuildarea/fsfw-dresden-usb-stick/chroot/proc: target is busy.
USER PID ACCESS COMMAND
/mnt/stickbuildarea/fsfw-dresden-usb-stick/chroot/proc:
root kernel mount /proc
rtkit 4872 .rc.. rtkit-daemon
empee584 1076570 f.... element-desktop
empee584 2039370 f.... chromium
umount: /mnt/stickbuildarea/fsfw-dresden-usb-stick/chroot/proc (proc-live) unmounted
[2020-09-10 16:29:17] lb chroot_devpts remove
Hell knows why these other (apart from git) accesses occur, but they do, and they used to break the build for me. The issue occured on about 80% of the builds I have logged since putting this in three months ago.. suggestions welcome of course ; )
Edited by Marcel Partap