Page MenuHomeFreeBSD

Add kern_unmount(), use in Linuxulator
ClosedPublic

Authored by trasz on Dec 3 2019, 5:10 PM.
Tags
None
Referenced Files
F157234335: D22646.diff
Tue, May 19, 1:39 PM
Unknown Object (File)
Wed, May 13, 4:09 PM
Unknown Object (File)
Mon, May 4, 4:24 PM
Unknown Object (File)
Thu, Apr 30, 9:24 AM
Unknown Object (File)
Mon, Apr 27, 11:41 AM
Unknown Object (File)
Apr 17 2026, 1:53 PM
Unknown Object (File)
Apr 10 2026, 1:53 AM
Unknown Object (File)
Apr 6 2026, 6:32 AM
Subscribers

Details

Summary

Add kern_unmount() and use in Linuxulator. No functional changes.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

sys/compat/linux/linux_file.c
1064 ↗(On Diff #65165)

I am sure that it is not correct. Can we remove this function instead ?

trasz added inline comments.
sys/compat/linux/linux_file.c
1064 ↗(On Diff #65165)

Not really, it's the Linux's main umount2(2) syscall. Should be fixed, though.

sys/compat/linux/linux_file.c
1081 ↗(On Diff #67043)

Don't you need to check other flags and at least log if anything is set ?

trasz marked an inline comment as done.

Detect unsupported flags.

trasz added inline comments.
sys/compat/linux/linux_file.c
1081 ↗(On Diff #67043)

Yeah, we can actually error out on unsupported ones.

sys/compat/linux/linux_file.c
1089 ↗(On Diff #67093)

What about linux prefix translation ? I see that the old syscall code did not do that, why ?

Why would it? It doesn't make much sense; you want it to unmount what you pass as an argument, and not it's linuxulator counterpart. Besides; this is mostly for use inside jails/chroots.

Why would it? It doesn't make much sense; you want it to unmount what you pass as an argument, and not it's linuxulator counterpart. Besides; this is mostly for use inside jails/chroots.

Because this is the consistent behavior. BTW, linux_mount also needs the same fix.

This revision is now accepted and ready to land.Jan 21 2020, 7:58 PM