sysctl: fix proc_doulongvec_ms_jiffies_minmax()
authorEric Dumazet <edumazet@google.com>
Thu, 26 Jan 2017 02:20:55 +0000 (18:20 -0800)
committerBen Hutchings <ben@decadent.org.uk>
Thu, 16 Mar 2017 02:27:06 +0000 (02:27 +0000)
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: Ben Hutchings <ben@decadent.org.uk>
kernel/sysctl.c

index f9293694b52afc654eed08a159492497919cd19a..3a3172559b2222921fee382db0bcd7ce8ec89879 100644 (file)
@@ -2317,6 +2317,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;