Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 1 Apr 2009 14:46:51 -0400
From:      John Baldwin <jhb@freebsd.org>
To:        Dmitry Chagin <dchagin@freebsd.org>
Cc:        svn-src-stable@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, svn-src-stable-7@freebsd.org
Subject:   Re: svn commit: r190520 - in stable/7/sys: . amd64/amd64 amd64/linux32 arm/arm compat/ia32 compat/svr4 contrib/pf dev/ath/ath_hal dev/cxgb i386/i386 i386/linux ia64/ia64 kern powerpc/powerpc sparc64/sp...
Message-ID:  <200904011446.51822.jhb@freebsd.org>
In-Reply-To: <200903290807.n2T87b4D025770@svn.freebsd.org>
References:  <200903290807.n2T87b4D025770@svn.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sunday 29 March 2009 4:07:37 am Dmitry Chagin wrote:
> Author: dchagin
> Date: Sun Mar 29 08:07:36 2009
> New Revision: 190520
> URL: http://svn.freebsd.org/changeset/base/190520
> 
> Log:
>   Merge from head to stable/7:
>   
>   r189771:
>   Implement new way of branding ELF binaries by looking to a
>   ".note.ABI-tag" section.
>   
>   The search order of a brand is changed, now first of all the
>   ".note.ABI-tag" is looked through.
>   
>   Move code which fetch osreldate for ELF binary to check_note() handler.

I think this breaks the ABI of older ELF ABI kernel modules (e.g. older 
linux.ko binaries) since it changes the layout of the 'ElfN(Brandinfo)' 
structure.  I think you can fix this by making the following changes in 7.x 
only:

1) Move the new field (brand_note) to the end of the structure.
2) Add a new flag BI_BRAND_NOTE (or some such) that indicates that the
   brandnote pointer is valid.

Only use the brandnote field if the new flag is set and set it in all the new 
places that now have notes.  Old modules won't have the flag set, so the new 
field (which would really be garbage) would be ignored.

-- 
John Baldwin



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200904011446.51822.jhb>