proc: proc_skip_spaces() shouldn't think it is working on C strings
authorLinus Torvalds <torvalds@linux-foundation.org>
Mon, 5 Dec 2022 20:09:06 +0000 (12:09 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 8 Dec 2022 10:28:45 +0000 (11:28 +0100)
commit48642f94311b0cf9667aa6833f9f5e3a87d2a0ce
tree592bf3a23d65afcdbed6109dd9817ddc4030a677
parent3eb9213f66127fbccd56dd4d36c4b47f3302dbf7
proc: proc_skip_spaces() shouldn't think it is working on C strings

commit bce9332220bd677d83b19d21502776ad555a0e73 upstream.

proc_skip_spaces() seems to think it is working on C strings, and ends
up being just a wrapper around skip_spaces() with a really odd calling
convention.

Instead of basing it on skip_spaces(), it should have looked more like
proc_skip_char(), which really is the exact same function (except it
skips a particular character, rather than whitespace).  So use that as
inspiration, odd coding and all.

Now the calling convention actually makes sense and works for the
intended purpose.

Reported-and-tested-by: Kyle Zeng <zengyhkyle@gmail.com>
Acked-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