|
@@ -2186,6 +2186,26 @@ static inline void allow_write_access(struct file *file)
|
|
|
if (file)
|
|
|
atomic_inc(&file->f_path.dentry->d_inode->i_writecount);
|
|
|
}
|
|
|
+#ifdef CONFIG_IMA
|
|
|
+static inline void i_readcount_dec(struct inode *inode)
|
|
|
+{
|
|
|
+ BUG_ON(!atomic_read(&inode->i_readcount));
|
|
|
+ atomic_dec(&inode->i_readcount);
|
|
|
+}
|
|
|
+static inline void i_readcount_inc(struct inode *inode)
|
|
|
+{
|
|
|
+ atomic_inc(&inode->i_readcount);
|
|
|
+}
|
|
|
+#else
|
|
|
+static inline void i_readcount_dec(struct inode *inode)
|
|
|
+{
|
|
|
+ return;
|
|
|
+}
|
|
|
+static inline void i_readcount_inc(struct inode *inode)
|
|
|
+{
|
|
|
+ return;
|
|
|
+}
|
|
|
+#endif
|
|
|
extern int do_pipe_flags(int *, int);
|
|
|
extern struct file *create_read_pipe(struct file *f, int flags);
|
|
|
extern struct file *create_write_pipe(int flags);
|