[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <1161025754.5442.3.camel@localhost.localdomain>
Date: Mon, 16 Oct 2006 12:09:14 -0700
From: john stultz <johnstul@...ibm.com>
To: Andi Kleen <ak@...e.de>
Cc: Andrew Morton <akpm@...l.org>, lkml <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH] i386 Time: Avoid PIT SMP lockups
On Mon, 2006-10-16 at 20:42 +0200, Andi Kleen wrote:
> On Monday 16 October 2006 20:39, Andrew Morton wrote:
> > On 16 Oct 2006 15:48:02 +0200
> > Andi Kleen <ak@...e.de> wrote:
> >
> > > Andrew Morton <akpm@...l.org> writes:
> > > >
> > > > Is there any actual need to hold xtime_lock while doing the port IO? I'd
> > > > have thought it would suffice to do
> > > >
> > > > temp = port_io
> > > > write_seqlock(xtime_lock);
> > > > xtime = muck_with(temp);
> > > > write_sequnlock(xtime_lock);
> > > >
> > > > ?
> > >
> > > That would be a good idea in general. The trouble is just that whatever race
> > > is there will be still there then, just harder to trigger (so instead of
> > > every third boot it will muck up every 6 weeks). Not sure that is
> > > a real improvement.
It is an interesting idea that could be applied generally. There might
be some small races possible (where the cycle_last grabed within
xtime_lock might be ahead of the value pulled from the port_io), but
I'll put some time into seeing if it will work.
> > Confused. What race are you referring to?
>
> Sorry s/race/starvation/
>
> >
> > This is addressing a starvation problem which is due to the slowness of the
> > port-io (iirc).
>
> Is it just sure to go away when the critical section is shorter?
Yea. I don't see the box hangs when the portio is removed. Although I
don't really feel I've narrowed it down completely to the starvation
theory. Its just the best theory I've got so far.
Currently my test box is busy with other things, but as soon as its free
I'll put some more time into this one.
thanks
-john
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists