summaryrefslogtreecommitdiff
path: root/ANDROID_3.4.5/scripts/coccinelle/api
diff options
context:
space:
mode:
Diffstat (limited to 'ANDROID_3.4.5/scripts/coccinelle/api')
-rw-r--r--ANDROID_3.4.5/scripts/coccinelle/api/alloc/drop_kmalloc_cast.cocci67
-rw-r--r--ANDROID_3.4.5/scripts/coccinelle/api/alloc/kzalloc-simple.cocci86
-rw-r--r--ANDROID_3.4.5/scripts/coccinelle/api/devm_request_and_ioremap.cocci105
-rw-r--r--ANDROID_3.4.5/scripts/coccinelle/api/err_cast.cocci56
-rw-r--r--ANDROID_3.4.5/scripts/coccinelle/api/kstrdup.cocci104
-rw-r--r--ANDROID_3.4.5/scripts/coccinelle/api/memdup.cocci66
-rw-r--r--ANDROID_3.4.5/scripts/coccinelle/api/memdup_user.cocci60
-rw-r--r--ANDROID_3.4.5/scripts/coccinelle/api/ptr_ret.cocci70
-rw-r--r--ANDROID_3.4.5/scripts/coccinelle/api/resource_size.cocci93
-rw-r--r--ANDROID_3.4.5/scripts/coccinelle/api/simple_open.cocci70
10 files changed, 0 insertions, 777 deletions
diff --git a/ANDROID_3.4.5/scripts/coccinelle/api/alloc/drop_kmalloc_cast.cocci b/ANDROID_3.4.5/scripts/coccinelle/api/alloc/drop_kmalloc_cast.cocci
deleted file mode 100644
index 7d4771d4..00000000
--- a/ANDROID_3.4.5/scripts/coccinelle/api/alloc/drop_kmalloc_cast.cocci
+++ /dev/null
@@ -1,67 +0,0 @@
-///
-/// Casting (void *) value returned by kmalloc is useless
-/// as mentioned in Documentation/CodingStyle, Chap 14.
-///
-// Confidence: High
-// Copyright: 2009,2010 Nicolas Palix, DIKU. GPLv2.
-// URL: http://coccinelle.lip6.fr/
-// Options: -no_includes -include_headers
-//
-// Keywords: kmalloc, kzalloc, kcalloc
-// Version min: < 2.6.12 kmalloc
-// Version min: < 2.6.12 kcalloc
-// Version min: 2.6.14 kzalloc
-//
-
-virtual context
-virtual patch
-virtual org
-virtual report
-
-//----------------------------------------------------------
-// For context mode
-//----------------------------------------------------------
-
-@depends on context@
-type T;
-@@
-
-* (T *)
- \(kmalloc\|kzalloc\|kcalloc\)(...)
-
-//----------------------------------------------------------
-// For patch mode
-//----------------------------------------------------------
-
-@depends on patch@
-type T;
-@@
-
-- (T *)
- \(kmalloc\|kzalloc\|kcalloc\)(...)
-
-//----------------------------------------------------------
-// For org and report mode
-//----------------------------------------------------------
-
-@r depends on org || report@
-type T;
-position p;
-@@
-
- (T@p *)\(kmalloc\|kzalloc\|kcalloc\)(...)
-
-@script:python depends on org@
-p << r.p;
-t << r.T;
-@@
-
-coccilib.org.print_safe_todo(p[0], t)
-
-@script:python depends on report@
-p << r.p;
-t << r.T;
-@@
-
-msg="WARNING: casting value returned by k[cmz]alloc to (%s *) is useless." % (t)
-coccilib.report.print_report(p[0], msg)
diff --git a/ANDROID_3.4.5/scripts/coccinelle/api/alloc/kzalloc-simple.cocci b/ANDROID_3.4.5/scripts/coccinelle/api/alloc/kzalloc-simple.cocci
deleted file mode 100644
index 046b9b16..00000000
--- a/ANDROID_3.4.5/scripts/coccinelle/api/alloc/kzalloc-simple.cocci
+++ /dev/null
@@ -1,86 +0,0 @@
-///
-/// Use kzalloc rather than kmalloc followed by memset with 0
-///
-/// This considers some simple cases that are common and easy to validate
-/// Note in particular that there are no ...s in the rule, so all of the
-/// matched code has to be contiguous
-///
-// Confidence: High
-// Copyright: (C) 2009-2010 Julia Lawall, Nicolas Palix, DIKU. GPLv2.
-// Copyright: (C) 2009-2010 Gilles Muller, INRIA/LiP6. GPLv2.
-// URL: http://coccinelle.lip6.fr/rules/kzalloc.html
-// Options: -no_includes -include_headers
-//
-// Keywords: kmalloc, kzalloc
-// Version min: < 2.6.12 kmalloc
-// Version min: 2.6.14 kzalloc
-//
-
-virtual context
-virtual patch
-virtual org
-virtual report
-
-//----------------------------------------------------------
-// For context mode
-//----------------------------------------------------------
-
-@depends on context@
-type T, T2;
-expression x;
-expression E1,E2;
-statement S;
-@@
-
-* x = (T)kmalloc(E1,E2);
- if ((x==NULL) || ...) S
-* memset((T2)x,0,E1);
-
-//----------------------------------------------------------
-// For patch mode
-//----------------------------------------------------------
-
-@depends on patch@
-type T, T2;
-expression x;
-expression E1,E2;
-statement S;
-@@
-
-- x = (T)kmalloc(E1,E2);
-+ x = kzalloc(E1,E2);
- if ((x==NULL) || ...) S
-- memset((T2)x,0,E1);
-
-//----------------------------------------------------------
-// For org mode
-//----------------------------------------------------------
-
-@r depends on org || report@
-type T, T2;
-expression x;
-expression E1,E2;
-statement S;
-position p;
-@@
-
- x = (T)kmalloc@p(E1,E2);
- if ((x==NULL) || ...) S
- memset((T2)x,0,E1);
-
-@script:python depends on org@
-p << r.p;
-x << r.x;
-@@
-
-msg="%s" % (x)
-msg_safe=msg.replace("[","@(").replace("]",")")
-coccilib.org.print_todo(p[0], msg_safe)
-
-@script:python depends on report@
-p << r.p;
-x << r.x;
-@@
-
-msg="WARNING: kzalloc should be used for %s, instead of kmalloc/memset" % (x)
-coccilib.report.print_report(p[0], msg)
diff --git a/ANDROID_3.4.5/scripts/coccinelle/api/devm_request_and_ioremap.cocci b/ANDROID_3.4.5/scripts/coccinelle/api/devm_request_and_ioremap.cocci
deleted file mode 100644
index 46beb814..00000000
--- a/ANDROID_3.4.5/scripts/coccinelle/api/devm_request_and_ioremap.cocci
+++ /dev/null
@@ -1,105 +0,0 @@
-/// Reimplement a call to devm_request_mem_region followed by a call to ioremap
-/// or ioremap_nocache by a call to devm_request_and_ioremap.
-/// Devm_request_and_ioremap was introduced in
-/// 72f8c0bfa0de64c68ee59f40eb9b2683bffffbb0. It makes the code much more
-/// concise.
-///
-///
-// Confidence: High
-// Copyright: (C) 2011 Julia Lawall, INRIA/LIP6. GPLv2.
-// Copyright: (C) 2011 Gilles Muller, INRIA/LiP6. GPLv2.
-// URL: http://coccinelle.lip6.fr/
-// Comments:
-// Options: -no_includes -include_headers
-
-virtual patch
-virtual org
-virtual report
-virtual context
-
-@nm@
-expression myname;
-identifier i;
-@@
-
-struct platform_driver i = { .driver = { .name = myname } };
-
-@depends on patch@
-expression dev,res,size;
-@@
-
--if (!devm_request_mem_region(dev, res->start, size,
-- \(res->name\|dev_name(dev)\))) {
-- ...
-- return ...;
--}
-... when != res->start
-(
--devm_ioremap(dev,res->start,size)
-+devm_request_and_ioremap(dev,res)
-|
--devm_ioremap_nocache(dev,res->start,size)
-+devm_request_and_ioremap(dev,res)
-)
-... when any
- when != res->start
-
-// this rule is separate from the previous one, because a single file can
-// have multiple values of myname
-@depends on patch@
-expression dev,res,size;
-expression nm.myname;
-@@
-
--if (!devm_request_mem_region(dev, res->start, size,myname)) {
-- ...
-- return ...;
--}
-... when != res->start
-(
--devm_ioremap(dev,res->start,size)
-+devm_request_and_ioremap(dev,res)
-|
--devm_ioremap_nocache(dev,res->start,size)
-+devm_request_and_ioremap(dev,res)
-)
-... when any
- when != res->start
-
-
-@pb depends on org || report || context@
-expression dev,res,size;
-expression nm.myname;
-position p1,p2;
-@@
-
-*if
- (!devm_request_mem_region@p1(dev, res->start, size,
- \(res->name\|dev_name(dev)\|myname\))) {
- ...
- return ...;
-}
-... when != res->start
-(
-*devm_ioremap@p2(dev,res->start,size)
-|
-*devm_ioremap_nocache@p2(dev,res->start,size)
-)
-... when any
- when != res->start
-
-@script:python depends on org@
-p1 << pb.p1;
-p2 << pb.p2;
-@@
-
-cocci.print_main("INFO: replace by devm_request_and_ioremap",p1)
-cocci.print_secs("",p2)
-
-@script:python depends on report@
-p1 << pb.p1;
-p2 << pb.p2;
-@@
-
-msg = "INFO: devm_request_mem_region followed by ioremap on line %s can be replaced by devm_request_and_ioremap" % (p2[0].line)
-coccilib.report.print_report(p1[0],msg)
diff --git a/ANDROID_3.4.5/scripts/coccinelle/api/err_cast.cocci b/ANDROID_3.4.5/scripts/coccinelle/api/err_cast.cocci
deleted file mode 100644
index 2ce11500..00000000
--- a/ANDROID_3.4.5/scripts/coccinelle/api/err_cast.cocci
+++ /dev/null
@@ -1,56 +0,0 @@
-///
-/// Use ERR_CAST inlined function instead of ERR_PTR(PTR_ERR(...))
-///
-// Confidence: High
-// Copyright: (C) 2009, 2010 Nicolas Palix, DIKU. GPLv2.
-// Copyright: (C) 2009, 2010 Julia Lawall, DIKU. GPLv2.
-// Copyright: (C) 2009, 2010 Gilles Muller, INRIA/LiP6. GPLv2.
-// URL: http://coccinelle.lip6.fr/
-// Options:
-//
-// Keywords: ERR_PTR, PTR_ERR, ERR_CAST
-// Version min: 2.6.25
-//
-
-virtual context
-virtual patch
-virtual org
-virtual report
-
-
-@ depends on context && !patch && !org && !report@
-expression x;
-@@
-
-* ERR_PTR(PTR_ERR(x))
-
-@ depends on !context && patch && !org && !report @
-expression x;
-@@
-
-- ERR_PTR(PTR_ERR(x))
-+ ERR_CAST(x)
-
-@r depends on !context && !patch && (org || report)@
-expression x;
-position p;
-@@
-
- ERR_PTR@p(PTR_ERR(x))
-
-@script:python depends on org@
-p << r.p;
-x << r.x;
-@@
-
-msg="WARNING ERR_CAST can be used with %s" % (x)
-msg_safe=msg.replace("[","@(").replace("]",")")
-coccilib.org.print_todo(p[0], msg_safe)
-
-@script:python depends on report@
-p << r.p;
-x << r.x;
-@@
-
-msg="WARNING: ERR_CAST can be used with %s" % (x)
-coccilib.report.print_report(p[0], msg)
diff --git a/ANDROID_3.4.5/scripts/coccinelle/api/kstrdup.cocci b/ANDROID_3.4.5/scripts/coccinelle/api/kstrdup.cocci
deleted file mode 100644
index 07a74b2c..00000000
--- a/ANDROID_3.4.5/scripts/coccinelle/api/kstrdup.cocci
+++ /dev/null
@@ -1,104 +0,0 @@
-/// Use kstrdup rather than duplicating its implementation
-///
-// Confidence: High
-// Copyright: (C) 2010-2012 Nicolas Palix. GPLv2.
-// Copyright: (C) 2010-2012 Julia Lawall, INRIA/LIP6. GPLv2.
-// Copyright: (C) 2010-2012 Gilles Muller, INRIA/LiP6. GPLv2.
-// URL: http://coccinelle.lip6.fr/
-// Comments:
-// Options: -no_includes -include_headers
-
-virtual patch
-virtual context
-virtual org
-virtual report
-
-@depends on patch@
-expression from,to;
-expression flag,E1,E2;
-statement S;
-@@
-
-- to = kmalloc(strlen(from) + 1,flag);
-+ to = kstrdup(from, flag);
- ... when != \(from = E1 \| to = E1 \)
- if (to==NULL || ...) S
- ... when != \(from = E2 \| to = E2 \)
-- strcpy(to, from);
-
-@depends on patch@
-expression x,from,to;
-expression flag,E1,E2,E3;
-statement S;
-@@
-
-- x = strlen(from) + 1;
- ... when != \( x = E1 \| from = E1 \)
-- to = \(kmalloc\|kzalloc\)(x,flag);
-+ to = kstrdup(from, flag);
- ... when != \(x = E2 \| from = E2 \| to = E2 \)
- if (to==NULL || ...) S
- ... when != \(x = E3 \| from = E3 \| to = E3 \)
-- memcpy(to, from, x);
-
-// ---------------------------------------------------------------------
-
-@r1 depends on !patch exists@
-expression from,to;
-expression flag,E1,E2;
-statement S;
-position p1,p2;
-@@
-
-* to = kmalloc@p1(strlen(from) + 1,flag);
- ... when != \(from = E1 \| to = E1 \)
- if (to==NULL || ...) S
- ... when != \(from = E2 \| to = E2 \)
-* strcpy@p2(to, from);
-
-@r2 depends on !patch exists@
-expression x,from,to;
-expression flag,E1,E2,E3;
-statement S;
-position p1,p2;
-@@
-
-* x = strlen(from) + 1;
- ... when != \( x = E1 \| from = E1 \)
-* to = \(kmalloc@p1\|kzalloc@p2\)(x,flag);
- ... when != \(x = E2 \| from = E2 \| to = E2 \)
- if (to==NULL || ...) S
- ... when != \(x = E3 \| from = E3 \| to = E3 \)
-* memcpy@p2(to, from, x);
-
-@script:python depends on org@
-p1 << r1.p1;
-p2 << r1.p2;
-@@
-
-cocci.print_main("WARNING opportunity for kstrdep",p1)
-cocci.print_secs("strcpy",p2)
-
-@script:python depends on org@
-p1 << r2.p1;
-p2 << r2.p2;
-@@
-
-cocci.print_main("WARNING opportunity for kstrdep",p1)
-cocci.print_secs("memcpy",p2)
-
-@script:python depends on report@
-p1 << r1.p1;
-p2 << r1.p2;
-@@
-
-msg = "WARNING opportunity for kstrdep (strcpy on line %s)" % (p2[0].line)
-coccilib.report.print_report(p1[0], msg)
-
-@script:python depends on report@
-p1 << r2.p1;
-p2 << r2.p2;
-@@
-
-msg = "WARNING opportunity for kstrdep (memcpy on line %s)" % (p2[0].line)
-coccilib.report.print_report(p1[0], msg)
diff --git a/ANDROID_3.4.5/scripts/coccinelle/api/memdup.cocci b/ANDROID_3.4.5/scripts/coccinelle/api/memdup.cocci
deleted file mode 100644
index 4dceab6d..00000000
--- a/ANDROID_3.4.5/scripts/coccinelle/api/memdup.cocci
+++ /dev/null
@@ -1,66 +0,0 @@
-/// Use kmemdup rather than duplicating its implementation
-///
-// Confidence: High
-// Copyright: (C) 2010-2012 Nicolas Palix. GPLv2.
-// Copyright: (C) 2010-2012 Julia Lawall, INRIA/LIP6. GPLv2.
-// Copyright: (C) 2010-2012 Gilles Muller, INRIA/LiP6. GPLv2.
-// URL: http://coccinelle.lip6.fr/
-// Comments:
-// Options: -no_includes -include_headers
-
-virtual patch
-virtual context
-virtual org
-virtual report
-
-@r1@
-expression from,to;
-expression flag;
-position p;
-@@
-
- to = \(kmalloc@p\|kzalloc@p\)(strlen(from) + 1,flag);
-
-@r2@
-expression x,from,to;
-expression flag,E1;
-position p;
-@@
-
- x = strlen(from) + 1;
- ... when != \( x = E1 \| from = E1 \)
- to = \(kmalloc@p\|kzalloc@p\)(x,flag);
-
-@depends on patch@
-expression from,to,size,flag;
-position p != {r1.p,r2.p};
-statement S;
-@@
-
-- to = \(kmalloc@p\|kzalloc@p\)(size,flag);
-+ to = kmemdup(from,size,flag);
- if (to==NULL || ...) S
-- memcpy(to, from, size);
-
-@r depends on !patch@
-expression from,to,size,flag;
-position p != {r1.p,r2.p};
-statement S;
-@@
-
-* to = \(kmalloc@p\|kzalloc@p\)(size,flag);
- to = kmemdup(from,size,flag);
- if (to==NULL || ...) S
-* memcpy(to, from, size);
-
-@script:python depends on org@
-p << r.p;
-@@
-
-coccilib.org.print_todo(p[0], "WARNING opportunity for kmemdep")
-
-@script:python depends on report@
-p << r.p;
-@@
-
-coccilib.report.print_report(p[0], "WARNING opportunity for kmemdep")
diff --git a/ANDROID_3.4.5/scripts/coccinelle/api/memdup_user.cocci b/ANDROID_3.4.5/scripts/coccinelle/api/memdup_user.cocci
deleted file mode 100644
index 2efac289..00000000
--- a/ANDROID_3.4.5/scripts/coccinelle/api/memdup_user.cocci
+++ /dev/null
@@ -1,60 +0,0 @@
-/// Use memdup_user rather than duplicating its implementation
-/// This is a little bit restricted to reduce false positives
-///
-// Confidence: High
-// Copyright: (C) 2010-2012 Nicolas Palix. GPLv2.
-// Copyright: (C) 2010-2012 Julia Lawall, INRIA/LIP6. GPLv2.
-// Copyright: (C) 2010-2012 Gilles Muller, INRIA/LiP6. GPLv2.
-// URL: http://coccinelle.lip6.fr/
-// Comments:
-// Options: -no_includes -include_headers
-
-virtual patch
-virtual context
-virtual org
-virtual report
-
-@depends on patch@
-expression from,to,size,flag;
-identifier l1,l2;
-@@
-
-- to = \(kmalloc\|kzalloc\)(size,flag);
-+ to = memdup_user(from,size);
- if (
-- to==NULL
-+ IS_ERR(to)
- || ...) {
- <+... when != goto l1;
-- -ENOMEM
-+ PTR_ERR(to)
- ...+>
- }
-- if (copy_from_user(to, from, size) != 0) {
-- <+... when != goto l2;
-- -EFAULT
-- ...+>
-- }
-
-@r depends on !patch@
-expression from,to,size,flag;
-position p;
-statement S1,S2;
-@@
-
-* to = \(kmalloc@p\|kzalloc@p\)(size,flag);
- if (to==NULL || ...) S1
- if (copy_from_user(to, from, size) != 0)
- S2
-
-@script:python depends on org@
-p << r.p;
-@@
-
-coccilib.org.print_todo(p[0], "WARNING opportunity for memdep_user")
-
-@script:python depends on report@
-p << r.p;
-@@
-
-coccilib.report.print_report(p[0], "WARNING opportunity for memdep_user")
diff --git a/ANDROID_3.4.5/scripts/coccinelle/api/ptr_ret.cocci b/ANDROID_3.4.5/scripts/coccinelle/api/ptr_ret.cocci
deleted file mode 100644
index cbfd08c7..00000000
--- a/ANDROID_3.4.5/scripts/coccinelle/api/ptr_ret.cocci
+++ /dev/null
@@ -1,70 +0,0 @@
-///
-/// Use PTR_RET rather than if(IS_ERR(...)) + PTR_ERR
-///
-// Confidence: High
-// Copyright: (C) 2012 Julia Lawall, INRIA/LIP6. GPLv2.
-// Copyright: (C) 2012 Gilles Muller, INRIA/LiP6. GPLv2.
-// URL: http://coccinelle.lip6.fr/
-// Options: -no_includes -include_headers
-//
-// Keywords: ERR_PTR, PTR_ERR, PTR_RET
-// Version min: 2.6.39
-//
-
-virtual context
-virtual patch
-virtual org
-virtual report
-
-@depends on patch@
-expression ptr;
-@@
-
-- if (IS_ERR(ptr)) return PTR_ERR(ptr); else return 0;
-+ return PTR_RET(ptr);
-
-@depends on patch@
-expression ptr;
-@@
-
-- if (IS_ERR(ptr)) return PTR_ERR(ptr); return 0;
-+ return PTR_RET(ptr);
-
-@r1 depends on !patch@
-expression ptr;
-position p1;
-@@
-
-* if@p1 (IS_ERR(ptr)) return PTR_ERR(ptr); else return 0;
-
-@r2 depends on !patch@
-expression ptr;
-position p2;
-@@
-
-* if@p2 (IS_ERR(ptr)) return PTR_ERR(ptr); return 0;
-
-@script:python depends on org@
-p << r1.p1;
-@@
-
-coccilib.org.print_todo(p[0], "WARNING: PTR_RET can be used")
-
-
-@script:python depends on org@
-p << r2.p2;
-@@
-
-coccilib.org.print_todo(p[0], "WARNING: PTR_RET can be used")
-
-@script:python depends on report@
-p << r1.p1;
-@@
-
-coccilib.report.print_report(p[0], "WARNING: PTR_RET can be used")
-
-@script:python depends on report@
-p << r2.p2;
-@@
-
-coccilib.report.print_report(p[0], "WARNING: PTR_RET can be used")
diff --git a/ANDROID_3.4.5/scripts/coccinelle/api/resource_size.cocci b/ANDROID_3.4.5/scripts/coccinelle/api/resource_size.cocci
deleted file mode 100644
index 1935a58b..00000000
--- a/ANDROID_3.4.5/scripts/coccinelle/api/resource_size.cocci
+++ /dev/null
@@ -1,93 +0,0 @@
-///
-/// Use resource_size function on resource object
-/// instead of explicit computation.
-///
-// Confidence: High
-// Copyright: (C) 2009, 2010 Nicolas Palix, DIKU. GPLv2.
-// Copyright: (C) 2009, 2010 Julia Lawall, DIKU. GPLv2.
-// Copyright: (C) 2009, 2010 Gilles Muller, INRIA/LiP6. GPLv2.
-// URL: http://coccinelle.lip6.fr/
-// Options:
-//
-// Keywords: resource_size
-// Version min: 2.6.27 resource_size
-//
-
-virtual context
-virtual patch
-virtual org
-virtual report
-
-//----------------------------------------------------------
-// For context mode
-//----------------------------------------------------------
-
-@r_context depends on context && !patch && !org@
-struct resource *res;
-@@
-
-* (res->end - res->start) + 1
-
-//----------------------------------------------------------
-// For patch mode
-//----------------------------------------------------------
-
-@r_patch depends on !context && patch && !org@
-struct resource *res;
-@@
-
-- (res->end - res->start) + 1
-+ resource_size(res)
-
-//----------------------------------------------------------
-// For org mode
-//----------------------------------------------------------
-
-
-@r_org depends on !context && !patch && (org || report)@
-struct resource *res;
-position p;
-@@
-
- (res->end@p - res->start) + 1
-
-@rbad_org depends on !context && !patch && (org || report)@
-struct resource *res;
-position p != r_org.p;
-@@
-
- res->end@p - res->start
-
-@script:python depends on org@
-p << r_org.p;
-x << r_org.res;
-@@
-
-msg="ERROR with %s" % (x)
-msg_safe=msg.replace("[","@(").replace("]",")")
-coccilib.org.print_todo(p[0], msg_safe)
-
-@script:python depends on report@
-p << r_org.p;
-x << r_org.res;
-@@
-
-msg="ERROR: Missing resource_size with %s" % (x)
-coccilib.report.print_report(p[0], msg)
-
-@script:python depends on org@
-p << rbad_org.p;
-x << rbad_org.res;
-@@
-
-msg="WARNING with %s" % (x)
-msg_safe=msg.replace("[","@(").replace("]",")")
-coccilib.org.print_todo(p[0], msg_safe)
-
-@script:python depends on report@
-p << rbad_org.p;
-x << rbad_org.res;
-@@
-
-msg="WARNING: Suspicious code. resource_size is maybe missing with %s" % (x)
-coccilib.report.print_report(p[0], msg)
diff --git a/ANDROID_3.4.5/scripts/coccinelle/api/simple_open.cocci b/ANDROID_3.4.5/scripts/coccinelle/api/simple_open.cocci
deleted file mode 100644
index 05962f7b..00000000
--- a/ANDROID_3.4.5/scripts/coccinelle/api/simple_open.cocci
+++ /dev/null
@@ -1,70 +0,0 @@
-/// This removes an open coded simple_open() function
-/// and replaces file operations references to the function
-/// with simple_open() instead.
-///
-// Confidence: High
-// Comments:
-// Options: -no_includes -include_headers
-
-virtual patch
-virtual report
-
-@ open depends on patch @
-identifier open_f != simple_open;
-identifier i, f;
-@@
--int open_f(struct inode *i, struct file *f)
--{
-(
--if (i->i_private)
--f->private_data = i->i_private;
-|
--f->private_data = i->i_private;
-)
--return 0;
--}
-
-@ has_open depends on open @
-identifier fops;
-identifier open.open_f;
-@@
-struct file_operations fops = {
-...,
--.open = open_f,
-+.open = simple_open,
-...
-};
-
-@ openr depends on report @
-identifier open_f != simple_open;
-identifier i, f;
-position p;
-@@
-int open_f@p(struct inode *i, struct file *f)
-{
-(
-if (i->i_private)
-f->private_data = i->i_private;
-|
-f->private_data = i->i_private;
-)
-return 0;
-}
-
-@ has_openr depends on openr @
-identifier fops;
-identifier openr.open_f;
-position p;
-@@
-struct file_operations fops = {
-...,
-.open = open_f@p,
-...
-};
-
-@script:python@
-pf << openr.p;
-ps << has_openr.p;
-@@
-
-coccilib.report.print_report(pf[0],"WARNING opportunity for simple_open, see also structure on line %s"%(ps[0].line))