| To: | Marc Giger <gigerstyle@xxxxxx> |
|---|---|
| Subject: | Re: status of Linux on Alpha? |
| From: | Ivan Kokshaysky <ink@xxxxxxxxxxxxxxxxxxxx> |
| Date: | Tue, 27 Apr 2004 21:55:14 +0400 |
| Cc: | Dru <andru@xxxxxxxxxxx>, linux-xfs@xxxxxxxxxxx, MЕns RullgЕrd <mru@xxxxxx>, linux-kernel@xxxxxxxxxxxxxxx |
| In-reply-to: | <20040427185124.134073cd@xxxxxxxxxxxxxxxxxx>; from gigerstyle@xxxxxx on Tue, Apr 27, 2004 at 06:51:24PM +0200 |
| References: | <20040328204308.C14868@xxxxxxxxxxxxxxxxxxxx> <20040328221806.7fa20502@xxxxxxxxxxxxxxxxxx> <yw1xr7vcn1z2.fsf@xxxxxxxxxx> <20040329205233.5b7905aa@xxxxxxxxxxxxxxxxxx> <20040404121032.7bb42b35@xxxxxxxxxxxxxxxxxx> <20040409134534.67805dfd@xxxxxxxxxxxxxxxxxx> <20040409134828.0e2984e5@xxxxxxxxxxxxxxxxxx> <20040409230651.A727@xxxxxxxxxxxxxxx> <20040413194907.7ce8ceb7@xxxxxxxxxxxxxxxxxx> <20040427185124.134073cd@xxxxxxxxxxxxxxxxxx> |
| Sender: | linux-xfs-bounce@xxxxxxxxxxx |
| User-agent: | Mutt/1.2.5i |
On Tue, Apr 27, 2004 at 06:51:24PM +0200, Marc Giger wrote:
> What's the current status of the problem?
Hopefully resolved - thanks to Dru <andru@xxxxxxxxxxx>, who provided
an easy way to reproduce the problem.
What we have in lib/rwsem.c:__rwsem_do_wake():
int woken, loop;
^^^
and several lines below:
loop = woken;
woken *= RWSEM_ACTIVE_BIAS-RWSEM_WAITING_BIAS;
woken -= RWSEM_ACTIVE_BIAS;
However, rw_semaphore->count is 64-bit on Alpha, so
RWSEM_WAITING_BIAS has been defined as -0x0000000100000000L.
Obviously, this blows up in the write contention case.
Ivan.
--- linux.orig/lib/rwsem.c Mon Apr 26 20:11:36 2004
+++ linux/lib/rwsem.c Tue Apr 27 20:04:14 2004
@@ -40,8 +40,7 @@ static inline struct rw_semaphore *__rws
{
struct rwsem_waiter *waiter;
struct list_head *next;
- signed long oldcount;
- int woken, loop;
+ signed long oldcount, woken, loop;
rwsemtrace(sem,"Entering __rwsem_do_wake");
|
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| ||
| Previous by Date: | Re: status of Linux on Alpha?, Eric Sandeen |
|---|---|
| Next by Date: | Re: status of Linux on Alpha?, Marc Giger |
| Previous by Thread: | Re: status of Linux on Alpha?, Marc Giger |
| Next by Thread: | Re: status of Linux on Alpha?, Marc Giger |
| Indexes: | [Date] [Thread] [Top] [All Lists] |