diff options
author | Stephen Boyd <sboyd@codeaurora.org> | 2012-04-05 17:25:11 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-04-05 18:25:50 -0400 |
commit | 234e340582901211f40d8c732afc49f0630ecf05 (patch) | |
tree | 753076500dfd883b3db56d4f5410af31d8945623 /drivers/remoteproc | |
parent | 9b3ae64be658a573b33d05a8dc73b08d3345fa44 (diff) |
simple_open: automatically convert to simple_open()
Many users of debugfs copy the implementation of default_open() when
they want to support a custom read/write function op. This leads to a
proliferation of the default_open() implementation across the entire
tree.
Now that the common implementation has been consolidated into libfs we
can replace all the users of this function with simple_open().
This replacement was done with the following semantic patch:
<smpl>
@ open @
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,
...
};
</smpl>
[akpm@linux-foundation.org: checkpatch fixes]
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Cc: Julia Lawall <Julia.Lawall@lip6.fr>
Acked-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/remoteproc')
-rw-r--r-- | drivers/remoteproc/remoteproc_debugfs.c | 13 |
1 files changed, 3 insertions, 10 deletions
diff --git a/drivers/remoteproc/remoteproc_debugfs.c b/drivers/remoteproc/remoteproc_debugfs.c index 70277a530133..85d31a69e117 100644 --- a/drivers/remoteproc/remoteproc_debugfs.c +++ b/drivers/remoteproc/remoteproc_debugfs.c | |||
@@ -50,16 +50,9 @@ static ssize_t rproc_trace_read(struct file *filp, char __user *userbuf, | |||
50 | return simple_read_from_buffer(userbuf, count, ppos, trace->va, len); | 50 | return simple_read_from_buffer(userbuf, count, ppos, trace->va, len); |
51 | } | 51 | } |
52 | 52 | ||
53 | static int rproc_open_generic(struct inode *inode, struct file *file) | ||
54 | { | ||
55 | file->private_data = inode->i_private; | ||
56 | |||
57 | return 0; | ||
58 | } | ||
59 | |||
60 | static const struct file_operations trace_rproc_ops = { | 53 | static const struct file_operations trace_rproc_ops = { |
61 | .read = rproc_trace_read, | 54 | .read = rproc_trace_read, |
62 | .open = rproc_open_generic, | 55 | .open = simple_open, |
63 | .llseek = generic_file_llseek, | 56 | .llseek = generic_file_llseek, |
64 | }; | 57 | }; |
65 | 58 | ||
@@ -94,7 +87,7 @@ static ssize_t rproc_state_read(struct file *filp, char __user *userbuf, | |||
94 | 87 | ||
95 | static const struct file_operations rproc_state_ops = { | 88 | static const struct file_operations rproc_state_ops = { |
96 | .read = rproc_state_read, | 89 | .read = rproc_state_read, |
97 | .open = rproc_open_generic, | 90 | .open = simple_open, |
98 | .llseek = generic_file_llseek, | 91 | .llseek = generic_file_llseek, |
99 | }; | 92 | }; |
100 | 93 | ||
@@ -114,7 +107,7 @@ static ssize_t rproc_name_read(struct file *filp, char __user *userbuf, | |||
114 | 107 | ||
115 | static const struct file_operations rproc_name_ops = { | 108 | static const struct file_operations rproc_name_ops = { |
116 | .read = rproc_name_read, | 109 | .read = rproc_name_read, |
117 | .open = rproc_open_generic, | 110 | .open = simple_open, |
118 | .llseek = generic_file_llseek, | 111 | .llseek = generic_file_llseek, |
119 | }; | 112 | }; |
120 | 113 | ||