Merge tag 'perf-urgent-for-mingo-20160809' of git://git.kernel.org/pub/scm/linux...
[cascardo/linux.git] / ipc / shm.c
index 1328251..dbac886 100644 (file)
--- a/ipc/shm.c
+++ b/ipc/shm.c
@@ -476,13 +476,15 @@ static const struct file_operations shm_file_operations = {
        .mmap           = shm_mmap,
        .fsync          = shm_fsync,
        .release        = shm_release,
-#ifndef CONFIG_MMU
        .get_unmapped_area      = shm_get_unmapped_area,
-#endif
        .llseek         = noop_llseek,
        .fallocate      = shm_fallocate,
 };
 
+/*
+ * shm_file_operations_huge is now identical to shm_file_operations,
+ * but we keep it distinct for the sake of is_file_shm_hugepages().
+ */
 static const struct file_operations shm_file_operations_huge = {
        .mmap           = shm_mmap,
        .fsync          = shm_fsync,
@@ -764,10 +766,10 @@ static void shm_add_rss_swap(struct shmid_kernel *shp,
        } else {
 #ifdef CONFIG_SHMEM
                struct shmem_inode_info *info = SHMEM_I(inode);
-               spin_lock(&info->lock);
+               spin_lock_irq(&info->lock);
                *rss_add += inode->i_mapping->nrpages;
                *swp_add += info->swapped;
-               spin_unlock(&info->lock);
+               spin_unlock_irq(&info->lock);
 #else
                *rss_add += inode->i_mapping->nrpages;
 #endif