[parisc-linux] /bin/sh: undefined symbol: execve

Carlos O'Donell carlos at systemhalted.org
Sun Aug 6 15:09:20 MDT 2006


On 8/6/06, John David Anglin <dave at hiauly1.hia.nrc.ca> wrote:
> I see these errors of gsyprf11 (SMP 64-bit kernel).  I don't see
> the fails on hiauly6 (UP 32-bit kernel).  I believe that these
> lookup errors are from the dynamic loader.  execve is undefined in
> /bin/sh but it should be resolved by libc.
>
> The fails aren't consistent from run to run, so there appears to
> be a race condition somewhere in the lookup process.
>
> Thoughts?

It is unlikely the generic code has a race condition. However, because
we return a "struct fdesc" from the lookup routines, we have to be
very careful. This small structure is copied by value, and the copy is
*not* atomic. There is code to ensure that the last thing we write
into the fdesc is the IP. Please look at the "struct fdesc" code in
libc-ports/sysdeps/hppa/dl-machine.h. It's all upstream.

Cheers,
Carlos.



More information about the parisc-linux mailing list