Re: [PATCH v10 2/3] cachestat: implement cachestat syscall

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Nhat,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on 1440f576022887004f719883acb094e7e0dd4944]

url:    https://github.com/intel-lab-lkp/linux/commits/Nhat-Pham/workingset-refactor-LRU-refault-to-expose-refault-recency-check/20230219-153500
base:   1440f576022887004f719883acb094e7e0dd4944
patch link:    https://lore.kernel.org/r/20230219073318.366189-3-nphamcs%40gmail.com
patch subject: [PATCH v10 2/3] cachestat: implement cachestat syscall
config: riscv-buildonly-randconfig-r005-20230219 (https://download.01.org/0day-ci/archive/20230219/202302191700.Pg6Yy5Xp-lkp@xxxxxxxxx/config)
compiler: riscv64-linux-gcc (GCC) 12.1.0
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # https://github.com/intel-lab-lkp/linux/commit/d691a3b4a696ab20c9c5fe86c624e9e36814523c
        git remote add linux-review https://github.com/intel-lab-lkp/linux
        git fetch --no-tags linux-review Nhat-Pham/workingset-refactor-LRU-refault-to-expose-refault-recency-check/20230219-153500
        git checkout d691a3b4a696ab20c9c5fe86c624e9e36814523c
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=riscv olddefconfig
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=riscv SHELL=/bin/bash

If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp@xxxxxxxxx>
| Link: https://lore.kernel.org/oe-kbuild-all/202302191700.Pg6Yy5Xp-lkp@xxxxxxxxx/

All errors (new ones prefixed by >>):

   mm/filemap.c:4035:6: warning: no previous prototype for 'ksys_cachestat' [-Wmissing-prototypes]
    4035 | long ksys_cachestat(unsigned int fd, size_t len, loff_t off,
         |      ^~~~~~~~~~~~~~
   In file included from arch/riscv/include/asm/elf.h:12,
                    from include/linux/elf.h:6,
                    from include/linux/module.h:19,
                    from include/linux/device/driver.h:21,
                    from include/linux/device.h:32,
                    from include/linux/blk_types.h:11,
                    from include/linux/writeback.h:13,
                    from include/linux/memcontrol.h:22,
                    from include/linux/swap.h:9,
                    from mm/filemap.c:23:
>> include/linux/compat.h:75:25: error: conflicting types for 'compat_sys_cachestat'; have 'long int(unsigned int,  size_t,  u32,  u32,  struct cachestat *, unsigned int)' {aka 'long int(unsigned int,  long unsigned int,  unsigned int,  unsigned int,  struct cachestat *, unsigned int)'}
      75 |         asmlinkage long compat_sys##name(__MAP(x,__SC_DECL,__VA_ARGS__))        \
         |                         ^~~~~~~~~~
   include/linux/compat.h:63:9: note: in expansion of macro 'COMPAT_SYSCALL_DEFINEx'
      63 |         COMPAT_SYSCALL_DEFINEx(6, _##name, __VA_ARGS__)
         |         ^~~~~~~~~~~~~~~~~~~~~~
   mm/filemap.c:4102:1: note: in expansion of macro 'COMPAT_SYSCALL_DEFINE6'
    4102 | COMPAT_SYSCALL_DEFINE6(cachestat, unsigned int, fd, size_t, len,
         | ^~~~~~~~~~~~~~~~~~~~~~
   include/linux/compat.h:820:17: note: previous declaration of 'compat_sys_cachestat' with type 'long int(int,  size_t,  u32,  u32,  struct cachestat *, unsigned int)' {aka 'long int(int,  long unsigned int,  unsigned int,  unsigned int,  struct cachestat *, unsigned int)'}
     820 | asmlinkage long compat_sys_cachestat(int fd, size_t len, compat_arg_u64(off),
         |                 ^~~~~~~~~~~~~~~~~~~~


vim +75 include/linux/compat.h

217f4433fc2fe7 Heiko Carstens    2014-02-26  51  
468366138850f2 Al Viro           2012-11-23  52  #define COMPAT_SYSCALL_DEFINE1(name, ...) \
468366138850f2 Al Viro           2012-11-23  53          COMPAT_SYSCALL_DEFINEx(1, _##name, __VA_ARGS__)
468366138850f2 Al Viro           2012-11-23  54  #define COMPAT_SYSCALL_DEFINE2(name, ...) \
468366138850f2 Al Viro           2012-11-23  55  	COMPAT_SYSCALL_DEFINEx(2, _##name, __VA_ARGS__)
468366138850f2 Al Viro           2012-11-23  56  #define COMPAT_SYSCALL_DEFINE3(name, ...) \
468366138850f2 Al Viro           2012-11-23  57  	COMPAT_SYSCALL_DEFINEx(3, _##name, __VA_ARGS__)
468366138850f2 Al Viro           2012-11-23  58  #define COMPAT_SYSCALL_DEFINE4(name, ...) \
468366138850f2 Al Viro           2012-11-23  59  	COMPAT_SYSCALL_DEFINEx(4, _##name, __VA_ARGS__)
468366138850f2 Al Viro           2012-11-23  60  #define COMPAT_SYSCALL_DEFINE5(name, ...) \
468366138850f2 Al Viro           2012-11-23  61  	COMPAT_SYSCALL_DEFINEx(5, _##name, __VA_ARGS__)
468366138850f2 Al Viro           2012-11-23  62  #define COMPAT_SYSCALL_DEFINE6(name, ...) \
468366138850f2 Al Viro           2012-11-23  63  	COMPAT_SYSCALL_DEFINEx(6, _##name, __VA_ARGS__)
468366138850f2 Al Viro           2012-11-23  64  
5ac9efa3c50d7c Dominik Brodowski 2018-04-09  65  /*
5ac9efa3c50d7c Dominik Brodowski 2018-04-09  66   * The asmlinkage stub is aliased to a function named __se_compat_sys_*() which
5ac9efa3c50d7c Dominik Brodowski 2018-04-09  67   * sign-extends 32-bit ints to longs whenever needed. The actual work is
5ac9efa3c50d7c Dominik Brodowski 2018-04-09  68   * done within __do_compat_sys_*().
5ac9efa3c50d7c Dominik Brodowski 2018-04-09  69   */
7303e30ec1d8fb Dominik Brodowski 2018-04-05  70  #ifndef COMPAT_SYSCALL_DEFINEx
468366138850f2 Al Viro           2012-11-23  71  #define COMPAT_SYSCALL_DEFINEx(x, name, ...)					\
bee20031772af3 Arnd Bergmann     2018-06-19  72  	__diag_push();								\
bee20031772af3 Arnd Bergmann     2018-06-19  73  	__diag_ignore(GCC, 8, "-Wattribute-alias",				\
bee20031772af3 Arnd Bergmann     2018-06-19  74  		      "Type aliasing is used to sanitize syscall arguments");\
83460ec8dcac14 Andi Kleen        2013-11-12 @75  	asmlinkage long compat_sys##name(__MAP(x,__SC_DECL,__VA_ARGS__))	\
5ac9efa3c50d7c Dominik Brodowski 2018-04-09  76  		__attribute__((alias(__stringify(__se_compat_sys##name))));	\
c9a211951c7c79 Howard McLauchlan 2018-03-21  77  	ALLOW_ERROR_INJECTION(compat_sys##name, ERRNO);				\
5ac9efa3c50d7c Dominik Brodowski 2018-04-09  78  	static inline long __do_compat_sys##name(__MAP(x,__SC_DECL,__VA_ARGS__));\
5ac9efa3c50d7c Dominik Brodowski 2018-04-09  79  	asmlinkage long __se_compat_sys##name(__MAP(x,__SC_LONG,__VA_ARGS__));	\
5ac9efa3c50d7c Dominik Brodowski 2018-04-09  80  	asmlinkage long __se_compat_sys##name(__MAP(x,__SC_LONG,__VA_ARGS__))	\
468366138850f2 Al Viro           2012-11-23  81  	{									\
bee20031772af3 Arnd Bergmann     2018-06-19  82  		long ret = __do_compat_sys##name(__MAP(x,__SC_DELOUSE,__VA_ARGS__));\
bee20031772af3 Arnd Bergmann     2018-06-19  83  		__MAP(x,__SC_TEST,__VA_ARGS__);					\
bee20031772af3 Arnd Bergmann     2018-06-19  84  		return ret;							\
468366138850f2 Al Viro           2012-11-23  85  	}									\
bee20031772af3 Arnd Bergmann     2018-06-19  86  	__diag_pop();								\
5ac9efa3c50d7c Dominik Brodowski 2018-04-09  87  	static inline long __do_compat_sys##name(__MAP(x,__SC_DECL,__VA_ARGS__))
7303e30ec1d8fb Dominik Brodowski 2018-04-05  88  #endif /* COMPAT_SYSCALL_DEFINEx */
468366138850f2 Al Viro           2012-11-23  89  

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests



[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux