lkml.org 
[lkml]   [2009]   [Feb]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH] mm: Fix dirty_bytes/dirty_background_bytes sysctls on 64bit arches
From
Date
On Sun, 2009-02-01 at 02:22 +0100, Sven Wegener wrote:
> We need to pass an unsigned long as the minimum, because it gets casted
> to an unsigned long in the sysctl handler. If we pass an int, we'll
> access four more bytes on 64bit arches, resulting in a random minimum
> value.

If that's so, how can any of those other limit values still be good?

> Signed-off-by: Sven Wegener <sven.wegener@stealer.net>
> ---
> kernel/sysctl.c | 5 +++--
> 1 files changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/kernel/sysctl.c b/kernel/sysctl.c
> index 790f9d7..c5ef44f 100644
> --- a/kernel/sysctl.c
> +++ b/kernel/sysctl.c
> @@ -101,6 +101,7 @@ static int two = 2;
>
> static int zero;
> static int one = 1;
> +static unsigned long one_ul = 1;
> static int one_hundred = 100;
>
> /* this is needed for the proc_dointvec_minmax for [fs_]overflow UID and GID */
> @@ -974,7 +975,7 @@ static struct ctl_table vm_table[] = {
> .mode = 0644,
> .proc_handler = &dirty_background_bytes_handler,
> .strategy = &sysctl_intvec,
> - .extra1 = &one,
> + .extra1 = &one_ul,
> },
> {
> .ctl_name = VM_DIRTY_RATIO,
> @@ -995,7 +996,7 @@ static struct ctl_table vm_table[] = {
> .mode = 0644,
> .proc_handler = &dirty_bytes_handler,
> .strategy = &sysctl_intvec,
> - .extra1 = &one,
> + .extra1 = &one_ul,
> },
> {
> .procname = "dirty_writeback_centisecs",



\
 
 \ /
  Last update: 2009-02-01 10:23    [W:0.102 / U:0.360 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site