const: constify remaining file_operations

[akpm@linux-foundation.org: fix KVM]
Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Acked-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
Alexey Dobriyan 2009-10-01 15:43:56 -07:00 committed by Linus Torvalds
parent 1c4115e595
commit 828c09509b
57 changed files with 110 additions and 95 deletions

View file

@ -195,7 +195,7 @@ static int clk_debugfs_open(struct inode *inode, struct file *file)
return single_open(file, clk_debugfs_show, NULL); return single_open(file, clk_debugfs_show, NULL);
} }
static struct file_operations clk_debugfs_operations = { static const struct file_operations clk_debugfs_operations = {
.open = clk_debugfs_open, .open = clk_debugfs_open,
.read = seq_read, .read = seq_read,
.llseek = seq_lseek, .llseek = seq_lseek,

View file

@ -48,7 +48,7 @@ coreb_ioctl(struct inode *inode, struct file *file, unsigned int cmd, unsigned l
return ret; return ret;
} }
static struct file_operations coreb_fops = { static const struct file_operations coreb_fops = {
.owner = THIS_MODULE, .owner = THIS_MODULE,
.ioctl = coreb_ioctl, .ioctl = coreb_ioctl,
}; };

View file

@ -244,7 +244,7 @@ static unsigned sync_serial_prescale_shadow;
#define NUMBER_OF_PORTS 2 #define NUMBER_OF_PORTS 2
static struct file_operations sync_serial_fops = { static const struct file_operations sync_serial_fops = {
.owner = THIS_MODULE, .owner = THIS_MODULE,
.write = sync_serial_write, .write = sync_serial_write,
.read = sync_serial_read, .read = sync_serial_read,

View file

@ -855,7 +855,7 @@ gpio_leds_ioctl(unsigned int cmd, unsigned long arg)
return 0; return 0;
} }
struct file_operations gpio_fops = { static const struct file_operations gpio_fops = {
.owner = THIS_MODULE, .owner = THIS_MODULE,
.poll = gpio_poll, .poll = gpio_poll,
.ioctl = gpio_ioctl, .ioctl = gpio_ioctl,

View file

@ -201,7 +201,7 @@ static int kvmppc_exit_timing_open(struct inode *inode, struct file *file)
return single_open(file, kvmppc_exit_timing_show, inode->i_private); return single_open(file, kvmppc_exit_timing_show, inode->i_private);
} }
static struct file_operations kvmppc_exit_timing_fops = { static const struct file_operations kvmppc_exit_timing_fops = {
.owner = THIS_MODULE, .owner = THIS_MODULE,
.open = kvmppc_exit_timing_open, .open = kvmppc_exit_timing_open,
.read = seq_read, .read = seq_read,

View file

@ -147,7 +147,7 @@ static int __fops ## _open(struct inode *inode, struct file *file) \
__simple_attr_check_format(__fmt, 0ull); \ __simple_attr_check_format(__fmt, 0ull); \
return spufs_attr_open(inode, file, __get, __set, __fmt); \ return spufs_attr_open(inode, file, __get, __set, __fmt); \
} \ } \
static struct file_operations __fops = { \ static const struct file_operations __fops = { \
.owner = THIS_MODULE, \ .owner = THIS_MODULE, \
.open = __fops ## _open, \ .open = __fops ## _open, \
.release = spufs_attr_release, \ .release = spufs_attr_release, \

View file

@ -209,7 +209,7 @@ static ssize_t dtl_file_read(struct file *filp, char __user *buf, size_t len,
return n_read * sizeof(struct dtl_entry); return n_read * sizeof(struct dtl_entry);
} }
static struct file_operations dtl_fops = { static const struct file_operations dtl_fops = {
.open = dtl_file_open, .open = dtl_file_open,
.release = dtl_file_release, .release = dtl_file_release,
.read = dtl_file_read, .read = dtl_file_read,

View file

@ -100,7 +100,7 @@ static int xen_array_release(struct inode *inode, struct file *file)
return 0; return 0;
} }
static struct file_operations u32_array_fops = { static const struct file_operations u32_array_fops = {
.owner = THIS_MODULE, .owner = THIS_MODULE,
.open = u32_array_open, .open = u32_array_open,
.release= xen_array_release, .release= xen_array_release,

View file

@ -285,7 +285,7 @@ static int acpi_video_device_brightness_open_fs(struct inode *inode,
struct file *file); struct file *file);
static ssize_t acpi_video_device_write_brightness(struct file *file, static ssize_t acpi_video_device_write_brightness(struct file *file,
const char __user *buffer, size_t count, loff_t *data); const char __user *buffer, size_t count, loff_t *data);
static struct file_operations acpi_video_device_brightness_fops = { static const struct file_operations acpi_video_device_brightness_fops = {
.owner = THIS_MODULE, .owner = THIS_MODULE,
.open = acpi_video_device_brightness_open_fs, .open = acpi_video_device_brightness_open_fs,
.read = seq_read, .read = seq_read,

View file

@ -426,7 +426,7 @@ out:
return err; return err;
} }
static struct file_operations cciss_proc_fops = { static const struct file_operations cciss_proc_fops = {
.owner = THIS_MODULE, .owner = THIS_MODULE,
.open = cciss_seq_open, .open = cciss_seq_open,
.read = seq_read, .read = seq_read,

View file

@ -393,7 +393,7 @@ static int apm_open(struct inode * inode, struct file * filp)
return as ? 0 : -ENOMEM; return as ? 0 : -ENOMEM;
} }
static struct file_operations apm_bios_fops = { static const struct file_operations apm_bios_fops = {
.owner = THIS_MODULE, .owner = THIS_MODULE,
.read = apm_read, .read = apm_read,
.poll = apm_poll, .poll = apm_poll,

View file

@ -217,7 +217,7 @@ static long bfin_otp_ioctl(struct file *filp, unsigned cmd, unsigned long arg)
# define bfin_otp_ioctl NULL # define bfin_otp_ioctl NULL
#endif #endif
static struct file_operations bfin_otp_fops = { static const struct file_operations bfin_otp_fops = {
.owner = THIS_MODULE, .owner = THIS_MODULE,
.unlocked_ioctl = bfin_otp_ioctl, .unlocked_ioctl = bfin_otp_ioctl,
.read = bfin_otp_read, .read = bfin_otp_read,

View file

@ -559,7 +559,7 @@ static int hwicap_release(struct inode *inode, struct file *file)
return status; return status;
} }
static struct file_operations hwicap_fops = { static const struct file_operations hwicap_fops = {
.owner = THIS_MODULE, .owner = THIS_MODULE,
.write = hwicap_write, .write = hwicap_write,
.read = hwicap_read, .read = hwicap_read,

View file

@ -1487,7 +1487,7 @@ static int gpiolib_open(struct inode *inode, struct file *file)
return single_open(file, gpiolib_show, NULL); return single_open(file, gpiolib_show, NULL);
} }
static struct file_operations gpiolib_operations = { static const struct file_operations gpiolib_operations = {
.open = gpiolib_open, .open = gpiolib_open,
.read = seq_read, .read = seq_read,
.llseek = seq_lseek, .llseek = seq_lseek,

View file

@ -915,7 +915,7 @@ static int watchdog_ioctl(struct inode *inode, struct file *filp,
return ret; return ret;
} }
static struct file_operations watchdog_fops = { static const struct file_operations watchdog_fops = {
.owner = THIS_MODULE, .owner = THIS_MODULE,
.llseek = no_llseek, .llseek = no_llseek,
.open = watchdog_open, .open = watchdog_open,

View file

@ -508,7 +508,7 @@ static int close(struct inode *inode, struct file *file)
* uses: reading and writing a character device called /dev/lguest. All the * uses: reading and writing a character device called /dev/lguest. All the
* work happens in the read(), write() and close() routines: * work happens in the read(), write() and close() routines:
*/ */
static struct file_operations lguest_fops = { static const struct file_operations lguest_fops = {
.owner = THIS_MODULE, .owner = THIS_MODULE,
.release = close, .release = close,
.write = write, .write = write,

View file

@ -1203,7 +1203,7 @@ static unsigned int dvb_dvr_poll(struct file *file, poll_table *wait)
return mask; return mask;
} }
static struct file_operations dvb_dvr_fops = { static const struct file_operations dvb_dvr_fops = {
.owner = THIS_MODULE, .owner = THIS_MODULE,
.read = dvb_dvr_read, .read = dvb_dvr_read,
.write = dvb_dvr_write, .write = dvb_dvr_write,

View file

@ -215,7 +215,7 @@ static unsigned int fdtv_ca_io_poll(struct file *file, poll_table *wait)
return POLLIN; return POLLIN;
} }
static struct file_operations fdtv_ca_fops = { static const struct file_operations fdtv_ca_fops = {
.owner = THIS_MODULE, .owner = THIS_MODULE,
.ioctl = dvb_generic_ioctl, .ioctl = dvb_generic_ioctl,
.open = dvb_generic_open, .open = dvb_generic_open,

View file

@ -271,7 +271,7 @@ static unsigned int phantom_poll(struct file *file, poll_table *wait)
return mask; return mask;
} }
static struct file_operations phantom_file_ops = { static const struct file_operations phantom_file_ops = {
.open = phantom_open, .open = phantom_open,
.release = phantom_release, .release = phantom_release,
.unlocked_ioctl = phantom_ioctl, .unlocked_ioctl = phantom_ioctl,

View file

@ -53,7 +53,6 @@ struct gru_stats_s gru_stats;
/* Guaranteed user available resources on each node */ /* Guaranteed user available resources on each node */
static int max_user_cbrs, max_user_dsr_bytes; static int max_user_cbrs, max_user_dsr_bytes;
static struct file_operations gru_fops;
static struct miscdevice gru_miscdev; static struct miscdevice gru_miscdev;
@ -426,7 +425,7 @@ static void __exit gru_exit(void)
gru_proc_exit(); gru_proc_exit();
} }
static struct file_operations gru_fops = { static const struct file_operations gru_fops = {
.owner = THIS_MODULE, .owner = THIS_MODULE,
.unlocked_ioctl = gru_file_unlocked_ioctl, .unlocked_ioctl = gru_file_unlocked_ioctl,
.mmap = gru_file_mmap, .mmap = gru_file_mmap,

View file

@ -240,7 +240,7 @@ static int mmc_ext_csd_release(struct inode *inode, struct file *file)
return 0; return 0;
} }
static struct file_operations mmc_dbg_ext_csd_fops = { static const struct file_operations mmc_dbg_ext_csd_fops = {
.open = mmc_ext_csd_open, .open = mmc_ext_csd_open,
.read = mmc_ext_csd_read, .read = mmc_ext_csd_read,
.release = mmc_ext_csd_release, .release = mmc_ext_csd_release,

View file

@ -125,7 +125,7 @@ static int qstat_seq_open(struct inode *inode, struct file *filp)
filp->f_path.dentry->d_inode->i_private); filp->f_path.dentry->d_inode->i_private);
} }
static struct file_operations debugfs_fops = { static const struct file_operations debugfs_fops = {
.owner = THIS_MODULE, .owner = THIS_MODULE,
.open = qstat_seq_open, .open = qstat_seq_open,
.read = seq_read, .read = seq_read,

View file

@ -84,7 +84,7 @@ static int qdio_perf_seq_open(struct inode *inode, struct file *filp)
return single_open(filp, qdio_perf_proc_show, NULL); return single_open(filp, qdio_perf_proc_show, NULL);
} }
static struct file_operations qdio_perf_proc_fops = { static const struct file_operations qdio_perf_proc_fops = {
.owner = THIS_MODULE, .owner = THIS_MODULE,
.open = qdio_perf_seq_open, .open = qdio_perf_seq_open,
.read = seq_read, .read = seq_read,

View file

@ -1317,7 +1317,7 @@ static void sg_rq_end_io(struct request *rq, int uptodate)
} }
} }
static struct file_operations sg_fops = { static const struct file_operations sg_fops = {
.owner = THIS_MODULE, .owner = THIS_MODULE,
.read = sg_read, .read = sg_read,
.write = sg_write, .write = sg_write,
@ -2194,9 +2194,11 @@ static int sg_proc_seq_show_int(struct seq_file *s, void *v);
static int sg_proc_single_open_adio(struct inode *inode, struct file *file); static int sg_proc_single_open_adio(struct inode *inode, struct file *file);
static ssize_t sg_proc_write_adio(struct file *filp, const char __user *buffer, static ssize_t sg_proc_write_adio(struct file *filp, const char __user *buffer,
size_t count, loff_t *off); size_t count, loff_t *off);
static struct file_operations adio_fops = { static const struct file_operations adio_fops = {
/* .owner, .read and .llseek added in sg_proc_init() */ .owner = THIS_MODULE,
.open = sg_proc_single_open_adio, .open = sg_proc_single_open_adio,
.read = seq_read,
.llseek = seq_lseek,
.write = sg_proc_write_adio, .write = sg_proc_write_adio,
.release = single_release, .release = single_release,
}; };
@ -2204,23 +2206,32 @@ static struct file_operations adio_fops = {
static int sg_proc_single_open_dressz(struct inode *inode, struct file *file); static int sg_proc_single_open_dressz(struct inode *inode, struct file *file);
static ssize_t sg_proc_write_dressz(struct file *filp, static ssize_t sg_proc_write_dressz(struct file *filp,
const char __user *buffer, size_t count, loff_t *off); const char __user *buffer, size_t count, loff_t *off);
static struct file_operations dressz_fops = { static const struct file_operations dressz_fops = {
.owner = THIS_MODULE,
.open = sg_proc_single_open_dressz, .open = sg_proc_single_open_dressz,
.read = seq_read,
.llseek = seq_lseek,
.write = sg_proc_write_dressz, .write = sg_proc_write_dressz,
.release = single_release, .release = single_release,
}; };
static int sg_proc_seq_show_version(struct seq_file *s, void *v); static int sg_proc_seq_show_version(struct seq_file *s, void *v);
static int sg_proc_single_open_version(struct inode *inode, struct file *file); static int sg_proc_single_open_version(struct inode *inode, struct file *file);
static struct file_operations version_fops = { static const struct file_operations version_fops = {
.owner = THIS_MODULE,
.open = sg_proc_single_open_version, .open = sg_proc_single_open_version,
.read = seq_read,
.llseek = seq_lseek,
.release = single_release, .release = single_release,
}; };
static int sg_proc_seq_show_devhdr(struct seq_file *s, void *v); static int sg_proc_seq_show_devhdr(struct seq_file *s, void *v);
static int sg_proc_single_open_devhdr(struct inode *inode, struct file *file); static int sg_proc_single_open_devhdr(struct inode *inode, struct file *file);
static struct file_operations devhdr_fops = { static const struct file_operations devhdr_fops = {
.owner = THIS_MODULE,
.open = sg_proc_single_open_devhdr, .open = sg_proc_single_open_devhdr,
.read = seq_read,
.llseek = seq_lseek,
.release = single_release, .release = single_release,
}; };
@ -2229,8 +2240,11 @@ static int sg_proc_open_dev(struct inode *inode, struct file *file);
static void * dev_seq_start(struct seq_file *s, loff_t *pos); static void * dev_seq_start(struct seq_file *s, loff_t *pos);
static void * dev_seq_next(struct seq_file *s, void *v, loff_t *pos); static void * dev_seq_next(struct seq_file *s, void *v, loff_t *pos);
static void dev_seq_stop(struct seq_file *s, void *v); static void dev_seq_stop(struct seq_file *s, void *v);
static struct file_operations dev_fops = { static const struct file_operations dev_fops = {
.owner = THIS_MODULE,
.open = sg_proc_open_dev, .open = sg_proc_open_dev,
.read = seq_read,
.llseek = seq_lseek,
.release = seq_release, .release = seq_release,
}; };
static const struct seq_operations dev_seq_ops = { static const struct seq_operations dev_seq_ops = {
@ -2242,8 +2256,11 @@ static const struct seq_operations dev_seq_ops = {
static int sg_proc_seq_show_devstrs(struct seq_file *s, void *v); static int sg_proc_seq_show_devstrs(struct seq_file *s, void *v);
static int sg_proc_open_devstrs(struct inode *inode, struct file *file); static int sg_proc_open_devstrs(struct inode *inode, struct file *file);
static struct file_operations devstrs_fops = { static const struct file_operations devstrs_fops = {
.owner = THIS_MODULE,
.open = sg_proc_open_devstrs, .open = sg_proc_open_devstrs,
.read = seq_read,
.llseek = seq_lseek,
.release = seq_release, .release = seq_release,
}; };
static const struct seq_operations devstrs_seq_ops = { static const struct seq_operations devstrs_seq_ops = {
@ -2255,8 +2272,11 @@ static const struct seq_operations devstrs_seq_ops = {
static int sg_proc_seq_show_debug(struct seq_file *s, void *v); static int sg_proc_seq_show_debug(struct seq_file *s, void *v);
static int sg_proc_open_debug(struct inode *inode, struct file *file); static int sg_proc_open_debug(struct inode *inode, struct file *file);
static struct file_operations debug_fops = { static const struct file_operations debug_fops = {
.owner = THIS_MODULE,
.open = sg_proc_open_debug, .open = sg_proc_open_debug,
.read = seq_read,
.llseek = seq_lseek,
.release = seq_release, .release = seq_release,
}; };
static const struct seq_operations debug_seq_ops = { static const struct seq_operations debug_seq_ops = {
@ -2269,7 +2289,7 @@ static const struct seq_operations debug_seq_ops = {
struct sg_proc_leaf { struct sg_proc_leaf {
const char * name; const char * name;
struct file_operations * fops; const struct file_operations * fops;
}; };
static struct sg_proc_leaf sg_proc_leaf_arr[] = { static struct sg_proc_leaf sg_proc_leaf_arr[] = {
@ -2295,9 +2315,6 @@ sg_proc_init(void)
for (k = 0; k < num_leaves; ++k) { for (k = 0; k < num_leaves; ++k) {
leaf = &sg_proc_leaf_arr[k]; leaf = &sg_proc_leaf_arr[k];
mask = leaf->fops->write ? S_IRUGO | S_IWUSR : S_IRUGO; mask = leaf->fops->write ? S_IRUGO | S_IWUSR : S_IRUGO;
leaf->fops->owner = THIS_MODULE;
leaf->fops->read = seq_read;
leaf->fops->llseek = seq_lseek;
proc_create(leaf->name, mask, sg_proc_sgp, leaf->fops); proc_create(leaf->name, mask, sg_proc_sgp, leaf->fops);
} }
return 0; return 0;

View file

@ -537,7 +537,7 @@ static int spidev_release(struct inode *inode, struct file *filp)
return status; return status;
} }
static struct file_operations spidev_fops = { static const struct file_operations spidev_fops = {
.owner = THIS_MODULE, .owner = THIS_MODULE,
/* REVISIT switch to aio primitives, so that userspace /* REVISIT switch to aio primitives, so that userspace
* gets more complete API coverage. It'll simplify things * gets more complete API coverage. It'll simplify things

View file

@ -993,7 +993,7 @@ skip_io_on_zombie:
return retval; return retval;
} }
static struct file_operations fops = { static const struct file_operations fops = {
.owner = THIS_MODULE, .owner = THIS_MODULE,
.read = usbtmc_read, .read = usbtmc_read,
.write = usbtmc_write, .write = usbtmc_write,

View file

@ -875,7 +875,7 @@ printer_ioctl(struct file *fd, unsigned int code, unsigned long arg)
} }
/* used after endpoint configuration */ /* used after endpoint configuration */
static struct file_operations printer_io_operations = { static const struct file_operations printer_io_operations = {
.owner = THIS_MODULE, .owner = THIS_MODULE,
.open = printer_open, .open = printer_open,
.read = printer_read, .read = printer_read,

View file

@ -134,7 +134,7 @@ static int pzl_open(struct inode *inode, struct file *file)
return single_open(file, pzl_print, inode->i_private); return single_open(file, pzl_print, inode->i_private);
} }
static struct file_operations di_fops = { static const struct file_operations di_fops = {
.open = di_open, .open = di_open,
.read = seq_read, .read = seq_read,
.llseek = seq_lseek, .llseek = seq_lseek,
@ -142,7 +142,7 @@ static struct file_operations di_fops = {
.owner = THIS_MODULE, .owner = THIS_MODULE,
}; };
static struct file_operations asl_fops = { static const struct file_operations asl_fops = {
.open = asl_open, .open = asl_open,
.read = seq_read, .read = seq_read,
.llseek = seq_lseek, .llseek = seq_lseek,
@ -150,7 +150,7 @@ static struct file_operations asl_fops = {
.owner = THIS_MODULE, .owner = THIS_MODULE,
}; };
static struct file_operations pzl_fops = { static const struct file_operations pzl_fops = {
.open = pzl_open, .open = pzl_open,
.read = seq_read, .read = seq_read,
.llseek = seq_lseek, .llseek = seq_lseek,

View file

@ -429,8 +429,7 @@ read_rio(struct file *file, char __user *buffer, size_t count, loff_t * ppos)
return read_count; return read_count;
} }
static struct static const struct file_operations usb_rio_fops = {
file_operations usb_rio_fops = {
.owner = THIS_MODULE, .owner = THIS_MODULE,
.read = read_rio, .read = read_rio,
.write = write_rio, .write = write_rio,

View file

@ -205,7 +205,7 @@ static ssize_t command_write(struct file *file, const char __user *buf,
return ret < 0 ? ret : len; return ret < 0 ? ret : len;
} }
static struct file_operations command_fops = { static const struct file_operations command_fops = {
.open = command_open, .open = command_open,
.write = command_write, .write = command_write,
.read = NULL, .read = NULL,
@ -255,7 +255,7 @@ static int reservations_open(struct inode *inode, struct file *file)
return single_open(file, reservations_print, inode->i_private); return single_open(file, reservations_print, inode->i_private);
} }
static struct file_operations reservations_fops = { static const struct file_operations reservations_fops = {
.open = reservations_open, .open = reservations_open,
.read = seq_read, .read = seq_read,
.llseek = seq_lseek, .llseek = seq_lseek,
@ -283,7 +283,7 @@ static int drp_avail_open(struct inode *inode, struct file *file)
return single_open(file, drp_avail_print, inode->i_private); return single_open(file, drp_avail_print, inode->i_private);
} }
static struct file_operations drp_avail_fops = { static const struct file_operations drp_avail_fops = {
.open = drp_avail_open, .open = drp_avail_open,
.read = seq_read, .read = seq_read,
.llseek = seq_lseek, .llseek = seq_lseek,

View file

@ -2326,7 +2326,7 @@ int btrfs_sync_file(struct file *file, struct dentry *dentry, int datasync);
int btrfs_drop_extent_cache(struct inode *inode, u64 start, u64 end, int btrfs_drop_extent_cache(struct inode *inode, u64 start, u64 end,
int skip_pinned); int skip_pinned);
int btrfs_check_file(struct btrfs_root *root, struct inode *inode); int btrfs_check_file(struct btrfs_root *root, struct inode *inode);
extern struct file_operations btrfs_file_operations; extern const struct file_operations btrfs_file_operations;
int btrfs_drop_extents(struct btrfs_trans_handle *trans, int btrfs_drop_extents(struct btrfs_trans_handle *trans,
struct btrfs_root *root, struct inode *inode, struct btrfs_root *root, struct inode *inode,
u64 start, u64 end, u64 locked_end, u64 start, u64 end, u64 locked_end,

View file

@ -1196,7 +1196,7 @@ static int btrfs_file_mmap(struct file *filp, struct vm_area_struct *vma)
return 0; return 0;
} }
struct file_operations btrfs_file_operations = { const struct file_operations btrfs_file_operations = {
.llseek = generic_file_llseek, .llseek = generic_file_llseek,
.read = do_sync_read, .read = do_sync_read,
.aio_read = generic_file_aio_read, .aio_read = generic_file_aio_read,

View file

@ -62,7 +62,7 @@ static const struct inode_operations btrfs_special_inode_operations;
static const struct inode_operations btrfs_file_inode_operations; static const struct inode_operations btrfs_file_inode_operations;
static const struct address_space_operations btrfs_aops; static const struct address_space_operations btrfs_aops;
static const struct address_space_operations btrfs_symlink_aops; static const struct address_space_operations btrfs_symlink_aops;
static struct file_operations btrfs_dir_file_operations; static const struct file_operations btrfs_dir_file_operations;
static struct extent_io_ops btrfs_extent_io_ops; static struct extent_io_ops btrfs_extent_io_ops;
static struct kmem_cache *btrfs_inode_cachep; static struct kmem_cache *btrfs_inode_cachep;
@ -5544,7 +5544,7 @@ static const struct inode_operations btrfs_dir_ro_inode_operations = {
.permission = btrfs_permission, .permission = btrfs_permission,
}; };
static struct file_operations btrfs_dir_file_operations = { static const struct file_operations btrfs_dir_file_operations = {
.llseek = generic_file_llseek, .llseek = generic_file_llseek,
.read = generic_read_dir, .read = generic_read_dir,
.readdir = btrfs_real_readdir, .readdir = btrfs_real_readdir,

View file

@ -770,7 +770,7 @@ static int jbd2_seq_info_release(struct inode *inode, struct file *file)
return seq_release(inode, file); return seq_release(inode, file);
} }
static struct file_operations jbd2_seq_info_fops = { static const struct file_operations jbd2_seq_info_fops = {
.owner = THIS_MODULE, .owner = THIS_MODULE,
.open = jbd2_seq_info_open, .open = jbd2_seq_info_open,
.read = seq_read, .read = seq_read,

View file

@ -176,7 +176,7 @@ static const struct file_operations exports_operations = {
extern int nfsd_pool_stats_open(struct inode *inode, struct file *file); extern int nfsd_pool_stats_open(struct inode *inode, struct file *file);
extern int nfsd_pool_stats_release(struct inode *inode, struct file *file); extern int nfsd_pool_stats_release(struct inode *inode, struct file *file);
static struct file_operations pool_stats_operations = { static const struct file_operations pool_stats_operations = {
.open = nfsd_pool_stats_open, .open = nfsd_pool_stats_open,
.read = seq_read, .read = seq_read,
.llseek = seq_lseek, .llseek = seq_lseek,

View file

@ -697,7 +697,7 @@ not_empty:
return 0; return 0;
} }
struct file_operations nilfs_dir_operations = { const struct file_operations nilfs_dir_operations = {
.llseek = generic_file_llseek, .llseek = generic_file_llseek,
.read = generic_read_dir, .read = generic_read_dir,
.readdir = nilfs_readdir, .readdir = nilfs_readdir,

View file

@ -134,7 +134,7 @@ static int nilfs_file_mmap(struct file *file, struct vm_area_struct *vma)
* We have mostly NULL's here: the current defaults are ok for * We have mostly NULL's here: the current defaults are ok for
* the nilfs filesystem. * the nilfs filesystem.
*/ */
struct file_operations nilfs_file_operations = { const struct file_operations nilfs_file_operations = {
.llseek = generic_file_llseek, .llseek = generic_file_llseek,
.read = do_sync_read, .read = do_sync_read,
.write = do_sync_write, .write = do_sync_write,

View file

@ -433,7 +433,7 @@ static const struct address_space_operations def_mdt_aops = {
}; };
static const struct inode_operations def_mdt_iops; static const struct inode_operations def_mdt_iops;
static struct file_operations def_mdt_fops; static const struct file_operations def_mdt_fops;
/* /*
* NILFS2 uses pseudo inodes for meta data files such as DAT, cpfile, sufile, * NILFS2 uses pseudo inodes for meta data files such as DAT, cpfile, sufile,

View file

@ -294,9 +294,9 @@ void nilfs_clear_gcdat_inode(struct the_nilfs *);
/* /*
* Inodes and files operations * Inodes and files operations
*/ */
extern struct file_operations nilfs_dir_operations; extern const struct file_operations nilfs_dir_operations;
extern const struct inode_operations nilfs_file_inode_operations; extern const struct inode_operations nilfs_file_inode_operations;
extern struct file_operations nilfs_file_operations; extern const struct file_operations nilfs_file_operations;
extern const struct address_space_operations nilfs_aops; extern const struct address_space_operations nilfs_aops;
extern const struct inode_operations nilfs_dir_inode_operations; extern const struct inode_operations nilfs_dir_inode_operations;
extern const struct inode_operations nilfs_special_inode_operations; extern const struct inode_operations nilfs_special_inode_operations;

View file

@ -966,7 +966,7 @@ static ssize_t o2hb_debug_read(struct file *file, char __user *buf,
} }
#endif /* CONFIG_DEBUG_FS */ #endif /* CONFIG_DEBUG_FS */
static struct file_operations o2hb_debug_fops = { static const struct file_operations o2hb_debug_fops = {
.open = o2hb_debug_open, .open = o2hb_debug_open,
.release = o2hb_debug_release, .release = o2hb_debug_release,
.read = o2hb_debug_read, .read = o2hb_debug_read,

View file

@ -207,7 +207,7 @@ static int nst_fop_release(struct inode *inode, struct file *file)
return seq_release_private(inode, file); return seq_release_private(inode, file);
} }
static struct file_operations nst_seq_fops = { static const struct file_operations nst_seq_fops = {
.open = nst_fop_open, .open = nst_fop_open,
.read = seq_read, .read = seq_read,
.llseek = seq_lseek, .llseek = seq_lseek,
@ -388,7 +388,7 @@ static int sc_fop_release(struct inode *inode, struct file *file)
return seq_release_private(inode, file); return seq_release_private(inode, file);
} }
static struct file_operations sc_seq_fops = { static const struct file_operations sc_seq_fops = {
.open = sc_fop_open, .open = sc_fop_open,
.read = seq_read, .read = seq_read,
.llseek = seq_lseek, .llseek = seq_lseek,

View file

@ -478,7 +478,7 @@ bail:
return -ENOMEM; return -ENOMEM;
} }
static struct file_operations debug_purgelist_fops = { static const struct file_operations debug_purgelist_fops = {
.open = debug_purgelist_open, .open = debug_purgelist_open,
.release = debug_buffer_release, .release = debug_buffer_release,
.read = debug_buffer_read, .read = debug_buffer_read,
@ -538,7 +538,7 @@ bail:
return -ENOMEM; return -ENOMEM;
} }
static struct file_operations debug_mle_fops = { static const struct file_operations debug_mle_fops = {
.open = debug_mle_open, .open = debug_mle_open,
.release = debug_buffer_release, .release = debug_buffer_release,
.read = debug_buffer_read, .read = debug_buffer_read,
@ -741,7 +741,7 @@ static int debug_lockres_release(struct inode *inode, struct file *file)
return seq_release_private(inode, file); return seq_release_private(inode, file);
} }
static struct file_operations debug_lockres_fops = { static const struct file_operations debug_lockres_fops = {
.open = debug_lockres_open, .open = debug_lockres_open,
.release = debug_lockres_release, .release = debug_lockres_release,
.read = seq_read, .read = seq_read,
@ -925,7 +925,7 @@ bail:
return -ENOMEM; return -ENOMEM;
} }
static struct file_operations debug_state_fops = { static const struct file_operations debug_state_fops = {
.open = debug_state_open, .open = debug_state_open,
.release = debug_buffer_release, .release = debug_buffer_release,
.read = debug_buffer_read, .read = debug_buffer_read,

View file

@ -373,7 +373,7 @@ static ssize_t ocfs2_debug_read(struct file *file, char __user *buf,
} }
#endif /* CONFIG_DEBUG_FS */ #endif /* CONFIG_DEBUG_FS */
static struct file_operations ocfs2_osb_debug_fops = { static const struct file_operations ocfs2_osb_debug_fops = {
.open = ocfs2_osb_debug_open, .open = ocfs2_osb_debug_open,
.release = ocfs2_debug_release, .release = ocfs2_debug_release,
.read = ocfs2_debug_read, .read = ocfs2_debug_read,

View file

@ -498,7 +498,7 @@ const struct inode_operations omfs_dir_inops = {
.rmdir = omfs_rmdir, .rmdir = omfs_rmdir,
}; };
struct file_operations omfs_dir_operations = { const struct file_operations omfs_dir_operations = {
.read = generic_read_dir, .read = generic_read_dir,
.readdir = omfs_readdir, .readdir = omfs_readdir,
.llseek = generic_file_llseek, .llseek = generic_file_llseek,

View file

@ -322,7 +322,7 @@ static sector_t omfs_bmap(struct address_space *mapping, sector_t block)
return generic_block_bmap(mapping, block, omfs_get_block); return generic_block_bmap(mapping, block, omfs_get_block);
} }
struct file_operations omfs_file_operations = { const struct file_operations omfs_file_operations = {
.llseek = generic_file_llseek, .llseek = generic_file_llseek,
.read = do_sync_read, .read = do_sync_read,
.write = do_sync_write, .write = do_sync_write,

View file

@ -44,14 +44,14 @@ extern int omfs_allocate_range(struct super_block *sb, int min_request,
extern int omfs_clear_range(struct super_block *sb, u64 block, int count); extern int omfs_clear_range(struct super_block *sb, u64 block, int count);
/* dir.c */ /* dir.c */
extern struct file_operations omfs_dir_operations; extern const struct file_operations omfs_dir_operations;
extern const struct inode_operations omfs_dir_inops; extern const struct inode_operations omfs_dir_inops;
extern int omfs_make_empty(struct inode *inode, struct super_block *sb); extern int omfs_make_empty(struct inode *inode, struct super_block *sb);
extern int omfs_is_bad(struct omfs_sb_info *sbi, struct omfs_header *header, extern int omfs_is_bad(struct omfs_sb_info *sbi, struct omfs_header *header,
u64 fsblock); u64 fsblock);
/* file.c */ /* file.c */
extern struct file_operations omfs_file_operations; extern const struct file_operations omfs_file_operations;
extern const struct inode_operations omfs_file_inops; extern const struct inode_operations omfs_file_inops;
extern const struct address_space_operations omfs_aops; extern const struct address_space_operations omfs_aops;
extern void omfs_make_empty_table(struct buffer_head *bh, int offset); extern void omfs_make_empty_table(struct buffer_head *bh, int offset);

View file

@ -37,7 +37,7 @@ extern void cgroup_exit(struct task_struct *p, int run_callbacks);
extern int cgroupstats_build(struct cgroupstats *stats, extern int cgroupstats_build(struct cgroupstats *stats,
struct dentry *dentry); struct dentry *dentry);
extern struct file_operations proc_cgroup_operations; extern const struct file_operations proc_cgroup_operations;
/* Define the enumeration of all cgroup subsystems */ /* Define the enumeration of all cgroup subsystems */
#define SUBSYS(_x) _x ## _subsys_id, #define SUBSYS(_x) _x ## _subsys_id,

View file

@ -2446,7 +2446,7 @@ static int __fops ## _open(struct inode *inode, struct file *file) \
__simple_attr_check_format(__fmt, 0ull); \ __simple_attr_check_format(__fmt, 0ull); \
return simple_attr_open(inode, file, __get, __set, __fmt); \ return simple_attr_open(inode, file, __get, __set, __fmt); \
} \ } \
static struct file_operations __fops = { \ static const struct file_operations __fops = { \
.owner = THIS_MODULE, \ .owner = THIS_MODULE, \
.open = __fops ## _open, \ .open = __fops ## _open, \
.release = simple_attr_release, \ .release = simple_attr_release, \

View file

@ -703,7 +703,7 @@ static int cgroup_mkdir(struct inode *dir, struct dentry *dentry, int mode);
static int cgroup_rmdir(struct inode *unused_dir, struct dentry *dentry); static int cgroup_rmdir(struct inode *unused_dir, struct dentry *dentry);
static int cgroup_populate_dir(struct cgroup *cgrp); static int cgroup_populate_dir(struct cgroup *cgrp);
static const struct inode_operations cgroup_dir_inode_operations; static const struct inode_operations cgroup_dir_inode_operations;
static struct file_operations proc_cgroupstats_operations; static const struct file_operations proc_cgroupstats_operations;
static struct backing_dev_info cgroup_backing_dev_info = { static struct backing_dev_info cgroup_backing_dev_info = {
.name = "cgroup", .name = "cgroup",
@ -1863,7 +1863,7 @@ static int cgroup_seqfile_release(struct inode *inode, struct file *file)
return single_release(inode, file); return single_release(inode, file);
} }
static struct file_operations cgroup_seqfile_operations = { static const struct file_operations cgroup_seqfile_operations = {
.read = seq_read, .read = seq_read,
.write = cgroup_file_write, .write = cgroup_file_write,
.llseek = seq_lseek, .llseek = seq_lseek,
@ -1922,7 +1922,7 @@ static int cgroup_rename(struct inode *old_dir, struct dentry *old_dentry,
return simple_rename(old_dir, old_dentry, new_dir, new_dentry); return simple_rename(old_dir, old_dentry, new_dir, new_dentry);
} }
static struct file_operations cgroup_file_operations = { static const struct file_operations cgroup_file_operations = {
.read = cgroup_file_read, .read = cgroup_file_read,
.write = cgroup_file_write, .write = cgroup_file_write,
.llseek = generic_file_llseek, .llseek = generic_file_llseek,
@ -3369,7 +3369,7 @@ static int cgroup_open(struct inode *inode, struct file *file)
return single_open(file, proc_cgroup_show, pid); return single_open(file, proc_cgroup_show, pid);
} }
struct file_operations proc_cgroup_operations = { const struct file_operations proc_cgroup_operations = {
.open = cgroup_open, .open = cgroup_open,
.read = seq_read, .read = seq_read,
.llseek = seq_lseek, .llseek = seq_lseek,
@ -3398,7 +3398,7 @@ static int cgroupstats_open(struct inode *inode, struct file *file)
return single_open(file, proc_cgroupstats_show, NULL); return single_open(file, proc_cgroupstats_show, NULL);
} }
static struct file_operations proc_cgroupstats_operations = { static const struct file_operations proc_cgroupstats_operations = {
.open = cgroupstats_open, .open = cgroupstats_open,
.read = seq_read, .read = seq_read,
.llseek = seq_lseek, .llseek = seq_lseek,

View file

@ -1333,7 +1333,7 @@ static int __kprobes kprobes_open(struct inode *inode, struct file *filp)
return seq_open(filp, &kprobes_seq_ops); return seq_open(filp, &kprobes_seq_ops);
} }
static struct file_operations debugfs_kprobes_operations = { static const struct file_operations debugfs_kprobes_operations = {
.open = kprobes_open, .open = kprobes_open,
.read = seq_read, .read = seq_read,
.llseek = seq_lseek, .llseek = seq_lseek,
@ -1515,7 +1515,7 @@ static ssize_t write_enabled_file_bool(struct file *file,
return count; return count;
} }
static struct file_operations fops_kp = { static const struct file_operations fops_kp = {
.read = read_enabled_file_bool, .read = read_enabled_file_bool,
.write = write_enabled_file_bool, .write = write_enabled_file_bool,
}; };

View file

@ -93,7 +93,7 @@ static int rcudata_open(struct inode *inode, struct file *file)
return single_open(file, show_rcudata, NULL); return single_open(file, show_rcudata, NULL);
} }
static struct file_operations rcudata_fops = { static const struct file_operations rcudata_fops = {
.owner = THIS_MODULE, .owner = THIS_MODULE,
.open = rcudata_open, .open = rcudata_open,
.read = seq_read, .read = seq_read,
@ -145,7 +145,7 @@ static int rcudata_csv_open(struct inode *inode, struct file *file)
return single_open(file, show_rcudata_csv, NULL); return single_open(file, show_rcudata_csv, NULL);
} }
static struct file_operations rcudata_csv_fops = { static const struct file_operations rcudata_csv_fops = {
.owner = THIS_MODULE, .owner = THIS_MODULE,
.open = rcudata_csv_open, .open = rcudata_csv_open,
.read = seq_read, .read = seq_read,
@ -196,7 +196,7 @@ static int rcuhier_open(struct inode *inode, struct file *file)
return single_open(file, show_rcuhier, NULL); return single_open(file, show_rcuhier, NULL);
} }
static struct file_operations rcuhier_fops = { static const struct file_operations rcuhier_fops = {
.owner = THIS_MODULE, .owner = THIS_MODULE,
.open = rcuhier_open, .open = rcuhier_open,
.read = seq_read, .read = seq_read,
@ -222,7 +222,7 @@ static int rcugp_open(struct inode *inode, struct file *file)
return single_open(file, show_rcugp, NULL); return single_open(file, show_rcugp, NULL);
} }
static struct file_operations rcugp_fops = { static const struct file_operations rcugp_fops = {
.owner = THIS_MODULE, .owner = THIS_MODULE,
.open = rcugp_open, .open = rcugp_open,
.read = seq_read, .read = seq_read,
@ -276,7 +276,7 @@ static int rcu_pending_open(struct inode *inode, struct file *file)
return single_open(file, show_rcu_pending, NULL); return single_open(file, show_rcu_pending, NULL);
} }
static struct file_operations rcu_pending_fops = { static const struct file_operations rcu_pending_fops = {
.owner = THIS_MODULE, .owner = THIS_MODULE,
.open = rcu_pending_open, .open = rcu_pending_open,
.read = seq_read, .read = seq_read,

View file

@ -780,7 +780,7 @@ static int sched_feat_open(struct inode *inode, struct file *filp)
return single_open(filp, sched_feat_show, NULL); return single_open(filp, sched_feat_show, NULL);
} }
static struct file_operations sched_feat_fops = { static const struct file_operations sched_feat_fops = {
.open = sched_feat_open, .open = sched_feat_open,
.write = sched_feat_write, .write = sched_feat_write,
.read = seq_read, .read = seq_read,

View file

@ -275,7 +275,7 @@ static int timer_list_open(struct inode *inode, struct file *filp)
return single_open(filp, timer_list_show, NULL); return single_open(filp, timer_list_show, NULL);
} }
static struct file_operations timer_list_fops = { static const struct file_operations timer_list_fops = {
.open = timer_list_open, .open = timer_list_open,
.read = seq_read, .read = seq_read,
.llseek = seq_lseek, .llseek = seq_lseek,

View file

@ -395,7 +395,7 @@ static int tstats_open(struct inode *inode, struct file *filp)
return single_open(filp, tstats_show, NULL); return single_open(filp, tstats_show, NULL);
} }
static struct file_operations tstats_fops = { static const struct file_operations tstats_fops = {
.open = tstats_open, .open = tstats_open,
.read = seq_read, .read = seq_read,
.write = tstats_write, .write = tstats_write,

View file

@ -28,7 +28,7 @@ static int my_open(struct inode *inode, struct file *file)
return -EPERM; return -EPERM;
} }
static struct file_operations mark_ops = { static const struct file_operations mark_ops = {
.open = my_open, .open = my_open,
}; };

View file

@ -43,7 +43,7 @@ static ssize_t ima_show_htable_violations(struct file *filp,
return ima_show_htable_value(buf, count, ppos, &ima_htable.violations); return ima_show_htable_value(buf, count, ppos, &ima_htable.violations);
} }
static struct file_operations ima_htable_violations_ops = { static const struct file_operations ima_htable_violations_ops = {
.read = ima_show_htable_violations .read = ima_show_htable_violations
}; };
@ -55,7 +55,7 @@ static ssize_t ima_show_measurements_count(struct file *filp,
} }
static struct file_operations ima_measurements_count_ops = { static const struct file_operations ima_measurements_count_ops = {
.read = ima_show_measurements_count .read = ima_show_measurements_count
}; };
@ -158,7 +158,7 @@ static int ima_measurements_open(struct inode *inode, struct file *file)
return seq_open(file, &ima_measurments_seqops); return seq_open(file, &ima_measurments_seqops);
} }
static struct file_operations ima_measurements_ops = { static const struct file_operations ima_measurements_ops = {
.open = ima_measurements_open, .open = ima_measurements_open,
.read = seq_read, .read = seq_read,
.llseek = seq_lseek, .llseek = seq_lseek,
@ -233,7 +233,7 @@ static int ima_ascii_measurements_open(struct inode *inode, struct file *file)
return seq_open(file, &ima_ascii_measurements_seqops); return seq_open(file, &ima_ascii_measurements_seqops);
} }
static struct file_operations ima_ascii_measurements_ops = { static const struct file_operations ima_ascii_measurements_ops = {
.open = ima_ascii_measurements_open, .open = ima_ascii_measurements_open,
.read = seq_read, .read = seq_read,
.llseek = seq_lseek, .llseek = seq_lseek,
@ -313,7 +313,7 @@ static int ima_release_policy(struct inode *inode, struct file *file)
return 0; return 0;
} }
static struct file_operations ima_measure_policy_ops = { static const struct file_operations ima_measure_policy_ops = {
.open = ima_open_policy, .open = ima_open_policy,
.write = ima_write_policy, .write = ima_write_policy,
.release = ima_release_policy .release = ima_release_policy

View file

@ -2625,7 +2625,7 @@ static int vcpu_stat_get(void *_offset, u64 *val)
DEFINE_SIMPLE_ATTRIBUTE(vcpu_stat_fops, vcpu_stat_get, NULL, "%llu\n"); DEFINE_SIMPLE_ATTRIBUTE(vcpu_stat_fops, vcpu_stat_get, NULL, "%llu\n");
static struct file_operations *stat_fops[] = { static const struct file_operations *stat_fops[] = {
[KVM_STAT_VCPU] = &vcpu_stat_fops, [KVM_STAT_VCPU] = &vcpu_stat_fops,
[KVM_STAT_VM] = &vm_stat_fops, [KVM_STAT_VM] = &vm_stat_fops,
}; };