OSDN Git Service

Clean up DSBT support
authorMark Salter <msalter@redhat.com>
Tue, 22 May 2012 14:53:29 +0000 (10:53 -0400)
committerBernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Wed, 6 Jun 2012 07:06:10 +0000 (09:06 +0200)
commit8554fb21bb34329201b38c2ae4387fb6f00645cc
tree462975e36aee3b3ff726e3300ead039e4da1fb3c
parent80c9bfc4668e2370b3434a801dc266f336265832
Clean up DSBT support

The existing DSBT support relies on the kernel to provide DSBT info
as part of the load maps passed to user space. The problem with this
approach is that the DSBT info is in the dynamic section, so the
kernel must access a userspace mapping of the dynamic section (or
separately read a copy for the kernel) in order to retrieve the
information needed by userspace.

This patch reworks the DSBT support to remove the reliance on DSBT
info coming from the kernel. Instead, ldso reads the info itself from
the dynamic section. One other benefit of this is that it allows the
existing kernel FDPIC loader to also load DSBT binaries.

Signed-off-by: Mark Salter <msalter@redhat.com>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
ldso/include/dl-elf.h
ldso/include/dl-hash.h
ldso/include/ldso.h
ldso/ldso/dl-elf.c
ldso/ldso/dl-hash.c
ldso/ldso/ldso.c