Page MenuHomeFreeBSD

linux(4): Fix loadable modules after r367395
ClosedPublic

Authored by cem on Nov 6 2020, 5:35 PM.
Tags
None
Referenced Files
F81947392: D27124.diff
Tue, Apr 23, 2:55 PM
Unknown Object (File)
Fri, Mar 29, 2:08 AM
Unknown Object (File)
Feb 28 2024, 2:49 AM
Unknown Object (File)
Dec 20 2023, 7:40 AM
Unknown Object (File)
Nov 28 2023, 4:45 PM
Unknown Object (File)
Nov 10 2023, 10:44 PM
Unknown Object (File)
Nov 10 2023, 9:40 PM
Unknown Object (File)
Nov 8 2023, 10:50 PM
Subscribers

Details

Summary

Move dtrace SDT definitions into linux_common module code. Also, build
linux_dummy.c into the linux_common kld -- we don't need separate
versions of these stubs for 32- and 64-bit emulation.

PR: 250897
Reported by: several
X-MFC-With: r367395

Test Plan

Tinderbox i386/amd64/arm64 passes.

Loaded GENERIC in my test VM and loaded all three of linux.ko, linux_common.ko,
and linux64.ko without issue. Ran chrome.

Diff Detail

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

Event Timeline

cem requested review of this revision.Nov 6 2020, 5:35 PM
cem created this revision.

I don't quite understand the problem, nor the fix, but if it works - it works :-)

Move MI dummy stubs and SDT definition into linux_common.

This tinderboxes and both modules load without issue on amd64. I was able to run a 64-bit binary fine.

sys/compat/linux/linux_dummy.c
39 ↗(On Diff #79281)

This comment might be confusing without the context of the removed lines - I would rephrase it to say that we use the same stubs for 32- and 64-bit

sys/compat/linux/linux_dummy.c
39 ↗(On Diff #79281)

I've rewritten this comment somewhat better in what I'll commit, but it's still not especially satisfying. Oh well.

This revision was not accepted when it landed; it landed in state Needs Review.Nov 6 2020, 10:05 PM
This revision was automatically updated to reflect the committed changes.