Page MenuHomeFreeBSD

Add kern_unmount(), use in Linuxulator
ClosedPublic

Authored by trasz on Dec 3 2019, 5:10 PM.
Tags
None
Referenced Files
Unknown Object (File)
Sat, May 11, 11:34 PM
Unknown Object (File)
Sat, May 11, 11:34 PM
Unknown Object (File)
Fri, May 10, 3:12 PM
Unknown Object (File)
Mar 7 2024, 8:00 PM
Unknown Object (File)
Feb 19 2024, 9:20 AM
Unknown Object (File)
Feb 19 2024, 9:20 AM
Unknown Object (File)
Dec 31 2023, 12:04 AM
Unknown Object (File)
Dec 23 2023, 12:29 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