[tip:WIP.x86/cpu 1/18] arch/x86//kernel/ptrace.c:400:3: error: too many arguments to function 'x86_fsbase_write_cpu'
From: kbuild test robot
Date: Sun Jun 16 2019 - 09:28:37 EST
tree: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git WIP.x86/cpu
head: a0e3bbdc2e84af76864e16772ef0099ce933cded
commit: 9a17639c0ad237666277861b65cf8fa80a4e9775 [1/18] x86/process/64: Fix ARCH_SET_FS/GS for a remote task
config: x86_64-randconfig-x019-201924 (attached as .config)
compiler: gcc-7 (Debian 7.3.0-1) 7.3.0
reproduce:
git checkout 9a17639c0ad237666277861b65cf8fa80a4e9775
# save the attached .config to linux build tree
make ARCH=x86_64
If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp@xxxxxxxxx>
All error/warnings (new ones prefixed by >>):
arch/x86//kernel/ptrace.c: In function 'putreg':
>> arch/x86//kernel/ptrace.c:400:24: warning: passing argument 1 of 'x86_fsbase_write_cpu' makes integer from pointer without a cast [-Wint-conversion]
x86_fsbase_write_cpu(child, value);
^~~~~
In file included from arch/x86/include/asm/elf.h:13:0,
from include/linux/elf.h:5,
from arch/x86//kernel/ptrace.c:18:
arch/x86/include/asm/fsgsbase.h:42:20: note: expected 'long unsigned int' but argument is of type 'struct task_struct *'
static inline void x86_fsbase_write_cpu(unsigned long fsbase)
^~~~~~~~~~~~~~~~~~~~
>> arch/x86//kernel/ptrace.c:400:3: error: too many arguments to function 'x86_fsbase_write_cpu'
x86_fsbase_write_cpu(child, value);
^~~~~~~~~~~~~~~~~~~~
In file included from arch/x86/include/asm/elf.h:13:0,
from include/linux/elf.h:5,
from arch/x86//kernel/ptrace.c:18:
arch/x86/include/asm/fsgsbase.h:42:20: note: declared here
static inline void x86_fsbase_write_cpu(unsigned long fsbase)
^~~~~~~~~~~~~~~~~~~~
>> arch/x86//kernel/ptrace.c:405:3: error: implicit declaration of function 'x86_gsbase_write_cpu'; did you mean 'x86_fsbase_write_cpu'? [-Werror=implicit-function-declaration]
x86_gsbase_write_cpu(child, value);
^~~~~~~~~~~~~~~~~~~~
x86_fsbase_write_cpu
cc1: some warnings being treated as errors
vim +/x86_fsbase_write_cpu +400 arch/x86//kernel/ptrace.c
380
381 static int putreg(struct task_struct *child,
382 unsigned long offset, unsigned long value)
383 {
384 switch (offset) {
385 case offsetof(struct user_regs_struct, cs):
386 case offsetof(struct user_regs_struct, ds):
387 case offsetof(struct user_regs_struct, es):
388 case offsetof(struct user_regs_struct, fs):
389 case offsetof(struct user_regs_struct, gs):
390 case offsetof(struct user_regs_struct, ss):
391 return set_segment_reg(child, offset, value);
392
393 case offsetof(struct user_regs_struct, flags):
394 return set_flags(child, value);
395
396 #ifdef CONFIG_X86_64
397 case offsetof(struct user_regs_struct,fs_base):
398 if (value >= TASK_SIZE_MAX)
399 return -EIO;
> 400 x86_fsbase_write_cpu(child, value);
401 return 0;
402 case offsetof(struct user_regs_struct,gs_base):
403 if (value >= TASK_SIZE_MAX)
404 return -EIO;
> 405 x86_gsbase_write_cpu(child, value);
406 return 0;
407 #endif
408 }
409
410 *pt_regs_access(task_pt_regs(child), offset) = value;
411 return 0;
412 }
413
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
Attachment:
.config.gz
Description: application/gzip