[PATCH] mark struct file_operations const 8
Many struct file_operations in the kernel can be "const". Marking them const moves these to the .rodata section, which avoids false sharing with potential dirty data. In addition it'll catch accidental writes at compile time to these shared resources. Signed-off-by: Arjan van de Ven <arjan@linux.intel.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Este cometimento está contido em:

cometido por
Linus Torvalds

ascendente
9a32144e9d
cometimento
da7071d7e3
@@ -282,9 +282,9 @@ static DEFINE_SPINLOCK(cache_list_lock);
|
||||
static struct cache_detail *current_detail;
|
||||
static int current_index;
|
||||
|
||||
static struct file_operations cache_file_operations;
|
||||
static struct file_operations content_file_operations;
|
||||
static struct file_operations cache_flush_operations;
|
||||
static const struct file_operations cache_file_operations;
|
||||
static const struct file_operations content_file_operations;
|
||||
static const struct file_operations cache_flush_operations;
|
||||
|
||||
static void do_cache_clean(struct work_struct *work);
|
||||
static DECLARE_DELAYED_WORK(cache_cleaner, do_cache_clean);
|
||||
@@ -887,7 +887,7 @@ cache_release(struct inode *inode, struct file *filp)
|
||||
|
||||
|
||||
|
||||
static struct file_operations cache_file_operations = {
|
||||
static const struct file_operations cache_file_operations = {
|
||||
.owner = THIS_MODULE,
|
||||
.llseek = no_llseek,
|
||||
.read = cache_read,
|
||||
@@ -1245,7 +1245,7 @@ static int content_release(struct inode *inode, struct file *file)
|
||||
return seq_release(inode, file);
|
||||
}
|
||||
|
||||
static struct file_operations content_file_operations = {
|
||||
static const struct file_operations content_file_operations = {
|
||||
.open = content_open,
|
||||
.read = seq_read,
|
||||
.llseek = seq_lseek,
|
||||
@@ -1297,7 +1297,7 @@ static ssize_t write_flush(struct file * file, const char __user * buf,
|
||||
return count;
|
||||
}
|
||||
|
||||
static struct file_operations cache_flush_operations = {
|
||||
static const struct file_operations cache_flush_operations = {
|
||||
.open = nonseekable_open,
|
||||
.read = read_flush,
|
||||
.write = write_flush,
|
||||
|
Criar uma nova questão referindo esta
Bloquear um utilizador