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
jhb at freebsd.org
Wed Apr 1 11:47:03 PDT 2009
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
> Merge from head to stable/7:
> 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
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.
More information about the svn-src-stable-7