mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-06-22 14:41:27 +00:00
[PATCH] drop-pagecache
Add /proc/sys/vm/drop_caches. When written to, this will cause the kernel to discard as much pagecache and/or reclaimable slab objects as it can. THis operation requires root permissions. It won't drop dirty data, so the user should run `sync' first. Caveats: a) Holds inode_lock for exorbitant amounts of time. b) Needs to be taught about NUMA nodes: propagate these all the way through so the discarding can be controlled on a per-node basis. This is a debugging feature: useful for getting consistent results between filesystem benchmarks. We could possibly put it under a config option, but it's less than 300 bytes. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
bec6b0c89b
commit
9d0243bca3
9 changed files with 107 additions and 5 deletions
|
@ -68,6 +68,7 @@ extern int min_free_kbytes;
|
|||
extern int printk_ratelimit_jiffies;
|
||||
extern int printk_ratelimit_burst;
|
||||
extern int pid_max_min, pid_max_max;
|
||||
extern int sysctl_drop_caches;
|
||||
|
||||
#if defined(CONFIG_X86_LOCAL_APIC) && defined(CONFIG_X86)
|
||||
int unknown_nmi_panic;
|
||||
|
@ -774,6 +775,15 @@ static ctl_table vm_table[] = {
|
|||
.proc_handler = &lowmem_reserve_ratio_sysctl_handler,
|
||||
.strategy = &sysctl_intvec,
|
||||
},
|
||||
{
|
||||
.ctl_name = VM_DROP_PAGECACHE,
|
||||
.procname = "drop_caches",
|
||||
.data = &sysctl_drop_caches,
|
||||
.maxlen = sizeof(int),
|
||||
.mode = 0644,
|
||||
.proc_handler = drop_caches_sysctl_handler,
|
||||
.strategy = &sysctl_intvec,
|
||||
},
|
||||
{
|
||||
.ctl_name = VM_MIN_FREE_KBYTES,
|
||||
.procname = "min_free_kbytes",
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue