From: Thomas Gleixner <tglx-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org>
To: Stephen Hemminger
<shemminger-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org>
Cc: Ulrich Drepper <drepper-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
Maximilian Engelhardt
<maxi-OwNUvPV92VfddJNmlsFzeA@public.gmane.org>,
Michael Buesch <mb-fseUSCV1ubazQB+pC5nmwQ@public.gmane.org>,
linux-kernel
<linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
linux-wireless
<linux-wireless-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
Arnaldo Carvalho de Melo
<acme-f8uhVLnGfZaxAyOMLChx1axOck334EZe@public.gmane.org>,
Jeff Garzik <jgarzik-e+AXbWqSrlAAvxtiuMwx3w@public.gmane.org>,
Gary Zambrano <zambrano-dY08KVG/lbpWk0Htik3J/w@public.gmane.org>,
netdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
Andrew Morton
<akpm-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org>,
Ingo Molnar <mingo-X9Un+BFzKDI@public.gmane.org>
Subject: Re: iperf: performance regression (was b44 driver problem?)
Date: Mon, 04 Jun 2007 19:32:48 +0200 [thread overview]
Message-ID: <1180978368.4404.29.camel@chaos> (raw)
In-Reply-To: <20070604095924.651d91c8@freepuppy>
On Mon, 2007-06-04 at 09:59 -0700, Stephen Hemminger wrote:
> > > gettimeofday({1180973726, 982754}, NULL) = 0
> > > recv(4, "\0\0\0\0\0\0\0\1\0\0\23\211\0\0\0\0\0\0\0\0\377\377\364"..., 8192, 0) = 8192
> > > gettimeofday({1180973726, 983790}, NULL) = 0
> >
> > Well, gettimeofday() is not affected by the highres code, but
> >
> > > nanosleep({0, 0}, NULL) = 0
> > > nanosleep({0, 0}, NULL) = 0
> >
> > is. The nanosleep call with a relative timeout of 0 returns immediately
> > with highres enabled, while it sleeps at least until the next tick
> > arrives when highres is off. Are there more of those stupid sleeps in
> > the code ?
>
> GLIBC pthread_mutex does it, YES it is a problem!
> Looks like the old behavior is required for ABI compatibility.
>
> iperf server has several threads. One thread is using pthread_mutex_lock
> to wait for the other thread. It looks like pthread_mutex_lock is using
> nanosleep as yield().
I doubt that. This is in the iperf code itself.
void thread_rest ( void ) {
#if defined( HAVE_THREAD )
#if defined( HAVE_POSIX_THREAD )
// TODO add checks for sched_yield or pthread_yield and call that
// if available
usleep( 0 );
----------^^^^
It results in a nanosleep({0,0}, NULL)
tglx
next prev parent reply other threads:[~2007-06-04 17:32 UTC|newest]
Thread overview: 49+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-05-26 0:24 b44: regression in 2.6.22 Stephen Hemminger
2007-05-26 3:51 ` Gary Zambrano
2007-05-26 17:01 ` Michael Buesch
[not found] ` <200705261901.18110.mb-fseUSCV1ubazQB+pC5nmwQ@public.gmane.org>
2007-05-27 19:25 ` b44: regression in 2.6.22 (resend) Maximilian Engelhardt
[not found] ` <200705272125.25506.maxi-OwNUvPV92VfddJNmlsFzeA@public.gmane.org>
2007-05-27 19:45 ` Michael Buesch
[not found] ` <200705272145.00796.mb-fseUSCV1ubazQB+pC5nmwQ@public.gmane.org>
2007-05-27 20:36 ` Maximilian Engelhardt
[not found] ` <200705272236.42628.maxi-OwNUvPV92VfddJNmlsFzeA@public.gmane.org>
2007-05-27 20:46 ` Michael Buesch
[not found] ` <200705272246.16960.mb-fseUSCV1ubazQB+pC5nmwQ@public.gmane.org>
2007-05-27 21:46 ` Maximilian Engelhardt
2007-05-27 21:13 ` Michael Buesch
2007-05-27 21:16 ` Michael Buesch
[not found] ` <200705272316.07338.mb-fseUSCV1ubazQB+pC5nmwQ@public.gmane.org>
2007-05-27 21:50 ` Maximilian Engelhardt
[not found] ` <200705272313.33129.mb-fseUSCV1ubazQB+pC5nmwQ@public.gmane.org>
2007-05-27 22:15 ` Maximilian Engelhardt
2007-05-28 0:24 ` Michael Buesch
[not found] ` <200705280224.40506.mb-fseUSCV1ubazQB+pC5nmwQ@public.gmane.org>
2007-05-28 0:40 ` Maximilian Engelhardt
[not found] ` <200705280240.17910.maxi-OwNUvPV92VfddJNmlsFzeA@public.gmane.org>
2007-05-28 10:16 ` Michael Buesch
[not found] ` <200705281216.51690.mb-fseUSCV1ubazQB+pC5nmwQ@public.gmane.org>
2007-05-28 14:09 ` Maximilian Engelhardt
[not found] ` <200705281609.49859.maxi-OwNUvPV92VfddJNmlsFzeA@public.gmane.org>
2007-05-28 15:14 ` Michael Buesch
[not found] ` <200705281714.25841.mb-fseUSCV1ubazQB+pC5nmwQ@public.gmane.org>
2007-05-28 15:32 ` Thomas Gleixner
2007-05-28 15:43 ` Michael Buesch
2007-05-28 17:44 ` Maximilian Engelhardt
2007-05-28 19:23 ` Thomas Gleixner
2007-05-28 20:55 ` Maximilian Engelhardt
2007-05-28 21:45 ` Thomas Gleixner
2007-05-29 18:28 ` Maximilian Engelhardt
[not found] ` <200705282255.56490.maxi-OwNUvPV92VfddJNmlsFzeA@public.gmane.org>
2007-05-29 13:58 ` Gary Zambrano
[not found] ` <1180447123.17146.4.camel-opBMJL+S1+nCw/J+WP9nZ0NK2P1VvzQgpWgKQ6/u3Fg@public.gmane.org>
2007-05-29 17:23 ` Maximilian Engelhardt
2007-06-03 16:26 ` Maximilian Engelhardt
[not found] ` <200706031826.06891.maxi-OwNUvPV92VfddJNmlsFzeA@public.gmane.org>
2007-06-04 6:39 ` Thomas Gleixner
2007-06-04 16:09 ` Stephen Hemminger
2007-06-04 16:35 ` Thomas Gleixner
2007-06-04 16:59 ` iperf: performance regression (was b44 driver problem?) Stephen Hemminger
2007-06-04 17:32 ` Thomas Gleixner [this message]
2007-06-04 17:51 ` Stephen Hemminger
2007-06-04 19:00 ` Thomas Gleixner
2007-06-04 19:26 ` Thomas Gleixner
2007-06-04 19:32 ` Ingo Molnar
2007-06-04 19:47 ` Maximilian Engelhardt
2007-06-04 20:02 ` Stephen Hemminger
2007-06-04 20:52 ` Maximilian Engelhardt
2007-05-28 10:49 ` b44: regression in 2.6.22 (resend) Michael Buesch
[not found] ` <200705281249.56106.mb-fseUSCV1ubazQB+pC5nmwQ@public.gmane.org>
2007-05-28 14:12 ` Maximilian Engelhardt
2007-05-28 14:55 ` Michael Buesch
2007-05-29 14:14 ` Gary Zambrano
[not found] ` <1180448075.17146.12.camel-opBMJL+S1+nCw/J+WP9nZ0NK2P1VvzQgpWgKQ6/u3Fg@public.gmane.org>
2007-05-29 20:45 ` Michael Buesch
[not found] ` <200705292245.22940.mb-fseUSCV1ubazQB+pC5nmwQ@public.gmane.org>
2007-05-29 21:01 ` Stephen Hemminger
2007-05-29 21:05 ` Gary Zambrano
[not found] ` <1180472741.17711.19.camel-opBMJL+S1+nCw/J+WP9nZ0NK2P1VvzQgpWgKQ6/u3Fg@public.gmane.org>
2007-05-29 22:39 ` Jeff Garzik
[not found] ` <465CABA3.10003-e+AXbWqSrlAAvxtiuMwx3w@public.gmane.org>
2007-05-29 21:36 ` Gary Zambrano
2007-05-30 10:45 ` Michael Buesch
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=1180978368.4404.29.camel@chaos \
--to=tglx-hfztesqfncyowbw4kg4ksq@public.gmane.org \
--cc=acme-f8uhVLnGfZaxAyOMLChx1axOck334EZe@public.gmane.org \
--cc=akpm-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org \
--cc=drepper-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
--cc=jgarzik-e+AXbWqSrlAAvxtiuMwx3w@public.gmane.org \
--cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-wireless-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=maxi-OwNUvPV92VfddJNmlsFzeA@public.gmane.org \
--cc=mb-fseUSCV1ubazQB+pC5nmwQ@public.gmane.org \
--cc=mingo-X9Un+BFzKDI@public.gmane.org \
--cc=netdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=shemminger-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org \
--cc=zambrano-dY08KVG/lbpWk0Htik3J/w@public.gmane.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;
as well as URLs for NNTP newsgroup(s).