This is the mail archive of the gdb-prs@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

tdep/1426: osabi initialization race condition


>Number:         1426
>Category:       tdep
>Synopsis:       osabi initialization race condition
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Thu Oct 23 17:58:00 UTC 2003
>Closed-Date:
>Last-Modified:
>Originator:     ac131313@redhat.com
>Release:        2003-10-23
>Organization:
>Environment:

>Description:
Due to the on going presence of global per-gdbarch variables GDB needs to create/install an initial "static" architecture _before_ any of the per-file initialization has been performed.

As a consequence, the osabi code finds itself trying to select GDB_OSABI_DEFAULT before support for that osabi has been installed.

For instance, on PPC/64 GNU/Linux, the build-time default OSABI is set to GDB_OSABI_LINUX, and support for it is registered during per-file initialization.  Unfortunatly, that default osabi is only registered _after_ GDB creates and installs the "static" architecture, and this leads to the warning:

A handler for the OS ABI "GNU/Linux" is not built into this configuration of GDB.  Attempting to continue with the default rs6000:6000 settingsGNU gdb 2003-10-23-cvs
Copyright 2003 Free Software Foundation, Inc.
...

Arrrgh!

Hmm, perhaps as a hack, the default could start out as GDB_OSABI_UNKNOWN and then only get updated after per-file initialization (which would be after that "static" architecture has been created/installed).

Ulgh!!!
>How-To-Repeat:

>Fix:

>Release-Note:
>Audit-Trail:
>Unformatted:


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]