Subject: Re: [PATCH 3/4] myri10ge - Driver core

From: Brice Goglin <[email-masked]>
Date: Fri, 19 May 2006 01:38:27 +0200

Roland Dreier wrote:
> Still some suspicious uses of volatile here.
>
> For example:
>
>   
>> +struct myri10ge_priv {
>>     
>  ...
>   
>> +	volatile u8 __iomem *sram;
>>     
>
> as far as I can see this is always used with proper __iomem accessors,
> often with casts to strip the volatile anyway.  So why is volatile needed?
>
> I would suggest an audit of all uses of volatile in the driver, since
> "volatile" in drivers really should be read "there's probably a bug
> here, and if not something very tricky is going on."  If there are any
> valid uses of volatile then a comment should explain why, so that
> future reviewers don't have to try and puzzle out which of the
> two possible translations of volatile is correct.
>   

You are right, we audited the code and it looks like we don't need any
volatile.

Thanks,
Brice