Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 27 Dec 2019 10:49:54 -0800
From:      John Baldwin <jhb@FreeBSD.org>
To:        Justin Hibbits <jhibbits@FreeBSD.org>, src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   Re: svn commit: r356113 - in head: libexec/rtld-elf sys/kern sys/sys
Message-ID:  <d9355208-dcef-2c2b-6e3c-e1f63b9eda0e@FreeBSD.org>
In-Reply-To: <08f3808c-0a93-ac7c-9e20-1798eeb8b0e1@FreeBSD.org>
References:  <201912270407.xBR473Zh054687@repo.freebsd.org> <08f3808c-0a93-ac7c-9e20-1798eeb8b0e1@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On 12/27/19 10:43 AM, John Baldwin wrote:
> On 12/26/19 8:07 PM, Justin Hibbits wrote:
>> Author: jhibbits
>> Date: Fri Dec 27 04:07:03 2019
>> New Revision: 356113
>> URL: https://svnweb.freebsd.org/changeset/base/356113
>>
>> Log:
>>   Eliminate the last MI difference in AT_* definitions (for powerpc).
>>   
>>   Summary:
>>   As a transition aide, implement an alternative elfN_freebsd_fixup which
>>   is called for old powerpc binaries.  Similarly, add a translation to rtld to
>>   convert old values to new ones (as expected by a new rtld).
>>   
>>   Translation of old<->new values  is incomplete, but sufficient to allow an
>>   installworld of a new userspace from an old one when a new kernel is running.
>>   
>>   Test Plan:
>>   Someone needs to see how a new kernel/rtld/libc works with an old
>>   binary.  If if works we can probalby ship this.  If not we probalby need
>>   some more compat bits.
>>   
>>   Submitted by:	brooks
>>   Reviewed by:	jhibbits
>>   Differential Revision:	https://reviews.freebsd.org/D20799
> 
> This would be much simpler as a 'sv_copyout_auxargs()' hook instead.  You could
> even set it directly in the ELFv1 sysvec instead of needing a runtime check.
> You could also move it purely into the powerpc code at that point and not need
> to stick it in the MI file.

Oops, should I have finished reading my commit mail, thanks for fixing this.

> It probably should also be under COMPAT_FREEBSD12.

This should probably still be done if it isn't already, but the entire sysvec
that for ELFv1 probably belongs under the #idef, not just the auxargs bit.

-- 
John Baldwin



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?d9355208-dcef-2c2b-6e3c-e1f63b9eda0e>