Subject: Re: how to avoid re-ordering?
To: None <lukem@wasabisystems.com>
From: YAMAMOTO Takashi <yamt@mwd.biglobe.ne.jp>
List: tech-kern
Date: 12/17/2001 11:42:14
From: Luke Mewburn <lukem@wasabisystems.com>
> (Note: I am not a gcc guru.)

neither am I. ;-)

> What if ncpl or ocpl (local variables to the appropriate functions)
> are marked volatile as well, because as far as I can tell, it's the
> reordering of access to those variables which is what's causing the
> problem, not the access to the volatile cpl.

making them volatile just causes unnecessary code bloat
(and accidentally can solve the problem), IIRC.

the problem is re-ordering between splraise/lower and
operations protected by them. and protected variables
isn't non-volatile in most places. as far as I know,
there is nothing preventing re-ordering between
volatile one and non-volatile one.

of course, if protected operations are accesses to some variables,
making all of them volatile can solve the problem, I think.
but if we do so, we should check all usage of splxxx in our tree
and I guess unnecessary code bloats will be unacceptable.

---
YAMAMOTO Takashi<yamt@mwd.biglobe.ne.jp>