Date: Fri, 25 Dec 2015 08:45:50 +1100 (EST) From: Bruce Evans <brde@optusnet.com.au> To: Konstantin Belousov <kostikbel@gmail.com> Cc: Bruce Evans <brde@optusnet.com.au>, src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r292620 - head/sys/kern Message-ID: <20151225083416.K1523@besplex.bde.org> In-Reply-To: <20151224205730.GC3625@kib.kiev.ua> References: <201512222012.tBMKCqqg039018@repo.freebsd.org> <20151223073258.M993@besplex.bde.org> <20151224205730.GC3625@kib.kiev.ua>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, 24 Dec 2015, Konstantin Belousov wrote:
> On Wed, Dec 23, 2015 at 08:02:10AM +1100, Bruce Evans wrote:
>> On Tue, 22 Dec 2015, Konstantin Belousov wrote:
>>
>>> Log:
>>> If we annoy user with the terminal output due to failed load of
>>> interpreter, also show the actual error code instead of some
>>> interpretation.
>>
>> This and nearby messages are of annoyingly low quality. They don't
>> even print the program name(s).
>>
>> I use the following partial fixes. I forget if they print the program
>> name or the interpeter name.
>>
>> X Index: imgact_elf.c
>> X ===================================================================
>> X RCS file: /home/ncvs/src/sys/kern/imgact_elf.c,v
>> X retrieving revision 1.151
>> X diff -u -2 -r1.151 imgact_elf.c
>> X --- imgact_elf.c 5 Jun 2004 02:18:28 -0000 1.151
>> X +++ imgact_elf.c 5 Jun 2004 06:51:25 -0000
>> X @@ -694,6 +693,6 @@
>> X brand_info = __elfN(get_brandinfo)(hdr, interp);
>> X if (brand_info == NULL) {
>> X - uprintf("ELF binary type \"%u\" not known.\n",
>> X - hdr->e_ident[EI_OSABI]);
>> X + uprintf("%s: ELF binary type \"%u\" not known.\n",
>> X + imgp->stringbase, hdr->e_ident[EI_OSABI]);
> This cannot be a fix. there is no stringbase member in struct imgact.
There was in FreeBSD-5.
> In fact, there is no available path to the executable in the image activation
> routine, and due to things like fexecve(2), it may have been not passed
> to the kernel at all.
argv[0] and the string being interpreted must be known at some point.
> The present structure of the messages is forced by this fact, and it is
> usually obvious what is the image kernel complained about, since it is
> the image that was just executed.
Not if it is one of many commands in a script.
Bruce
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20151225083416.K1523>
