Searched hist:b083916638eee513be501f53b42a4be0b9851db0 (Results 1 – 2 of 2) sorted by relevance
/linux/fs/btrfs/ |
H A D | super.c | diff b083916638eee513be501f53b42a4be0b9851db0 Sat May 14 09:10:51 CEST 2011 Julia Lawall <julia@diku.dk> fs/btrfs: Add missing btrfs_free_path
Btrfs_alloc_path should be matched with btrfs_free_path in error-handling code.
A simplified version of the semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/)
// <smpl> @r exists@ local idexpression struct btrfs_path * x; expression ra,rb; position p1,p2; @@
x = btrfs_alloc_path@p1(...) ... when != btrfs_free_path(x,...) when != if (...) { ... btrfs_free_path(x,...) ...} when != x = ra if(...) { ... when != x = rb when forall when != btrfs_free_path(x,...) \(return <+...x...+>; \| return@p2...; \) }
@script:python@ p1 << r.p1; p2 << r.p2; @@
cocci.print_main("alloc",p1) cocci.print_secs("return",p2) // </smpl>
Signed-off-by: Julia Lawall <julia@diku.dk> Signed-off-by: Chris Mason <chris.mason@oracle.com>
|
H A D | inode.c | diff b083916638eee513be501f53b42a4be0b9851db0 Sat May 14 09:10:51 CEST 2011 Julia Lawall <julia@diku.dk> fs/btrfs: Add missing btrfs_free_path
Btrfs_alloc_path should be matched with btrfs_free_path in error-handling code.
A simplified version of the semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/)
// <smpl> @r exists@ local idexpression struct btrfs_path * x; expression ra,rb; position p1,p2; @@
x = btrfs_alloc_path@p1(...) ... when != btrfs_free_path(x,...) when != if (...) { ... btrfs_free_path(x,...) ...} when != x = ra if(...) { ... when != x = rb when forall when != btrfs_free_path(x,...) \(return <+...x...+>; \| return@p2...; \) }
@script:python@ p1 << r.p1; p2 << r.p2; @@
cocci.print_main("alloc",p1) cocci.print_secs("return",p2) // </smpl>
Signed-off-by: Julia Lawall <julia@diku.dk> Signed-off-by: Chris Mason <chris.mason@oracle.com>
|