[ANNOUNCE] Prelink for uClibc available
Carmelo AMOROSO
carmelo.amoroso at st.com
Mon Oct 11 11:16:37 UTC 2010
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On 9/21/2010 10:28 AM, Carmelo AMOROSO wrote:
> On 9/20/2010 10:52 AM, Carmelo AMOROSO wrote:
> > On 9/16/2010 11:21 AM, Carmelo AMOROSO wrote:
> > > Folks,
> > > we are proud to announce the availability of prelink support for uClibc.
> > > This work required a big effort from STMicroelectronics uClibc team,
> > > especially my colleague Filippo Arcidiacono, and we really would like to
> > > upstream.
>
> > > We have just rebased all of the work with respect to the mainstream,
> > > executed the prelink test suite without problem on SH4 arch.
>
> > > Before including this work into master, I'd like to do a global review
> > > with all of you.
>
> > > We will send the set of patches soon, anyway I'd prefer to create a new
> > > *prelink* branch also that everybody can use to play wi.th, and on top
> > > of which we can add fixes/enhancements and rework if needed.
>
> > > Once the prelink review/test is completed, we can easily merge it back
> > > to master.
>
> > > All the work has been re-organised in a small set of patches per
> > > functionality, that I'll describe below.
>
> > > These capabilities are controlled by the two config option, under
> > > "General Library Settings" section.
>
> > > LDSO_STANDALONE_SUPPORT
> > > LDSO_PRELINK_SUPPORT (selects LDSO_STANDALONE_SUPPORT)
>
> > > ---
> > > 1. stand-alone mode execution
>
> > > The prelink tool has to be run on the target system to retrieve
> > > information from the application and the shared libraries; to do this it
> > > needs to be able to invoke the dynamic linker as a stand-alone application.
> > > Currently only --library-path option is supported (mandatory for prelinking)
> > > Todo: --list, --verify, --inhibit-rpath
>
> > > 2. full featured tracing capabilities
>
> > > A new tracing option LD_WARN and LD_TRACE_PRELINKING has been added to
> > > provide some extra trace information used by the prelink tool.
>
> > > 3. global and local symbol scope handling
>
> > > To support the extended tracing capabilities for prelinking, it was
> > > necessary to redesign the lookup process to support searching in the
> > > local scope.
> > > Global symbol scope is now implemented as a linked list of local scope,
> > > that dynamically grows and shrinks when dlopen/dlclose are called. Each
> > > local scope is implemented as an array of pointer to struct elf_resolve.
>
> > > 4. prelinked libraries runtime support
>
> > > The dynamic linker must check if it is loading a set of prelinked
> > > libraries, and must handle any conflicts in symbol resolution that have
> > > been detected by the prelink tool using the extended tracing capabilities.
>
>
> > Folks,
> > prelink branch is up. I encourage everybody to give it a try and review.
>
> > I've sent the patches anyway that can be applied onto master.
>
> > Carmelo
>
>
> I forgot to mention that currently it only builds fine for SH4. Fixes
> for all other archs (elfinterp.c) are coming soon.
> No other arch specific changes are required, so I'd expect it should
> work fine on all supported archs.
>
> Regards,
> Carmelo
>
Folks,
prelink branch has been updated to report all the prelink related
changes into the specific elfinterp.c file.
Any feedback and bugs report are welcome.
As a side note, we are going to do some tidy-up into the ld.so, the
_dl_find_hash function interface is becoming too confusing, to many
parameters used with NULL... likely a better redefinition could be an
option.
Cheers,
Carmelo
>
> > _______________________________________________
> > uClibc mailing list
> > uClibc at uclibc.org
> > http://lists.busybox.net/mailman/listinfo/uclibc
>
> _______________________________________________
> uClibc mailing list
> uClibc at uclibc.org
> http://lists.busybox.net/mailman/listinfo/uclibc
>
_______________________________________________
uClibc mailing list
uClibc at uclibc.org
http://lists.busybox.net/mailman/listinfo/uclibc
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (MingW32)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
iEYEARECAAYFAkyy8hUACgkQoRq/3BrK1s+h/QCfZCNKG0GmsTaYU2bb5Um1dILF
WpQAnRWDLDdY1nR+FooomY2VYxBvm8Qp
=OYSl
-----END PGP SIGNATURE-----
More information about the uClibc
mailing list