Hi Nhat, I love your patch! Perhaps something to improve: [auto build test WARNING on shuah-kselftest/next] [also build test WARNING on shuah-kselftest/fixes tip/x86/asm arnd-asm-generic/master linus/master v6.1-rc5 next-20221115] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch#_base_tree_information] url: https://github.com/intel-lab-lkp/linux/commits/Nhat-Pham/cachestat-a-new-syscall-for-page-cache-state-of-files/20221116-023042 base: https://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest.git next patch link: https://lore.kernel.org/r/20221115182901.2755368-4-nphamcs%40gmail.com patch subject: [PATCH 3/4] cachestat: implement cachestat syscall config: m68k-allyesconfig compiler: m68k-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/e0d55eece256958cfaec0dd2842bf0edced26150 git remote add linux-review https://github.com/intel-lab-lkp/linux git fetch --no-tags linux-review Nhat-Pham/cachestat-a-new-syscall-for-page-cache-state-of-files/20221116-023042 git checkout e0d55eece256958cfaec0dd2842bf0edced26150 # 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=m68k SHELL=/bin/bash drivers/macintosh/ prepare If you fix the issue, kindly add following tag where applicable | Reported-by: kernel test robot All warnings (new ones prefixed by >>): >> :1565:2: warning: #warning syscall cachestat not implemented [-Wcpp] -- In file included from drivers/macintosh/via-pmu.c:46: >> include/linux/syscalls.h:1060:16: warning: 'struct cachestat' declared inside parameter list will not be visible outside of this definition or declaration 1060 | struct cachestat __user *ret_cstat); | ^~~~~~~~~ -- >> :1565:2: warning: #warning syscall cachestat not implemented [-Wcpp] -- >> :1565:2: warning: #warning syscall cachestat not implemented [-Wcpp] vim +1060 include/linux/syscalls.h 903 904 /* mm/, CONFIG_MMU only */ 905 asmlinkage long sys_swapon(const char __user *specialfile, int swap_flags); 906 asmlinkage long sys_swapoff(const char __user *specialfile); 907 asmlinkage long sys_mprotect(unsigned long start, size_t len, 908 unsigned long prot); 909 asmlinkage long sys_msync(unsigned long start, size_t len, int flags); 910 asmlinkage long sys_mlock(unsigned long start, size_t len); 911 asmlinkage long sys_munlock(unsigned long start, size_t len); 912 asmlinkage long sys_mlockall(int flags); 913 asmlinkage long sys_munlockall(void); 914 asmlinkage long sys_mincore(unsigned long start, size_t len, 915 unsigned char __user * vec); 916 asmlinkage long sys_madvise(unsigned long start, size_t len, int behavior); 917 asmlinkage long sys_process_madvise(int pidfd, const struct iovec __user *vec, 918 size_t vlen, int behavior, unsigned int flags); 919 asmlinkage long sys_process_mrelease(int pidfd, unsigned int flags); 920 asmlinkage long sys_remap_file_pages(unsigned long start, unsigned long size, 921 unsigned long prot, unsigned long pgoff, 922 unsigned long flags); 923 asmlinkage long sys_mbind(unsigned long start, unsigned long len, 924 unsigned long mode, 925 const unsigned long __user *nmask, 926 unsigned long maxnode, 927 unsigned flags); 928 asmlinkage long sys_get_mempolicy(int __user *policy, 929 unsigned long __user *nmask, 930 unsigned long maxnode, 931 unsigned long addr, unsigned long flags); 932 asmlinkage long sys_set_mempolicy(int mode, const unsigned long __user *nmask, 933 unsigned long maxnode); 934 asmlinkage long sys_migrate_pages(pid_t pid, unsigned long maxnode, 935 const unsigned long __user *from, 936 const unsigned long __user *to); 937 asmlinkage long sys_move_pages(pid_t pid, unsigned long nr_pages, 938 const void __user * __user *pages, 939 const int __user *nodes, 940 int __user *status, 941 int flags); 942 943 asmlinkage long sys_rt_tgsigqueueinfo(pid_t tgid, pid_t pid, int sig, 944 siginfo_t __user *uinfo); 945 asmlinkage long sys_perf_event_open( 946 struct perf_event_attr __user *attr_uptr, 947 pid_t pid, int cpu, int group_fd, unsigned long flags); 948 asmlinkage long sys_accept4(int, struct sockaddr __user *, int __user *, int); 949 asmlinkage long sys_recvmmsg(int fd, struct mmsghdr __user *msg, 950 unsigned int vlen, unsigned flags, 951 struct __kernel_timespec __user *timeout); 952 asmlinkage long sys_recvmmsg_time32(int fd, struct mmsghdr __user *msg, 953 unsigned int vlen, unsigned flags, 954 struct old_timespec32 __user *timeout); 955 956 asmlinkage long sys_wait4(pid_t pid, int __user *stat_addr, 957 int options, struct rusage __user *ru); 958 asmlinkage long sys_prlimit64(pid_t pid, unsigned int resource, 959 const struct rlimit64 __user *new_rlim, 960 struct rlimit64 __user *old_rlim); 961 asmlinkage long sys_fanotify_init(unsigned int flags, unsigned int event_f_flags); 962 asmlinkage long sys_fanotify_mark(int fanotify_fd, unsigned int flags, 963 u64 mask, int fd, 964 const char __user *pathname); 965 asmlinkage long sys_name_to_handle_at(int dfd, const char __user *name, 966 struct file_handle __user *handle, 967 int __user *mnt_id, int flag); 968 asmlinkage long sys_open_by_handle_at(int mountdirfd, 969 struct file_handle __user *handle, 970 int flags); 971 asmlinkage long sys_clock_adjtime(clockid_t which_clock, 972 struct __kernel_timex __user *tx); 973 asmlinkage long sys_clock_adjtime32(clockid_t which_clock, 974 struct old_timex32 __user *tx); 975 asmlinkage long sys_syncfs(int fd); 976 asmlinkage long sys_setns(int fd, int nstype); 977 asmlinkage long sys_pidfd_open(pid_t pid, unsigned int flags); 978 asmlinkage long sys_sendmmsg(int fd, struct mmsghdr __user *msg, 979 unsigned int vlen, unsigned flags); 980 asmlinkage long sys_process_vm_readv(pid_t pid, 981 const struct iovec __user *lvec, 982 unsigned long liovcnt, 983 const struct iovec __user *rvec, 984 unsigned long riovcnt, 985 unsigned long flags); 986 asmlinkage long sys_process_vm_writev(pid_t pid, 987 const struct iovec __user *lvec, 988 unsigned long liovcnt, 989 const struct iovec __user *rvec, 990 unsigned long riovcnt, 991 unsigned long flags); 992 asmlinkage long sys_kcmp(pid_t pid1, pid_t pid2, int type, 993 unsigned long idx1, unsigned long idx2); 994 asmlinkage long sys_finit_module(int fd, const char __user *uargs, int flags); 995 asmlinkage long sys_sched_setattr(pid_t pid, 996 struct sched_attr __user *attr, 997 unsigned int flags); 998 asmlinkage long sys_sched_getattr(pid_t pid, 999 struct sched_attr __user *attr, 1000 unsigned int size, 1001 unsigned int flags); 1002 asmlinkage long sys_renameat2(int olddfd, const char __user *oldname, 1003 int newdfd, const char __user *newname, 1004 unsigned int flags); 1005 asmlinkage long sys_seccomp(unsigned int op, unsigned int flags, 1006 void __user *uargs); 1007 asmlinkage long sys_getrandom(char __user *buf, size_t count, 1008 unsigned int flags); 1009 asmlinkage long sys_memfd_create(const char __user *uname_ptr, unsigned int flags); 1010 asmlinkage long sys_bpf(int cmd, union bpf_attr *attr, unsigned int size); 1011 asmlinkage long sys_execveat(int dfd, const char __user *filename, 1012 const char __user *const __user *argv, 1013 const char __user *const __user *envp, int flags); 1014 asmlinkage long sys_userfaultfd(int flags); 1015 asmlinkage long sys_membarrier(int cmd, unsigned int flags, int cpu_id); 1016 asmlinkage long sys_mlock2(unsigned long start, size_t len, int flags); 1017 asmlinkage long sys_copy_file_range(int fd_in, loff_t __user *off_in, 1018 int fd_out, loff_t __user *off_out, 1019 size_t len, unsigned int flags); 1020 asmlinkage long sys_preadv2(unsigned long fd, const struct iovec __user *vec, 1021 unsigned long vlen, unsigned long pos_l, unsigned long pos_h, 1022 rwf_t flags); 1023 asmlinkage long sys_pwritev2(unsigned long fd, const struct iovec __user *vec, 1024 unsigned long vlen, unsigned long pos_l, unsigned long pos_h, 1025 rwf_t flags); 1026 asmlinkage long sys_pkey_mprotect(unsigned long start, size_t len, 1027 unsigned long prot, int pkey); 1028 asmlinkage long sys_pkey_alloc(unsigned long flags, unsigned long init_val); 1029 asmlinkage long sys_pkey_free(int pkey); 1030 asmlinkage long sys_statx(int dfd, const char __user *path, unsigned flags, 1031 unsigned mask, struct statx __user *buffer); 1032 asmlinkage long sys_rseq(struct rseq __user *rseq, uint32_t rseq_len, 1033 int flags, uint32_t sig); 1034 asmlinkage long sys_open_tree(int dfd, const char __user *path, unsigned flags); 1035 asmlinkage long sys_move_mount(int from_dfd, const char __user *from_path, 1036 int to_dfd, const char __user *to_path, 1037 unsigned int ms_flags); 1038 asmlinkage long sys_mount_setattr(int dfd, const char __user *path, 1039 unsigned int flags, 1040 struct mount_attr __user *uattr, size_t usize); 1041 asmlinkage long sys_fsopen(const char __user *fs_name, unsigned int flags); 1042 asmlinkage long sys_fsconfig(int fs_fd, unsigned int cmd, const char __user *key, 1043 const void __user *value, int aux); 1044 asmlinkage long sys_fsmount(int fs_fd, unsigned int flags, unsigned int ms_flags); 1045 asmlinkage long sys_fspick(int dfd, const char __user *path, unsigned int flags); 1046 asmlinkage long sys_pidfd_send_signal(int pidfd, int sig, 1047 siginfo_t __user *info, 1048 unsigned int flags); 1049 asmlinkage long sys_pidfd_getfd(int pidfd, int fd, unsigned int flags); 1050 asmlinkage long sys_landlock_create_ruleset(const struct landlock_ruleset_attr __user *attr, 1051 size_t size, __u32 flags); 1052 asmlinkage long sys_landlock_add_rule(int ruleset_fd, enum landlock_rule_type rule_type, 1053 const void __user *rule_attr, __u32 flags); 1054 asmlinkage long sys_landlock_restrict_self(int ruleset_fd, __u32 flags); 1055 asmlinkage long sys_memfd_secret(unsigned int flags); 1056 asmlinkage long sys_set_mempolicy_home_node(unsigned long start, unsigned long len, 1057 unsigned long home_node, 1058 unsigned long flags); 1059 asmlinkage long sys_cachestat(unsigned int fd, off_t off, size_t len, > 1060 struct cachestat __user *ret_cstat); 1061 -- 0-DAY CI Kernel Test Service https://01.org/lkp