Re: [patch] i386: make bitops safe

From: Linus Torvalds
Date: Mon Feb 27 2006 - 18:05:59 EST




On Mon, 27 Feb 2006, Chuck Ebbert wrote:
>
> Make i386 bitops safe. Currently they can be fooled, even on
> uniprocessor, by code that uses regions of the bitmap before
> invoking the bitop. The least costly way to make them safe
> is to add a memory clobber and tag all of them as volatile.

Actually, the least costly way should be to make the "ADDR" define work
right again.

It used to do something magic like

struct fake_area {
unsigned long members[1000];
};

#define ADDR (*(volatile struct fake_area *)addr)

which was correct. I forget why it got broken into using just a "long *"
(it happened a long long time ago).

Linus
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/