tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: [GSoC] Emulating missing Linux syscalls project questions



On Sun, 19 Mar 2023 at 04:22, Theodore Preduta <theo%pta.gg@localhost> wrote:
>
> > The Linux Test Project (http://linux-test-project.github.io) would help
> > not only with finding missing syscalls, but also with finding bugs /
> > missing functionality in the existing Linux emul code.
>
> Yes this is a great idea!  Although my interpretation of the project
> idea is that the expectations are that the binary is functional by the
> end of the summer.  I obviously will not be able to implement all
> missing syscalls by the end of the summer, so I would have to draw an
> arbitrary line as to what I would/would not try to implement.
>
> Which brings me to my next comment.
>
> > It would be nice to have this running on NetBSD.
>
> In what way exactly does the LTP not function on NetBSD?  I tried it
> today and (after a few hours of troubleshooting) seemingly got it to work.
>
> Some assorted notes about what I did/what it took to get it to work:
>
> - I only looked at system call tests (so for all I know the other types
> of tests could be what you're referring to).
>
> - The actual testcases themselves can be trivially (just add -static)
> statically compiled on any Linux distro and can be run individually just
> fine, but the rest of the testing infrastructure cannot (because glibc).
> (Most of my time spent on this was dealing with glibc versions)
>
> - Otherwise you can compile everything normally on OpenSUSE 15.4, and
> with suse15_base installed the binaries will *almost* just work.
>
> - The ltp-pan binary does depend on /dev/kmsg (which doesn't currently
> exist in the emul code), but only writes to it, so touch
> /emul/linux/dev/kmsg is sufficient to trick it into working.
>
> - As expected, lots of tests fail, but also lots of tests pass!  I
> haven't looked to hard into the failing tests (yet), but I didn't find
> anything too surprising in the list of failing tests.
>
> Overall, I did enjoy going down this rabbit hole!  It definitely taught
> me a few new things about how the emul subsystem behaves.

I think making progress on running LTP on NetBSD (*), and fixing up a
useful subset of missing or incomplete syscall implementations would
make an _excellent_ GSoC project :)

*: Even if its "Build all the test infrastructure on Linux, then run
it on NetBSD under Linux emulation", or "Build and run it on Linux,
with the individual tests run as a ssh to a NetBSD box" - as the more
interesting part is what the tests show

David


Home | Main Index | Thread Index | Old Index