sysctl: fix proc_doulongvec_ms_jiffies_minmax()
authorEric Dumazet <edumazet@google.com>
Thu, 26 Jan 2017 02:20:55 +0000 (18:20 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 1 Feb 2017 07:30:52 +0000 (08:30 +0100)
commit ff9f8a7cf935468a94d9927c68b00daae701667e upstream.

We perform the conversion between kernel jiffies and ms only when
exporting kernel value to user space.

We need to do the opposite operation when value is written by user.

Only matters when HZ != 1000

Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
kernel/sysctl.c

index 999e025bf68eeb2cad2ea797d369003826f4bae6..2f0d157258a2a1fb5dfc5dc287a50793b6e5a2c5 100644 (file)
@@ -2414,6 +2414,7 @@ static int __do_proc_doulongvec_minmax(void *data, struct ctl_table *table, int
                                break;
                        if (neg)
                                continue;
+                       val = convmul * val / convdiv;
                        if ((min && val < *min) || (max && val > *max))
                                continue;
                        *i = val;