Discussion:
Vg4nbsd ongoing merge status
Kailash Sethuraman
2005-12-13 09:31:19 UTC
Permalink
Hi all,

Yesterday's commit got us out of the syswrap- mess. I have replaced
wrappers for syscalls taht are not available with sys_ni_syscall.
With the 16 bit syscall wrappers for linux being blown away, we had
undefined wrappers for some of our own syscalls like sys_setuid ( they
were pointing to sys_setuid16) . I have these being wrapped to
sys_ni_syscall. Which basically has an I_die_here stub in it. I have
done the same for all relevant syscalls, and commented out the actual
wrapper definition. eg
GENX_(__NR_setuid, sys_setuid) is changed to
GENX_(__NR_setuid, sys_ni_syscall)
and
PRE(sys_ni_syscall) {
I_die_here;
}
POST(.. same thing
Please see commit of syswrap-x86-netbsdelf2.c for more details. I feel
that writing PRE(sys_setuid) { I_die_here;} etc for all the missing
syscalls was a big pain, as I had to see where to put it in. PLAX_ =
syswrap-x86-netbsd GENX_ = generic NBSDX_ = syswrap-netbsdelf
By the way PLAXY means platform specific has post and pre,
PLAX_ = platform specific has only pre.

Any thoughts?

Kailash

Loading...