Gsoc, Emulating missing linux syscalls

2024-03-31 Thread 张正
Hi! Sorry for such a late contact, I’ve already written a proper 
proposal for apply compat_linux project by following the instruction and 
guidelines from the link given by the NetBSD Gsoc idea list page.I try to 
answer as much questions as I can in the guidelines page and by follow the 
questions,i also try and compile the NetBSD kernel and read through the code 
base that relevant with compat_linux.And I think it’s very weird to apply Gsoc 
project and submit the proposal without having any contact with the 
developer/maintainer of the project.So anyways, sorry for dragging this till 
now.
As a junior developer I’ve been working on several open source project 
on GitHub with the git/github pr workflow before,but as I read through the 
NetBSD contribute guidelines page, it seems the traditional mail list and 
problem database /problem report is the way to collaborate in NetBSD,so is it a 
“must do” here to use the cvs/svn version control software and the mail list 
for contribute here?
In the compat_linux project page, saying that 
"you should find at least one Linux binary that does not yet run on 
NetBSD using compat_linux to use as a test case (your   mentor may have 
suggestions)”
Is there any suggestion on which linux binary isn’t yet supported by 
compat_linux as a test case?


Inquiry about the "Auto Create Swap on Memory Pressure" Project in GSoC

2024-03-31 Thread hanabi
Dear Mentors,

I am interested in the "Auto Create Swap on Memory Pressure" project
(https://wiki.netbsd.org/projects/project/swap-auto/) in GSoC. I would
greatly appreciate it if you could inform me whether there is an
existing suitable candidate for this project at the moment.

If no one has been chosen yet, could you provide me with the
requirements necessary for participating in this project? I am eager
to learn more about this exciting opportunity.

Best Regards,
Tengfei Yu



Re: MCLADDREFERENCE() incrementing the wrong ext_refcnt?

2024-03-31 Thread Edgar Fuß
> So I think
> atomic_inc_uint(&(o)->m_ext.ext_refcnt);\
> should really be
> atomic_inc_uint(&(o)->m_ext_ref->m_ext.ext_refcnt); \
> which, of course, is the same thing if MEXT_ISEMBEDDED(o) is true.

> Am I getting something wrong?
Self-answer: Yes.
m_ext is m_ext_ref->m_ext_storage, so the additional indirection is 
already performed.


[GSoC] Questions about emulating missing linux system calls project

2024-03-31 Thread Jamgadepatil Shivraj Shashikant
Hello,
For the past few days, I have been trying to assess support for Linux
system calls on a NetBSD system. I am using Linux Test Project
for identifying system calls that are yet to be emulated on NetBSD.
I have setup QEMU with GENERIC kernel for testing purpose
(Thanks iMil for helping me out!) with COMPAT_LINUX option
enabled.

I have following particular questions:


  1.
I wish to emulate support for pidfd_* family of system calls,
open_tree, openat2, clone3. I believe they still lack
emulation support. Where should I look to identify the
possible mappings for these system calls in NetBSD
kernel?

  2.
I found around 40 system calls that currently lack
emulation support. Most of them are the system calls

that aren't popular or are more relevant to Linux kernel. Only
some of the newer system calls seem more likely to be able
to be mapped directly to NetBSD system calls. Is it expected
to actually implement some of them in NetBSD kernel and
then add them to compat layer as part of this project?

Also, what's the state of splice and sendfile system calls? I
can see that they have been implemented as part of
GSoC 2022 but the test cases relating to them still can't
find these system calls.


  1.
With respect to system calls relating to scheduler, I get error
relating to not finding some particular files in proc directory.
I have set up proc as mentioned in documentation but I still
get these errors when I run schedular related system calls.
Does proc need to be configured in different way or do schedular
related system calls actually lack emulation support?


I would also like to thank Theodore for helping me understand the work he did 
last year.

Thanking you,
Shivraj