Re: execve() returns ENOENT when ld-linux.so isn't found

From: Olaf van der Spek
Date: Wed Mar 24 2010 - 18:11:11 EST


On Wed, Mar 24, 2010 at 2:49 PM, <drepper@xxxxxxxxx> wrote:
> On Thu, Mar 18, 2010 at 07:42, Olaf van der Spek <olafvdspek@xxxxxxxxx>
> wrote:
>>
>> $ ls -l
>> -rwxr-xr-x 1 olaf olaf 560165 2010-03-18 15:21 xwis
>> $ ./xwis
>> -bash: ./xwis: No such file or directory
>
> Your shell should handle this. ÂI'm not sure whether it's in the upstream

Why?
And why can't the kernel returned the more appropriate ENOEXEC?

> bash (it should be) but I wrote a long, long time ago a patch which produces
> better messages. ÂOn my system I get:
>
> $ ./u
> bash: ./u: /some/path/does-not-exist: bad ELF interpreter: No such file or
> directory
>
>
> It doesn't really matter what the kernel returns. ÂThe shell should do its
> job and at least the RHEL/Fedora version does it for a long time now.

That should be pushed upstream then.

Olaf
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/