tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: re-enabling debugging of 32 bit processes with 64 bit debugger





On Sat, Jun 29, 2019 at 2:04 PM Christos Zoulas <christos%astron.com@localhost> wrote:
In article <CAJeAr6vOWxv4ZxspYNMDeuP0U=ZcCFACPsBMOZ-4xguf54njTg%mail.gmail.com@localhost>,
Andrew Cagney  <andrew.cagney%gmail.com@localhost> wrote:
>
>Having 32-bit and 64-bit debuggers isn't sufficient.  Specifically, it
>can't handle an exec() call where the new executable has a different
>ISA; and this imnsho is a must have.

It is really hard to make a 32 bit debugger work on a 64 bit system
because of the tricks we play with the location of the shared
libraries in rtld and the debugger needs to be aware of them.
In retrospect it would have been simpler (and uglier) to have
/32 and /64 in all the shared library paths so that they would
not occupy the filesystem space, but even then things could break
for raw dlopen() calls, or opening other data files that are not
size neutral. HP/UX with Context Dependent Files and IBM/AIX with
Hidden Directories were attempts to a solution, but they created
a new dimension of problems.

I came to a similar conclusion when I hacked FreeBSD rtld to grok the difference between hard and soft float on the same system at the same time.

Warner 


Home | Main Index | Thread Index | Old Index