Hi Dmitry, Thank you for the patch! Yet something to improve:
[auto build test ERROR on linus/master] [also build test ERROR on v4.20-rc6] [cannot apply to next-20181211] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system] url: https://github.com/0day-ci/linux/commits/Dmitry-V-Levin/ptrace-add-PTRACE_GET_SYSCALL_INFO-request/20181210-174745 config: xtensa-allmodconfig (attached as .config) compiler: xtensa-linux-gcc (GCC) 8.1.0 reproduce: wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # save the attached .config to linux build tree GCC_VERSION=8.1.0 make.cross ARCH=xtensa All error/warnings (new ones prefixed by >>): In file included from arch/xtensa/kernel/syscall.c:19: arch/xtensa/include/asm/syscall.h: In function 'syscall_get_error': arch/xtensa/include/asm/syscall.h:66:9: error: implicit declaration of function 'IS_ERR_VALUE'; did you mean 'USER_PS_VALUE'? [-Werror=implicit-function-declaration] return IS_ERR_VALUE(regs->areg[2]) ? regs->areg[2] : 0; ^~~~~~~~~~~~ USER_PS_VALUE >> arch/xtensa/include/asm/syscall.h:69:1: error: invalid storage class for >> function 'syscall_get_return_value' syscall_get_return_value(struct task_struct *task, struct pt_regs *regs) ^~~~~~~~~~~~~~~~~~~~~~~~ >> arch/xtensa/include/asm/syscall.h:68:1: warning: ISO C90 forbids mixed >> declarations and code [-Wdeclaration-after-statement] static inline long ^~~~~~ >> arch/xtensa/include/asm/syscall.h:75:1: error: invalid storage class for >> function 'syscall_get_arch' syscall_get_arch(void) ^~~~~~~~~~~~~~~~ In file included from include/linux/wait_bit.h:8, from include/linux/fs.h:6, from include/uapi/linux/aio_abi.h:31, from include/linux/syscalls.h:74, from arch/xtensa/kernel/syscall.c:24: include/linux/wait.h:31:19: error: field 'entry' has incomplete type struct list_head entry; ^~~~~ include/linux/wait.h:36:19: error: field 'head' has incomplete type struct list_head head; ^~~~ include/linux/wait.h:79:20: error: invalid storage class for function 'init_waitqueue_entry' static inline void init_waitqueue_entry(struct wait_queue_entry *wq_entry, struct task_struct *p) ^~~~~~~~~~~~~~~~~~~~ include/linux/wait.h:87:1: error: invalid storage class for function 'init_waitqueue_func_entry' init_waitqueue_func_entry(struct wait_queue_entry *wq_entry, wait_queue_func_t func) ^~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/wait.h:124:19: error: invalid storage class for function 'waitqueue_active' static inline int waitqueue_active(struct wait_queue_head *wq_head) ^~~~~~~~~~~~~~~~ include/linux/wait.h:137:20: error: invalid storage class for function 'wq_has_sleeper' static inline bool wq_has_sleeper(struct wait_queue_head *wq_head) ^~~~~~~~~~~~~~ include/linux/wait.h:154:20: error: invalid storage class for function '__add_wait_queue' static inline void __add_wait_queue(struct wait_queue_head *wq_head, struct wait_queue_entry *wq_entry) ^~~~~~~~~~~~~~~~ include/linux/wait.h:163:1: error: invalid storage class for function '__add_wait_queue_exclusive' __add_wait_queue_exclusive(struct wait_queue_head *wq_head, struct wait_queue_entry *wq_entry) ^~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/wait.h:169:20: error: invalid storage class for function '__add_wait_queue_entry_tail' static inline void __add_wait_queue_entry_tail(struct wait_queue_head *wq_head, struct wait_queue_entry *wq_entry) ^~~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/wait.h:175:1: error: invalid storage class for function '__add_wait_queue_entry_tail_exclusive' __add_wait_queue_entry_tail_exclusive(struct wait_queue_head *wq_head, struct wait_queue_entry *wq_entry) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/wait.h:182:1: error: invalid storage class for function '__remove_wait_queue' __remove_wait_queue(struct wait_queue_head *wq_head, struct wait_queue_entry *wq_entry) ^~~~~~~~~~~~~~~~~~~ In file included from include/linux/fs.h:6, from include/uapi/linux/aio_abi.h:31, from include/linux/syscalls.h:74, from arch/xtensa/kernel/syscall.c:24: include/linux/wait_bit.h:71:1: error: invalid storage class for function 'wait_on_bit' wait_on_bit(unsigned long *word, int bit, unsigned mode) ^~~~~~~~~~~ include/linux/wait_bit.h:96:1: error: invalid storage class for function 'wait_on_bit_io' wait_on_bit_io(unsigned long *word, int bit, unsigned mode) ^~~~~~~~~~~~~~ include/linux/wait_bit.h:122:1: error: invalid storage class for function 'wait_on_bit_timeout' wait_on_bit_timeout(unsigned long *word, int bit, unsigned mode, ^~~~~~~~~~~~~~~~~~~ include/linux/wait_bit.h:150:1: error: invalid storage class for function 'wait_on_bit_action' wait_on_bit_action(unsigned long *word, int bit, wait_bit_action_f *action, ^~~~~~~~~~~~~~~~~~ include/linux/wait_bit.h:179:1: error: invalid storage class for function 'wait_on_bit_lock' wait_on_bit_lock(unsigned long *word, int bit, unsigned mode) ^~~~~~~~~~~~~~~~ include/linux/wait_bit.h:203:1: error: invalid storage class for function 'wait_on_bit_lock_io' wait_on_bit_lock_io(unsigned long *word, int bit, unsigned mode) ^~~~~~~~~~~~~~~~~~~ include/linux/wait_bit.h:229:1: error: invalid storage class for function 'wait_on_bit_lock_action' wait_on_bit_lock_action(unsigned long *word, int bit, wait_bit_action_f *action, ^~~~~~~~~~~~~~~~~~~~~~~ include/linux/wait_bit.h:317:20: error: invalid storage class for function 'clear_and_wake_up_bit' static inline void clear_and_wake_up_bit(int bit, void *word) ^~~~~~~~~~~~~~~~~~~~~ In file included from include/linux/fs.h:7, from include/uapi/linux/aio_abi.h:31, from include/linux/syscalls.h:74, from arch/xtensa/kernel/syscall.c:24: include/linux/kdev_t.h:24:20: error: invalid storage class for function 'old_valid_dev' static inline bool old_valid_dev(dev_t dev) ^~~~~~~~~~~~~ include/linux/kdev_t.h:29:19: error: invalid storage class for function 'old_encode_dev' static inline u16 old_encode_dev(dev_t dev) ^~~~~~~~~~~~~~ include/linux/kdev_t.h:34:21: error: invalid storage class for function 'old_decode_dev' static inline dev_t old_decode_dev(u16 val) ^~~~~~~~~~~~~~ include/linux/kdev_t.h:39:19: error: invalid storage class for function 'new_encode_dev' static inline u32 new_encode_dev(dev_t dev) ^~~~~~~~~~~~~~ include/linux/kdev_t.h:46:21: error: invalid storage class for function 'new_decode_dev' static inline dev_t new_decode_dev(u32 dev) ^~~~~~~~~~~~~~ include/linux/kdev_t.h:53:19: error: invalid storage class for function 'huge_encode_dev' static inline u64 huge_encode_dev(dev_t dev) ^~~~~~~~~~~~~~~ include/linux/kdev_t.h:58:21: error: invalid storage class for function 'huge_decode_dev' static inline dev_t huge_decode_dev(u64 dev) ^~~~~~~~~~~~~~~ include/linux/kdev_t.h:63:19: error: invalid storage class for function 'sysv_valid_dev' static inline int sysv_valid_dev(dev_t dev) ^~~~~~~~~~~~~~ include/linux/kdev_t.h:68:19: error: invalid storage class for function 'sysv_encode_dev' static inline u32 sysv_encode_dev(dev_t dev) ^~~~~~~~~~~~~~~ include/linux/kdev_t.h:73:24: error: invalid storage class for function 'sysv_major' vim +/syscall_get_return_value +69 arch/xtensa/include/asm/syscall.h 62 63 static inline long 64 syscall_get_error(struct task_struct *task, struct pt_regs *regs) 65 { > 66 return IS_ERR_VALUE(regs->areg[2]) ? regs->areg[2] : 0; 67 > 68 static inline long > 69 syscall_get_return_value(struct task_struct *task, struct pt_regs *regs) 70 { 71 return regs->areg[2]; 72 } 73 74 static inline int > 75 syscall_get_arch(void) 76 { 77 return AUDIT_ARCH_XTENSA; 78 } 79 --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation
.config.gz
Description: application/gzip