[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1FE6DD409037234FAB833C420AA843ECDDA233@orsmsx424.amr.corp.intel.com>
Date: Thu, 20 Mar 2008 09:04:08 -0700
From: "Luck, Tony" <tony.luck@...el.com>
To: "Peter Zijlstra" <a.p.zijlstra@...llo.nl>,
"Yu, Fenghua" <fenghua.yu@...el.com>
Cc: "KOSAKI Motohiro" <kosaki.motohiro@...fujitsu.com>,
"LKML" <linux-kernel@...r.kernel.org>,
<linux-ia64@...r.kernel.org>,
"Hidetoshi Seto" <seto.hidetoshi@...fujitsu.com>,
"Andrew Morton" <akpm@...ux-foundation.org>
Subject: RE: [2.6.25-rc5-mm1][regression] ia64: hackbench doesn't finish>12 hour
> Which makes me wonder, why did you ever use a semaphore here? Looking at
> the code its a straight forward mutex. And when you would have used a
> mutex lockdep would have warned about this.
The functionality that we are trying to add is to allow up to N
simultaneous processors to execute the critical region. On current
processors/platforms N=1 so a spinlock or mutex would be fine, but
there will be platforms for which N is a small integer greater than
one. Semaphore initialized to N looked to be the ideal primitive
for this (until Motohiro-san ran the test case that showed the path
where we call this code with a spinlock held).
Next question is whether it is reasonable to get to this code
while holding a spinlock. Isn't this a problem for architectures
that need to use cross-processor interrupts to do a global TLB
shootdown?
-Tony
--
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