David Laight <da...@l8s.co.uk> wrote: > > >Thanks for working this around, however it is not a right fix. With this > > >patch, build.sh release passes: > > > > > >http://www.netbsd.org/~rmind/crash_pcb.diff > > > > > >It should have been enough to amend the argument of routine exported to > > >userland. Do not you agree? > > > > <...> > > No - you shouldn't be making any names visible to normal user programs. > We pollute user namespace far too much as it is.
Can you please elaborate on this? Normal user application do not and should not include sys/lwp.h, only KVM grovellers (ps, libkvm) do that. There are few utilities which do that via sys/proc.h, but lwp.h already exports stuff like USER_TO_UAREA/UAREA_TO_USER. Addition of lwp_getpcb(), which is supposed to replace them, does not change the status quo. Do not you agree? Having said that, it might be useful to abstract them using on _LWP_PRIVATE definition or similar. However, it is unrelated to this change. Moreover, your "revert" changed the original definition of lwp_getpcb(). > The 'fix' I did was a pragmatic one to get the build working. > Programs like crash (and gdb) need to be able to define something > in order to get these extra structures (etc) visible. -- Mindaugas