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]

gdb/1706: multithreaded application debug fails on GNU/Linux + gcc + c/c++


>Number:         1706
>Category:       gdb
>Synopsis:       multithreaded application debug fails on GNU/Linux + gcc + c/c++
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Wed Jul 07 12:28:00 UTC 2004
>Closed-Date:
>Last-Modified:
>Originator:     jari.lappalainen@iki.fi
>Release:        GNU gdb 6.1.1
>Organization:
>Environment:
Linux 2.6.3-4mdk i686 GNU/Linux
gcc 3.4.1 (Thread model: posix)
gdb configured as "i686-pc-linux-gnu"
Using host libthread_db library "/lib/tls/libthread_db.so.1".
>Description:
The attached program runs fine on its own. Under gdb it
runs for a while, then gdb reports 

  Couldn't get registers: No such process.

When gdb is quit at this points gdb reports

  Quitting: thread_db get_info: cannot get thread info: generic error

>How-To-Repeat:
Compile the attached thread.c with

  gcc -Wall -g -lpthread thread.cpp

and start in gdb without any command line arguments.

  gdb ./a.out

After a couple of seconds (program sleeps for a while)
the error message appears.
>Fix:

>Release-Note:
>Audit-Trail:
>Unformatted:
----gnatsweb-attachment----
Content-Type: application/octet-stream; name="thread.c"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="thread.c"

I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDx1bmlzdGQuaD4KI2luY2x1ZGUgPHB0aHJlYWQu
aD4KCmludCByZWxlYXNlZCA9IDA7CnB0aHJlYWRfbXV0ZXhfdCBtdXRleCA9IFBUSFJFQURfTVVU
RVhfSU5JVElBTElaRVI7CnB0aHJlYWRfY29uZF90IGNvbmRpdGlvbiA9IFBUSFJFQURfQ09ORF9J
TklUSUFMSVpFUjsKCnZvaWQqIGVtcHR5KHZvaWQqIGFyZykKewogIHByaW50ZigiRW1wdHlcbiIp
OwogIHJldHVybiAwOwp9Cgp2b2lkIGVtcHR5X3RocmVhZCgpCnsKICBwdGhyZWFkX3QgdGhyZWFk
OwogIHB0aHJlYWRfY3JlYXRlKCZ0aHJlYWQsIDAsIGVtcHR5LCAwKTsKICBwdGhyZWFkX2pvaW4o
dGhyZWFkLCAwKTsKfQoKdm9pZCogd2FpdGluZ190aHJlYWQodm9pZCogYXJnKQp7CiAgaW50IGlk
ID0gKigoaW50KikgYXJnKTsKICBwcmludGYoIlN0YXJ0IHdhaXRpbmcgJWRcbiIsIGlkKTsKICBw
dGhyZWFkX211dGV4X2xvY2soJm11dGV4KTsKICB3aGlsZSAocmVsZWFzZWQgPT0gMCkgewogICAg
cHRocmVhZF9jb25kX3dhaXQoJmNvbmRpdGlvbiwgJm11dGV4KTsKICB9CiAgcHRocmVhZF9tdXRl
eF91bmxvY2soJm11dGV4KTsKICBlbXB0eV90aHJlYWQoKTsKICBwcmludGYoIkZpbmlzaGVkIHdh
aXRpbmcgJWRcbiIsIGlkKTsKICByZXR1cm4gMDsKfQoKdm9pZCogcyh2b2lkKiBhcmcpCnsKICBp
bnQgaTsKICBwcmludGYoIlN0YXJ0aW5nIHNcbiIpOwogIGZvciAoaT0wOyBpPDM7IGkrKykgewog
ICAgcHRocmVhZF90IHRocmVhZDsKICAgIHB0aHJlYWRfY3JlYXRlKCZ0aHJlYWQsIDAsIHdhaXRp
bmdfdGhyZWFkLCAodm9pZCopICZpKTsKICAgIHB0aHJlYWRfZGV0YWNoKHRocmVhZCk7CiAgfQog
IHByaW50ZigiRmluaXNoZWQgc1xuIik7CiAgcmV0dXJuIDA7Cn0KCmludCBtYWluKCkKewogIHB0
aHJlYWRfdCB0aHJlYWQxOwogIHB0aHJlYWRfY3JlYXRlKCZ0aHJlYWQxLCAwLCBzLCAwKTsKICBl
bXB0eV90aHJlYWQoKTsKICBzbGVlcCg0KTsKICBwdGhyZWFkX211dGV4X2xvY2soJm11dGV4KTsK
ICByZWxlYXNlZCA9IDE7CiAgcHRocmVhZF9jb25kX2Jyb2FkY2FzdCgmY29uZGl0aW9uKTsKICBw
dGhyZWFkX211dGV4X3VubG9jaygmbXV0ZXgpOwogIHNsZWVwKDEpOwogIHJldHVybiAwOwp9Cg==


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