git: rtld: Perform reloc before filtree dependency object init

John Marino marino at crater.dragonflybsd.org
Mon Aug 20 13:24:48 PDT 2012


commit 26dd35c9bbbbeffac40d091e7df63b02e7e2f078
Author: John Marino <draco at marino.st>
Date:   Mon Aug 20 21:27:06 2012 +0200

    rtld: Perform reloc before filtree dependency object init
    
    Ensure that for the object which is a dependency of some filtree,
    relocations are performed before the object's initializer is called.
    While dlopen()ing an object, relocate the whole DAG rooted in the
    object instead of only relocating the object itself and list of newly
    loaded dependencies.
    
    Reversed sequence currently can occur if the same object is a
    dependency for both filtree and filter since filtrees are loaded typically
    during the relocation processing when some filter dependencies might be
    already loaded but not yet relocated.
    
    Taken-from: FreeBSD SVN 237659 (27 June 2012)

Summary of changes:
 libexec/rtld-elf/rtld.c |   82 +++++++++++++++++++++++++++++++++++-----------
 1 files changed, 62 insertions(+), 20 deletions(-)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/26dd35c9bbbbeffac40d091e7df63b02e7e2f078


-- 
DragonFly BSD source repository





More information about the Commits mailing list