From: "Kari Nalli" <kari880@gmail.com>
To: gdb@sourceware.org
Subject: gdb and muti threads with recvfrom
Date: Thu, 14 Aug 2008 17:27:00 -0000 [thread overview]
Message-ID: <568faa340808140255g6f00a83fl4661d015137fbdfc@mail.gmail.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 2167 bytes --]
Hi
I wore little program that some times (not all times may be 1 in 3)
behaves different when run in gdb.
here is output when run from console
$ ./Threads
Thread=4 errno=11
Thread=3 errno=11
Thread=2 errno=11
Thread=1 errno=11
Thread=4 errno=11
Thread=3 errno=11
Thread=2 errno=11
Thread=1 errno=11
and from gdb
(gdb) run
Starting program: /home/nallkar/tmp/gdb_test/Threads
[Thread debugging using libthread_db enabled]
[New Thread 0xb7f836d0 (LWP 28416)]
[New Thread 0xb7f82b90 (LWP 28417)]
[New Thread 0xb7581b90 (LWP 28418)]
[New Thread 0xb6b80b90 (LWP 28419)]
[New Thread 0xb617fb90 (LWP 28420)]
Thread=1 errno=4
Thread=1 errno=11
Thread=2 errno=11
Thread=3 errno=11
Thread=4 errno=11
Thread=1 errno=11
Thread=2 errno=11
Thread=3 errno=11
Thread=4 errno=11
gdb information:
(gdb) show version
GNU gdb 6.8
Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-pc-linux-gnu".
And system information
$ ldd Threads
linux-gate.so.1 => (0x007f6000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00101000)
libpthread.so.0 => /lib/libpthread.so.0 (0x00b45000)
libc.so.6 => /lib/libc.so.6 (0x009d4000)
libm.so.6 => /lib/libm.so.6 (0x00b16000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00dc4000)
/lib/ld-linux.so.2 (0x009b2000)
OS is CentOs 5.x compiled with premtive kernel.
2.6.18-92.1.6.el5.preemptive_kernel_local #1 SMP PREEMPT Mon Aug 4
09:08:42 EEST 2008 i686 i686 i386 GNU/Linux
And the intressting function where the prints are comming is recvfrom
(no data is send to sockets so they should timeout)
According to IEEE Std 1003.1, 2004 Edition After timeout Recvfrom
should return with errno set to [EAGAIN] or [EWOULDBLOCK]. In my
system related errno defines are
#define EINTR 4 /* Interrupted system call */
#define EAGAIN 11 /* Try again */
can any one tell what causes the different behaviour?
Br, Kari
--Kari
[-- Attachment #2: test.tgz --]
[-- Type: application/x-gzip, Size: 1647 bytes --]
next reply other threads:[~2008-08-14 9:56 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-08-14 17:27 Kari Nalli [this message]
2008-08-14 19:49 ` Andreas Schwab
2008-08-15 8:06 ` Michael Snyder
2008-08-15 18:24 ` Kari Nalli
2008-08-16 8:47 ` Michael Snyder
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=568faa340808140255g6f00a83fl4661d015137fbdfc@mail.gmail.com \
--to=kari880@gmail.com \
--cc=gdb@sourceware.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox