svn commit: r356113 - in head: libexec/rtld-elf sys/kern sys/sys
John Baldwin
jhb at FreeBSD.org
Fri Dec 27 18:50:01 UTC 2019
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
More information about the svn-src-head
mailing list