mirror of
https://github.com/Fishwaldo/linux-bl808.git
synced 2025-06-17 20:25:19 +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
|
@ -1036,5 +1036,12 @@ int in_gate_area_no_task(unsigned long addr);
|
|||
/* /proc/<pid>/oom_adj set to -17 protects from the oom-killer */
|
||||
#define OOM_DISABLE -17
|
||||
|
||||
int drop_caches_sysctl_handler(struct ctl_table *, int, struct file *,
|
||||
void __user *, size_t *, loff_t *);
|
||||
int shrink_slab(unsigned long scanned, gfp_t gfp_mask,
|
||||
unsigned long lru_pages);
|
||||
void drop_pagecache(void);
|
||||
void drop_slab(void);
|
||||
|
||||
#endif /* __KERNEL__ */
|
||||
#endif /* _LINUX_MM_H */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue