On Fri, 15 Oct 2010, Arnd Bergmann wrote:

> I was using the semantic patch below to verify that all file_operation in the
> kernel have a .llseek function by applying the patch and greppign for any
> file_operations that did not get renamed.
> 
> For some reason, this no longer seems to work, possibly after I upgraded
> my system to a newer coccinelle version.
> 
> Any idea what the problem is? Did it just work by accident before or is this
> supposed to work?

I did indeed change the handling of such structures.  Do you have some 
test data that shows the problem?

julia

>       Arnd
> 
> ---
> @ fops0 @
> identifier fops;
> @@
> struct file_operations fops = {
>  ...
> };
> 
> @ has_llseek depends on fops0 @
> identifier fops0.fops;
> identifier llseek_f;
> @@
> struct file_operations fops = {
> ...
>  .llseek = llseek_f,
> ...
> };
> 
> @ has_no_llseek depends on has_llseek @
> identifier fops0.fops;
> @@
> -struct file_operations fops = {
> +struct file_operations_ok fops = {
>       ...
> };
> 
> @@
> identifier fops1;
> @@
> -extern const struct file_operations fops1;
> +extern const struct file_operations_ok fops1;
> 
> @@
> identifier fops2;
> @@
> -extern struct file_operations fops2;
> +extern struct file_operations_ok fops2;
> 
_______________________________________________
Cocci mailing list
[email protected]
http://lists.diku.dk/mailman/listinfo/cocci
(Web access from inside DIKUs LAN only)

Reply via email to