[PATCH] Make most file operations structs in fs/ const
[deliverable/linux.git] / fs / pipe.c
index 8aada8e426f44f12095b59810c5f270bc128f014..e2f4f1d9ffc2578ff4d2da0404c459b819a260a0 100644 (file)
--- a/fs/pipe.c
+++ b/fs/pipe.c
@@ -568,7 +568,7 @@ pipe_rdwr_open(struct inode *inode, struct file *filp)
  * The file_operations structs are not static because they
  * are also used in linux/fs/fifo.c to do operations on FIFOs.
  */
-struct file_operations read_fifo_fops = {
+const struct file_operations read_fifo_fops = {
        .llseek         = no_llseek,
        .read           = pipe_read,
        .readv          = pipe_readv,
@@ -580,7 +580,7 @@ struct file_operations read_fifo_fops = {
        .fasync         = pipe_read_fasync,
 };
 
-struct file_operations write_fifo_fops = {
+const struct file_operations write_fifo_fops = {
        .llseek         = no_llseek,
        .read           = bad_pipe_r,
        .write          = pipe_write,
@@ -592,7 +592,7 @@ struct file_operations write_fifo_fops = {
        .fasync         = pipe_write_fasync,
 };
 
-struct file_operations rdwr_fifo_fops = {
+const struct file_operations rdwr_fifo_fops = {
        .llseek         = no_llseek,
        .read           = pipe_read,
        .readv          = pipe_readv,
@@ -662,10 +662,9 @@ struct inode* pipe_new(struct inode* inode)
 {
        struct pipe_inode_info *info;
 
-       info = kmalloc(sizeof(struct pipe_inode_info), GFP_KERNEL);
+       info = kzalloc(sizeof(struct pipe_inode_info), GFP_KERNEL);
        if (!info)
                goto fail_page;
-       memset(info, 0, sizeof(*info));
        inode->i_pipe = info;
 
        init_waitqueue_head(PIPE_WAIT(*inode));
@@ -676,7 +675,7 @@ fail_page:
        return NULL;
 }
 
-static struct vfsmount *pipe_mnt;
+static struct vfsmount *pipe_mnt __read_mostly;
 static int pipefs_delete_dentry(struct dentry *dentry)
 {
        return 1;
This page took 0.043386 seconds and 5 git commands to generate.