Subject: Re: COMPAT_LINUX: why getpid() turned into a chown()?
To: Emmanuel Dreyfus <p99dreyf@criens.u-psud.fr>
From: David Brownlee <abs@netbsd.org>
List: tech-kern
Date: 01/30/2001 15:13:27
If netscape is linked dynamically you could relink glibc
with the offending call wrapper updated to print out debugging
then make the syscall. That would enable you to confirm exactly
what is being done at that point and maybe reproduce it more
easily outside of netscape.
Incidently - if you are looking for other software with which
to test the emulation, you might want to try Opera (binary only
web browser), available in static and dynamic linux ppc
http://www.opera.com/download/linux.html
David/absolute -- www.netbsd.org: No hype required --
On Tue, 30 Jan 2001, Emmanuel Dreyfus wrote:
> > > I've now been stuck for more than a week on the same bug: When running
> > > Netscape in emulation, a getpid() turns into a chown(), and it fails.
> > Are you sure that the Linux compat syscall mapping is correct?
>
> Yes. I made a test program that calls setgid(), built it on Linux, it
> does call setgid() on NetBSD.
>
> > Are you sure that it's running in Linux emulation?
>
> kdump tells me so.
> 192 netscape-communi EMUL "linux"
> 192 netscape-communi RET olduname -1 errno -2 No such file or
> directory
> 192 netscape-communi CALL getegid
> 192 netscape-communi RET getegid 500/0x1f4
>
> It's not related, but I'd like to fix this anoying "RET olduname", but I
> don't know where to look at.
>
>