Skip to content

Commit

Permalink
printk: Fix incorrect __user type in proc_dointvec_minmax_sysadmin()
Browse files Browse the repository at this point in the history
The move of proc_dointvec_minmax_sysadmin() from kernel/sysctl.c to
kernel/printk/sysctl.c introduced an incorrect __user attribute to the
buffer argument.  I spotted this change in [1] as well as the kernel
test robot.  Revert this change to please sparse:

  kernel/printk/sysctl.c:20:51: warning: incorrect type in argument 3 (different address spaces)
  kernel/printk/sysctl.c:20:51:    expected void *
  kernel/printk/sysctl.c:20:51:    got void [noderef] __user *buffer

Fixes: faaa357 ("printk: move printk sysctl to printk/sysctl.c")
Link: https://lore.kernel.org/r/[email protected] [1]
Reported-by: kernel test robot <[email protected]>
Cc: Andrew Morton <[email protected]>
Cc: John Ogness <[email protected]>
Cc: Luis Chamberlain <[email protected]>
Cc: Petr Mladek <[email protected]>
Cc: Sergey Senozhatsky <[email protected]>
Cc: Steven Rostedt <[email protected]>
Cc: Xiaoming Ni <[email protected]>
Signed-off-by: Mickaël Salaün <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Linus Torvalds <[email protected]>
  • Loading branch information
l0kod authored and torvalds committed Feb 3, 2022
1 parent 67d6212 commit 1f2cfdd
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion kernel/printk/sysctl.c
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
static const int ten_thousand = 10000;

static int proc_dointvec_minmax_sysadmin(struct ctl_table *table, int write,
void __user *buffer, size_t *lenp, loff_t *ppos)
void *buffer, size_t *lenp, loff_t *ppos)
{
if (write && !capable(CAP_SYS_ADMIN))
return -EPERM;
Expand Down

0 comments on commit 1f2cfdd

Please sign in to comment.