diff options
author | David Howells <dhowells@redhat.com> | 2013-04-12 13:03:36 -0400 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2013-05-01 17:29:47 -0400 |
commit | c30480b92cf497aa3b463367a82f1c2fdc5c46e9 (patch) | |
tree | be6dea0c5a45bd60a03ae99efdda0eb365db884a /include/linux/proc_fs.h | |
parent | a8ca16ea7b0abb0a7e49492d1123b715f0ec62e8 (diff) |
proc: Make the PROC_I() and PDE() macros internal to procfs
Make the PROC_I() and PDE() macros internal to procfs. This means making
PDE_DATA() out of line. This could be made more optimal by storing
PDE()->data into inode->i_private.
Also provide a __PDE_DATA() that is inline and internal to procfs.
Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'include/linux/proc_fs.h')
-rw-r--r-- | include/linux/proc_fs.h | 17 |
1 files changed, 2 insertions, 15 deletions
diff --git a/include/linux/proc_fs.h b/include/linux/proc_fs.h index cb78d5be6859..2112926de854 100644 --- a/include/linux/proc_fs.h +++ b/include/linux/proc_fs.h | |||
@@ -87,6 +87,7 @@ static inline struct proc_dir_entry *proc_create(const char *name, umode_t mode, | |||
87 | 87 | ||
88 | extern void proc_set_size(struct proc_dir_entry *, loff_t); | 88 | extern void proc_set_size(struct proc_dir_entry *, loff_t); |
89 | extern void proc_set_user(struct proc_dir_entry *, kuid_t, kgid_t); | 89 | extern void proc_set_user(struct proc_dir_entry *, kuid_t, kgid_t); |
90 | extern void *PDE_DATA(const struct inode *); | ||
90 | extern void *proc_get_parent_data(const struct inode *); | 91 | extern void *proc_get_parent_data(const struct inode *); |
91 | #else | 92 | #else |
92 | 93 | ||
@@ -116,6 +117,7 @@ static inline struct proc_dir_entry *proc_mkdir_mode(const char *name, | |||
116 | umode_t mode, struct proc_dir_entry *parent) { return NULL; } | 117 | umode_t mode, struct proc_dir_entry *parent) { return NULL; } |
117 | static inline void proc_set_size(struct proc_dir_entry *de, loff_t size) {} | 118 | static inline void proc_set_size(struct proc_dir_entry *de, loff_t size) {} |
118 | static inline void proc_set_user(struct proc_dir_entry *de, kuid_t uid, kgid_t gid) {} | 119 | static inline void proc_set_user(struct proc_dir_entry *de, kuid_t uid, kgid_t gid) {} |
120 | static inline void *PDE_DATA(const struct inode *inode) {BUG(); return NULL;} | ||
119 | 121 | ||
120 | #endif /* CONFIG_PROC_FS */ | 122 | #endif /* CONFIG_PROC_FS */ |
121 | 123 | ||
@@ -142,21 +144,6 @@ struct proc_inode { | |||
142 | struct inode vfs_inode; | 144 | struct inode vfs_inode; |
143 | }; | 145 | }; |
144 | 146 | ||
145 | static inline struct proc_inode *PROC_I(const struct inode *inode) | ||
146 | { | ||
147 | return container_of(inode, struct proc_inode, vfs_inode); | ||
148 | } | ||
149 | |||
150 | static inline struct proc_dir_entry *PDE(const struct inode *inode) | ||
151 | { | ||
152 | return PROC_I(inode)->pde; | ||
153 | } | ||
154 | |||
155 | static inline void *PDE_DATA(const struct inode *inode) | ||
156 | { | ||
157 | return PROC_I(inode)->pde->data; | ||
158 | } | ||
159 | |||
160 | static inline struct proc_dir_entry *proc_net_mkdir( | 147 | static inline struct proc_dir_entry *proc_net_mkdir( |
161 | struct net *net, const char *name, struct proc_dir_entry *parent) | 148 | struct net *net, const char *name, struct proc_dir_entry *parent) |
162 | { | 149 | { |