jmerkey@wolfmountaingroup.com wrote:
quoted text >>> Also, whoever wrote "/Documentation/volatiles_are_evil" must not have
>>> worked with the busted-ass GNU compiler that optimizes away global
>>> variables and busts SMP dependent code. I am not going to remove the
>> The Linux way to handle this is to use gcc memory barriers.
>> mb()/barrier()/wmb()/rmb()/smp_rmb()/smp_wmb() etc.
>> Normally everything that volatile can do can be expressed by them.
[...]
quoted text >> See Documentation/memory-barriers.txt
[...]
quoted text > I'll instrument this as described in the documentation you referenced and
> remove the volatile declarations. If this passes testing, I will repost
> with these corections.
Take care though that neither memory barriers nor volatile are what you
want if accesses need to be atomic on whatever given data structure.
(E.g. bitfield manipulations, counter increments, accesses to virtually
anything that is bigger than an integer or a pointer...)
--
Stefan Richter
-=====-==--- =--- --===
http://arcgraph.de/sr/
--
unsubscribe notice 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/
Messages in current thread:
Re: [ANNOUNCE] Merkey's Kernel Debugger , Stefan Richter , (Thu Aug 7, 10:04 am)