Messages in this thread | | | Date | Sat, 15 Oct 2005 16:07:02 -0700 (PDT) | Subject | Re: Possible memory ordering bug in page reclaim? | From | "David S. Miller" <> |
| |
From: Andrea Arcangeli <andrea@suse.de> Date: Sat, 15 Oct 2005 22:07:01 +0200
> sure see alpha: > > __asm__ __volatile__( > "1: ldq_l %0,%1\n" > " addq %0,%3,%2\n" > " addq %0,%3,%0\n" > " stq_c %0,%1\n" > " beq %0,2f\n" > " mb\n" > > the memory barrier is applied way after the write is visible to other > cpus, you can even get an irq before the mb and block there for some > usec.
For atomic operations returning values, there must be a memory barrier both before and after the atomic operation. This is defined in Documentation/atomic_ops.txt, so Alpha needs to be fixed to add a memory barrier at the beginning of these assembler sequences. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |