shmem.c (3a9ff4fd04cc6ad199419508c8ea6eb839e0262d) shmem.c (435c0b87d661da83771c30ed775f7c37eed193fb)
1/*
2 * Resizable virtual memory filesystem for Linux.
3 *
4 * Copyright (C) 2000 Linus Torvalds.
5 * 2000 Transmeta Corp.
6 * 2000-2001 Christoph Rohland
7 * 2000-2001 SAP AG
8 * 2002 Red Hat Inc.

--- 3953 unchanged lines hidden (view full) ---

3962 shm_mnt = kern_mount(&shmem_fs_type);
3963 if (IS_ERR(shm_mnt)) {
3964 error = PTR_ERR(shm_mnt);
3965 pr_err("Could not kern_mount tmpfs\n");
3966 goto out1;
3967 }
3968
3969#ifdef CONFIG_TRANSPARENT_HUGE_PAGECACHE
1/*
2 * Resizable virtual memory filesystem for Linux.
3 *
4 * Copyright (C) 2000 Linus Torvalds.
5 * 2000 Transmeta Corp.
6 * 2000-2001 Christoph Rohland
7 * 2000-2001 SAP AG
8 * 2002 Red Hat Inc.

--- 3953 unchanged lines hidden (view full) ---

3962 shm_mnt = kern_mount(&shmem_fs_type);
3963 if (IS_ERR(shm_mnt)) {
3964 error = PTR_ERR(shm_mnt);
3965 pr_err("Could not kern_mount tmpfs\n");
3966 goto out1;
3967 }
3968
3969#ifdef CONFIG_TRANSPARENT_HUGE_PAGECACHE
3970 if (has_transparent_hugepage() && shmem_huge < SHMEM_HUGE_DENY)
3970 if (has_transparent_hugepage() && shmem_huge > SHMEM_HUGE_DENY)
3971 SHMEM_SB(shm_mnt->mnt_sb)->huge = shmem_huge;
3972 else
3973 shmem_huge = 0; /* just in case it was patched */
3974#endif
3975 return 0;
3976
3977out1:
3978 unregister_filesystem(&shmem_fs_type);

--- 44 unchanged lines hidden (view full) ---

4023 huge = shmem_parse_huge(tmp);
4024 if (huge == -EINVAL)
4025 return -EINVAL;
4026 if (!has_transparent_hugepage() &&
4027 huge != SHMEM_HUGE_NEVER && huge != SHMEM_HUGE_DENY)
4028 return -EINVAL;
4029
4030 shmem_huge = huge;
3971 SHMEM_SB(shm_mnt->mnt_sb)->huge = shmem_huge;
3972 else
3973 shmem_huge = 0; /* just in case it was patched */
3974#endif
3975 return 0;
3976
3977out1:
3978 unregister_filesystem(&shmem_fs_type);

--- 44 unchanged lines hidden (view full) ---

4023 huge = shmem_parse_huge(tmp);
4024 if (huge == -EINVAL)
4025 return -EINVAL;
4026 if (!has_transparent_hugepage() &&
4027 huge != SHMEM_HUGE_NEVER && huge != SHMEM_HUGE_DENY)
4028 return -EINVAL;
4029
4030 shmem_huge = huge;
4031 if (shmem_huge < SHMEM_HUGE_DENY)
4031 if (shmem_huge > SHMEM_HUGE_DENY)
4032 SHMEM_SB(shm_mnt->mnt_sb)->huge = shmem_huge;
4033 return count;
4034}
4035
4036struct kobj_attribute shmem_enabled_attr =
4037 __ATTR(shmem_enabled, 0644, shmem_enabled_show, shmem_enabled_store);
4038#endif /* CONFIG_TRANSPARENT_HUGE_PAGECACHE && CONFIG_SYSFS */
4039

--- 259 unchanged lines hidden ---
4032 SHMEM_SB(shm_mnt->mnt_sb)->huge = shmem_huge;
4033 return count;
4034}
4035
4036struct kobj_attribute shmem_enabled_attr =
4037 __ATTR(shmem_enabled, 0644, shmem_enabled_show, shmem_enabled_store);
4038#endif /* CONFIG_TRANSPARENT_HUGE_PAGECACHE && CONFIG_SYSFS */
4039

--- 259 unchanged lines hidden ---