* Re: [PATCH 2.6] vm-thrashing-control-tuning [not found] <2LXI2-3a5-21@gated-at.bofh.it> @ 2004-10-05 13:57 ` Andi Kleen 2004-10-06 12:19 ` Hideo AOKI 0 siblings, 1 reply; 7+ messages in thread From: Andi Kleen @ 2004-10-05 13:57 UTC (permalink / raw) To: Hideo AOKI; +Cc: linux-kernel Hideo AOKI <aoki@sdl.hitachi.co.jp> writes: > This patch adds "swap_token_timeout" parameter in /proc/sys/vm. > The parameter means expired time of token. Unit of the value is HZ, and the default value is the same as current SWAP_TOKEN_TIMEOUT > (i.e. HZ * 300). The patch can be applied to both 2.6.9-rc2 and 2.6.9-rc3. Please don't export any sysctls as jiffies. The values of jiffies changes. Use s or ms instead. sysctl has convenience functions for this. -Andi ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 2.6] vm-thrashing-control-tuning 2004-10-05 13:57 ` [PATCH 2.6] vm-thrashing-control-tuning Andi Kleen @ 2004-10-06 12:19 ` Hideo AOKI 2004-10-06 22:50 ` Andrew Morton 0 siblings, 1 reply; 7+ messages in thread From: Hideo AOKI @ 2004-10-06 12:19 UTC (permalink / raw) To: Andi Kleen, Andrew Morton; +Cc: linux-kernel, Rik van Riel [-- Attachment #1: Type: text/plain, Size: 841 bytes --] Andi Kleen wrote: > Hideo AOKI <aoki@sdl.hitachi.co.jp> writes: > >>This patch adds "swap_token_timeout" parameter in /proc/sys/vm. >>The parameter means expired time of token. Unit of the value is HZ, and the default value is the same as current SWAP_TOKEN_TIMEOUT >>(i.e. HZ * 300). The patch can be applied to both 2.6.9-rc2 and 2.6.9-rc3. > > Please don't export any sysctls as jiffies. The values of jiffies changes. > Use s or ms instead. sysctl has convenience functions for this. Andi, Thank you very much for useful suggestion. I changed unit of the parameter from jiffies to second. Andrew, I apologize for wasting for your time in last mail. Attached patch is fixed the unit issue Andi noticed. Additionally, the patch is fixed writespace issue. Best regards, Hideo AOKI Systems Development Laboratory, Hitachi, Ltd. [-- Attachment #2: vm-thrashing-control-tuning.patch --] [-- Type: text/plain, Size: 3079 bytes --] include/linux/swap.h | 1 + include/linux/sysctl.h | 1 + kernel/sysctl.c | 9 +++++++++ mm/thrash.c | 5 +++-- 4 files changed, 14 insertions(+), 2 deletions(-) Signed-off-by: Hideo Aoki <aoki@sdl.hitachi.co.jp> diff -uprN linux-2.6.9-rc3/include/linux/swap.h linux-2.6.9-rc3-vm-thrashing-control-tuning/include/linux/swap.h --- linux-2.6.9-rc3/include/linux/swap.h 2004-09-30 15:01:04.000000000 +0900 +++ linux-2.6.9-rc3-vm-thrashing-control-tuning/include/linux/swap.h 2004-10-04 13:45:11.000000000 +0900 @@ -230,6 +230,7 @@ extern spinlock_t swaplock; /* linux/mm/thrash.c */ extern struct mm_struct * swap_token_mm; +extern unsigned long swap_token_default_timeout; extern void grab_swap_token(void); extern void __put_swap_token(struct mm_struct *); diff -uprN linux-2.6.9-rc3/include/linux/sysctl.h linux-2.6.9-rc3-vm-thrashing-control-tuning/include/linux/sysctl.h --- linux-2.6.9-rc3/include/linux/sysctl.h 2004-09-30 15:01:04.000000000 +0900 +++ linux-2.6.9-rc3-vm-thrashing-control-tuning/include/linux/sysctl.h 2004-10-04 13:45:11.000000000 +0900 @@ -167,6 +167,7 @@ enum VM_HUGETLB_GROUP=25, /* permitted hugetlb group */ VM_VFS_CACHE_PRESSURE=26, /* dcache/icache reclaim pressure */ VM_LEGACY_VA_LAYOUT=27, /* legacy/compatibility virtual address space layout */ + VM_SWAP_TOKEN_TIMEOUT=28 /* default time for token time out */ }; diff -uprN linux-2.6.9-rc3/kernel/sysctl.c linux-2.6.9-rc3-vm-thrashing-control-tuning/kernel/sysctl.c --- linux-2.6.9-rc3/kernel/sysctl.c 2004-09-30 15:01:05.000000000 +0900 +++ linux-2.6.9-rc3-vm-thrashing-control-tuning/kernel/sysctl.c 2004-10-06 17:39:48.000000000 +0900 @@ -800,6 +800,15 @@ static ctl_table vm_table[] = { .extra1 = &zero, }, #endif + { + .ctl_name = VM_SWAP_TOKEN_TIMEOUT, + .procname = "swap_token_timeout", + .data = &swap_token_default_timeout, + .maxlen = sizeof(swap_token_default_timeout), + .mode = 0644, + .proc_handler = &proc_dointvec_jiffies, + .strategy = &sysctl_jiffies, + }, { .ctl_name = 0 } }; diff -uprN linux-2.6.9-rc3/mm/thrash.c linux-2.6.9-rc3-vm-thrashing-control-tuning/mm/thrash.c --- linux-2.6.9-rc3/mm/thrash.c 2004-09-30 15:01:06.000000000 +0900 +++ linux-2.6.9-rc3-vm-thrashing-control-tuning/mm/thrash.c 2004-10-06 18:53:10.000000000 +0900 @@ -20,6 +20,7 @@ struct mm_struct * swap_token_mm = &init #define SWAP_TOKEN_CHECK_INTERVAL (HZ * 2) #define SWAP_TOKEN_TIMEOUT (HZ * 300) +unsigned long swap_token_default_timeout = SWAP_TOKEN_TIMEOUT; /* * Take the token away if the process had no page faults @@ -75,10 +76,10 @@ void grab_swap_token(void) if ((reason = should_release_swap_token(mm))) { unsigned long eligible = jiffies; if (reason == SWAP_TOKEN_TIMED_OUT) { - eligible += SWAP_TOKEN_TIMEOUT; + eligible += swap_token_default_timeout; } mm->swap_token_time = eligible; - swap_token_timeout = jiffies + SWAP_TOKEN_TIMEOUT; + swap_token_timeout = jiffies + swap_token_default_timeout; swap_token_mm = current->mm; } spin_unlock(&swap_token_lock); ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 2.6] vm-thrashing-control-tuning 2004-10-06 12:19 ` Hideo AOKI @ 2004-10-06 22:50 ` Andrew Morton 2004-10-07 13:51 ` Hideo AOKI 0 siblings, 1 reply; 7+ messages in thread From: Andrew Morton @ 2004-10-06 22:50 UTC (permalink / raw) To: Hideo AOKI; +Cc: ak, linux-kernel, riel Hideo AOKI <aoki@sdl.hitachi.co.jp> wrote: > > [vm-thrashing-control-tuning.patch text/plain (3256 bytes)] Please send an additional patch to update Documentation/filesystems/proc.txt and Documentation/sysctl/vm.txt ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 2.6] vm-thrashing-control-tuning 2004-10-06 22:50 ` Andrew Morton @ 2004-10-07 13:51 ` Hideo AOKI 2004-10-07 14:10 ` [PATCH 2.6] Documentation/filesystems/proc.txt Hideo AOKI 2004-10-11 8:39 ` [PATCH 2.6] vm-thrashing-control-tuning Wen-chien Jesse Sung 0 siblings, 2 replies; 7+ messages in thread From: Hideo AOKI @ 2004-10-07 13:51 UTC (permalink / raw) To: Andrew Morton; +Cc: ak, linux-kernel, riel [-- Attachment #1: Type: text/plain, Size: 364 bytes --] Andrew Morton wrote: >>[vm-thrashing-control-tuning.patch text/plain (3256 bytes)] > > Please send an additional patch to update Documentation/filesystems/proc.txt > and Documentation/sysctl/vm.txt Certainly. Attached patch is a short description for /proc/sys/vm/swap_token_timeout. Best regards, Hideo AOKI Systems Development Laboratory, Hitachi, Ltd. [-- Attachment #2: vm-doc-swap-token-timeout.patch --] [-- Type: text/plain, Size: 1792 bytes --] filesystems/proc.txt | 8 ++++++++ sysctl/vm.txt | 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) Signed-off-by: Hideo Aoki <aoki@sdl.hitachi.co.jp> diff -uprN linux-2.6.9-rc3-vm-thrashing-control-tuning/Documentation/filesystems/proc.txt linux-2.6.9-rc3-vm-tuning-doc/Documentation/filesystems/proc.txt --- linux-2.6.9-rc3-vm-thrashing-control-tuning/Documentation/filesystems/proc.txt 2004-10-07 10:47:23.000000000 +0900 +++ linux-2.6.9-rc3-vm-tuning-doc/Documentation/filesystems/proc.txt 2004-10-07 21:31:37.316226768 +0900 @@ -1269,6 +1269,14 @@ block_dump block_dump enables block I/O debugging when set to a nonzero value. More information on block I/O debugging is in Documentation/laptop-mode.txt. +swap_token_timeout +------------------ + +This file contains valid hold time of swap out protection token. The Linux +VM has token based thrashing control mechanism and uses the token to prevent +unnecessary page faults in thrashing situation. The unit of the value is +second. The value would be useful to tune thrashing behavior. + 2.5 /proc/sys/dev - Device specific parameters ---------------------------------------------- diff -uprN linux-2.6.9-rc3-vm-thrashing-control-tuning/Documentation/sysctl/vm.txt linux-2.6.9-rc3-vm-tuning-doc/Documentation/sysctl/vm.txt --- linux-2.6.9-rc3-vm-thrashing-control-tuning/Documentation/sysctl/vm.txt 2004-10-07 10:47:53.000000000 +0900 +++ linux-2.6.9-rc3-vm-tuning-doc/Documentation/sysctl/vm.txt 2004-10-07 16:48:56.969591368 +0900 @@ -31,7 +31,7 @@ Currently, these files are in /proc/sys/ dirty_ratio, dirty_background_ratio, dirty_expire_centisecs, dirty_writeback_centisecs, vfs_cache_pressure, laptop_mode, -block_dump: +block_dump, swap_token_timeout: See Documentation/filesystems/proc.txt ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 2.6] Documentation/filesystems/proc.txt 2004-10-07 13:51 ` Hideo AOKI @ 2004-10-07 14:10 ` Hideo AOKI 2004-10-11 8:39 ` [PATCH 2.6] vm-thrashing-control-tuning Wen-chien Jesse Sung 1 sibling, 0 replies; 7+ messages in thread From: Hideo AOKI @ 2004-10-07 14:10 UTC (permalink / raw) To: Andrew Morton; +Cc: ak, linux-kernel, riel [-- Attachment #1: Type: text/plain, Size: 628 bytes --] Hideo AOKI wrote: > Andrew Morton wrote: > >> Please send an additional patch to update >> Documentation/filesystems/proc.txt >> and Documentation/sysctl/vm.txt > > Certainly. > > Attached patch is a short description for /proc/sys/vm/swap_token_timeout. By the way, in Documentation/filesystems/proc.txt, explanation of /proc/meminfo is described in section 1.3 (IDE devices in /proc/ide). I think that it should be described in section 1.2 (Kernel data). Attached patch fixes it. This patch has to be applied after my previous patch is applied. Kind regards, Hideo AOKI Systems Development Laboratory, Hitachi, Ltd. [-- Attachment #2: doc-fs-proc-fix.patch --] [-- Type: text/plain, Size: 2215 bytes --] proc.txt | 31 ++++++++++++++++--------------- 1 files changed, 16 insertions(+), 15 deletions(-) Signed-off-by: Hideo Aoki <aoki@sdl.hitachi.co.jp> diff -uprN linux-2.6.9-rc3-vm-tuning-doc/Documentation/filesystems/proc.txt linux-2.6.9-rc3-doc-fs-proc-fix/Documentation/filesystems/proc.txt --- linux-2.6.9-rc3-vm-tuning-doc/Documentation/filesystems/proc.txt 2004-10-07 21:31:37.000000000 +0900 +++ linux-2.6.9-rc3-doc-fs-proc-fix/Documentation/filesystems/proc.txt 2004-10-07 22:05:46.847650632 +0900 @@ -350,22 +350,6 @@ available. In this case, there are 0 ch ZONE_DMA, 4 chunks of 2^1*PAGE_SIZE in ZONE_DMA, 101 chunks of 2^4*PAGE_SIZE available in ZONE_NORMAL, etc... - -1.3 IDE devices in /proc/ide ----------------------------- - -The subdirectory /proc/ide contains information about all IDE devices of which -the kernel is aware. There is one subdirectory for each IDE controller, the -file drivers and a link for each IDE device, pointing to the device directory -in the controller specific subtree. - -The file drivers contains general information about the drivers used for the -IDE devices: - - > cat /proc/ide/drivers - ide-cdrom version 4.53 - ide-disk version 1.08 - .............................................................................. meminfo: @@ -454,6 +438,22 @@ VmallocTotal: total size of vmalloc memo VmallocUsed: amount of vmalloc area which is used VmallocChunk: largest contigious block of vmalloc area which is free + +1.3 IDE devices in /proc/ide +---------------------------- + +The subdirectory /proc/ide contains information about all IDE devices of which +the kernel is aware. There is one subdirectory for each IDE controller, the +file drivers and a link for each IDE device, pointing to the device directory +in the controller specific subtree. + +The file drivers contains general information about the drivers used for the +IDE devices: + + > cat /proc/ide/drivers + ide-cdrom version 4.53 + ide-disk version 1.08 + More detailed information can be found in the controller specific subdirectories. These are named ide0, ide1 and so on. Each of these directories contains the files shown in table 1-4. ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 2.6] vm-thrashing-control-tuning 2004-10-07 13:51 ` Hideo AOKI 2004-10-07 14:10 ` [PATCH 2.6] Documentation/filesystems/proc.txt Hideo AOKI @ 2004-10-11 8:39 ` Wen-chien Jesse Sung 2004-10-11 12:11 ` Andi Kleen 1 sibling, 1 reply; 7+ messages in thread From: Wen-chien Jesse Sung @ 2004-10-11 8:39 UTC (permalink / raw) To: Hideo AOKI; +Cc: Andrew Morton, ak, linux-kernel, riel [-- Attachment #1: Type: text/plain, Size: 657 bytes --] Hi, In include/linux/sysctl.h of 2.6.9-rc3-mm3, both VM_HEAP_STACK_GAP and VM_SWAP_TOKEN_TIMEOUT are 28. Maybe one of them should be 29? --- include/linux/sysctl.h (revision 11) +++ include/linux/sysctl.h (local) @@ -168,7 +168,7 @@ VM_VFS_CACHE_PRESSURE=26, /* dcache/icache reclaim pressure */ VM_LEGACY_VA_LAYOUT=27, /* legacy/compatibility virtual address space layout */ VM_HEAP_STACK_GAP=28, /* int: page gap between heap and stack */ - VM_SWAP_TOKEN_TIMEOUT=28, /* default time for token time out */ + VM_SWAP_TOKEN_TIMEOUT=29, /* default time for token time out */ }; -- Best Regards, Wen-chien Jesse Sung [-- Attachment #2: 這是數位加簽的郵件 --] [-- Type: application/pgp-signature, Size: 189 bytes --] ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 2.6] vm-thrashing-control-tuning 2004-10-11 8:39 ` [PATCH 2.6] vm-thrashing-control-tuning Wen-chien Jesse Sung @ 2004-10-11 12:11 ` Andi Kleen 0 siblings, 0 replies; 7+ messages in thread From: Andi Kleen @ 2004-10-11 12:11 UTC (permalink / raw) To: Wen-chien Jesse Sung; +Cc: Hideo AOKI, Andrew Morton, linux-kernel, riel On Mon, Oct 11, 2004 at 04:39:58PM +0800, Wen-chien Jesse Sung wrote: > Hi, > > In include/linux/sysctl.h of 2.6.9-rc3-mm3, both VM_HEAP_STACK_GAP and > VM_SWAP_TOKEN_TIMEOUT are 28. Maybe one of them should be 29? It doesn't really matter much anymore because the numerical sysctl values are deprecated. Everybody should use the names in /proc/sys instead. Hopefully they will eventually go away completely and avoid a lot of patch conflicts. -Andi ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2004-10-11 12:12 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
[not found] <2LXI2-3a5-21@gated-at.bofh.it>
2004-10-05 13:57 ` [PATCH 2.6] vm-thrashing-control-tuning Andi Kleen
2004-10-06 12:19 ` Hideo AOKI
2004-10-06 22:50 ` Andrew Morton
2004-10-07 13:51 ` Hideo AOKI
2004-10-07 14:10 ` [PATCH 2.6] Documentation/filesystems/proc.txt Hideo AOKI
2004-10-11 8:39 ` [PATCH 2.6] vm-thrashing-control-tuning Wen-chien Jesse Sung
2004-10-11 12:11 ` Andi Kleen
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®