Re: [PATCH v2 7/9] userfaultfd: add UFFDIO_CONTINUE ioctl
From: kernel test robot <hidden>
Date: 2021-01-25 08:32:27
Also in:
oe-kbuild-all
Hi Axel, Thank you for the patch! Perhaps something to improve: [auto build test WARNING on arm64/for-next/core] [also build test WARNING on powerpc/next s390/features tip/perf/core linus/master v5.11-rc5 next-20210122] [cannot apply to hp-parisc/for-next hnaz-linux-mm/master ia64/next sparc-next/master sparc/master] [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] url: https://github.com/0day-ci/linux/commits/Axel-Rasmussen/userfaultfd-add-minor-fault-handling/20210125-104035 base: https://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-next/core config: x86_64-randconfig-a013-20210125 (attached as .config) compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project 12d0753aca22896fda2cf76781b0ee0524d55065) 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 # install x86_64 cross compiling tool for clang build # apt-get install binutils-x86-64-linux-gnu # https://github.com/0day-ci/linux/commit/b8fb53c3a341b9b853aa3286286c807088311dbd git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Axel-Rasmussen/userfaultfd-add-minor-fault-handling/20210125-104035 git checkout b8fb53c3a341b9b853aa3286286c807088311dbd # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <redacted> All warnings (new ones prefixed by >>): In file included from kernel/sched/core.c:13: In file included from kernel/sched/sched.h:53: In file included from include/linux/migrate.h:8:
quoted
include/linux/hugetlb.h:142:10: warning: declaration of 'enum mcopy_atomic_mode' will not be visible outside of this function [-Wvisibility]
enum mcopy_atomic_mode mode,
^
kernel/sched/core.c:2884:20: warning: unused function 'rq_has_pinned_tasks' [-Wunused-function]
static inline bool rq_has_pinned_tasks(struct rq *rq)
^
kernel/sched/core.c:4687:20: warning: unused function 'sched_tick_start' [-Wunused-function]
static inline void sched_tick_start(int cpu) { }
^
kernel/sched/core.c:4688:20: warning: unused function 'sched_tick_stop' [-Wunused-function]
static inline void sched_tick_stop(int cpu) { }
^
4 warnings generated.
--
In file included from kernel/sched/loadavg.c:9:
In file included from kernel/sched/sched.h:53:
In file included from include/linux/migrate.h:8:quoted
include/linux/hugetlb.h:142:10: warning: declaration of 'enum mcopy_atomic_mode' will not be visible outside of this function [-Wvisibility]
enum mcopy_atomic_mode mode,
^
1 warning generated.
--
In file included from kernel/sched/fair.c:23:
In file included from kernel/sched/sched.h:53:
In file included from include/linux/migrate.h:8:quoted
include/linux/hugetlb.h:142:10: warning: declaration of 'enum mcopy_atomic_mode' will not be visible outside of this function [-Wvisibility]
enum mcopy_atomic_mode mode,
^
kernel/sched/fair.c:5388:6: warning: no previous prototype for function 'init_cfs_bandwidth' [-Wmissing-prototypes]
void init_cfs_bandwidth(struct cfs_bandwidth *cfs_b) {}
^
kernel/sched/fair.c:5388:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void init_cfs_bandwidth(struct cfs_bandwidth *cfs_b) {}
^
static
kernel/sched/fair.c:11195:6: warning: no previous prototype for function 'free_fair_sched_group' [-Wmissing-prototypes]
void free_fair_sched_group(struct task_group *tg) { }
^
kernel/sched/fair.c:11195:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void free_fair_sched_group(struct task_group *tg) { }
^
static
kernel/sched/fair.c:11197:5: warning: no previous prototype for function 'alloc_fair_sched_group' [-Wmissing-prototypes]
int alloc_fair_sched_group(struct task_group *tg, struct task_group *parent)
^
kernel/sched/fair.c:11197:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
int alloc_fair_sched_group(struct task_group *tg, struct task_group *parent)
^
static
kernel/sched/fair.c:11202:6: warning: no previous prototype for function 'online_fair_sched_group' [-Wmissing-prototypes]
void online_fair_sched_group(struct task_group *tg) { }
^
kernel/sched/fair.c:11202:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void online_fair_sched_group(struct task_group *tg) { }
^
static
kernel/sched/fair.c:11204:6: warning: no previous prototype for function 'unregister_fair_sched_group' [-Wmissing-prototypes]
void unregister_fair_sched_group(struct task_group *tg) { }
^
kernel/sched/fair.c:11204:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void unregister_fair_sched_group(struct task_group *tg) { }
^
static
kernel/sched/fair.c:486:20: warning: unused function 'list_del_leaf_cfs_rq' [-Wunused-function]
static inline void list_del_leaf_cfs_rq(struct cfs_rq *cfs_rq)
^
kernel/sched/fair.c:2985:20: warning: unused function 'account_numa_enqueue' [-Wunused-function]
static inline void account_numa_enqueue(struct rq *rq, struct task_struct *p)
^
kernel/sched/fair.c:2989:20: warning: unused function 'account_numa_dequeue' [-Wunused-function]
static inline void account_numa_dequeue(struct rq *rq, struct task_struct *p)
^
kernel/sched/fair.c:2993:20: warning: unused function 'update_scan_period' [-Wunused-function]
static inline void update_scan_period(struct task_struct *p, int new_cpu)
^
kernel/sched/fair.c:4083:20: warning: unused function 'remove_entity_load_avg' [-Wunused-function]
static inline void remove_entity_load_avg(struct sched_entity *se) {}
^
kernel/sched/fair.c:5369:20: warning: unused function 'sync_throttle' [-Wunused-function]
static inline void sync_throttle(struct task_group *tg, int cpu) {}
^
kernel/sched/fair.c:5382:19: warning: unused function 'throttled_lb_pair' [-Wunused-function]
static inline int throttled_lb_pair(struct task_group *tg,
^
kernel/sched/fair.c:5394:37: warning: unused function 'tg_cfs_bandwidth' [-Wunused-function]
static inline struct cfs_bandwidth *tg_cfs_bandwidth(struct task_group *tg)
^
kernel/sched/fair.c:5398:20: warning: unused function 'destroy_cfs_bandwidth' [-Wunused-function]
static inline void destroy_cfs_bandwidth(struct cfs_bandwidth *cfs_b) {}
^
kernel/sched/fair.c:5399:20: warning: unused function 'update_runtime_enabled' [-Wunused-function]
static inline void update_runtime_enabled(struct rq *rq) {}
^
kernel/sched/fair.c:5400:20: warning: unused function 'unthrottle_offline_cfs_rqs' [-Wunused-function]
static inline void unthrottle_offline_cfs_rqs(struct rq *rq) {}
^
17 warnings generated.
--
In file included from kernel/sched/rt.c:6:
In file included from kernel/sched/sched.h:53:
In file included from include/linux/migrate.h:8:quoted
include/linux/hugetlb.h:142:10: warning: declaration of 'enum mcopy_atomic_mode' will not be visible outside of this function [-Wvisibility]
enum mcopy_atomic_mode mode,
^
kernel/sched/rt.c:253:6: warning: no previous prototype for function 'free_rt_sched_group' [-Wmissing-prototypes]
void free_rt_sched_group(struct task_group *tg) { }
^
kernel/sched/rt.c:253:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void free_rt_sched_group(struct task_group *tg) { }
^
static
kernel/sched/rt.c:255:5: warning: no previous prototype for function 'alloc_rt_sched_group' [-Wmissing-prototypes]
int alloc_rt_sched_group(struct task_group *tg, struct task_group *parent)
^
kernel/sched/rt.c:255:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
int alloc_rt_sched_group(struct task_group *tg, struct task_group *parent)
^
static
kernel/sched/rt.c:669:6: warning: no previous prototype for function 'sched_rt_bandwidth_account' [-Wmissing-prototypes]
bool sched_rt_bandwidth_account(struct rt_rq *rt_rq)
^
kernel/sched/rt.c:669:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
bool sched_rt_bandwidth_account(struct rt_rq *rt_rq)
^
static
kernel/sched/rt.c:421:20: warning: unused function 'need_pull_rt_task' [-Wunused-function]
static inline bool need_pull_rt_task(struct rq *rq, struct task_struct *prev)
^
kernel/sched/rt.c:426:20: warning: unused function 'pull_rt_task' [-Wunused-function]
static inline void pull_rt_task(struct rq *this_rq)
^
kernel/sched/rt.c:476:20: warning: unused function 'rt_task_fits_capacity' [-Wunused-function]
static inline bool rt_task_fits_capacity(struct task_struct *p, int cpu)
^
kernel/sched/rt.c:1113:6: warning: unused function 'inc_rt_prio_smp' [-Wunused-function]
void inc_rt_prio_smp(struct rt_rq *rt_rq, int prio, int prev_prio) {}
^
kernel/sched/rt.c:1115:6: warning: unused function 'dec_rt_prio_smp' [-Wunused-function]
void dec_rt_prio_smp(struct rt_rq *rt_rq, int prio, int prev_prio) {}
^
9 warnings generated.
--
In file included from kernel/sched/deadline.c:18:
In file included from kernel/sched/sched.h:53:
In file included from include/linux/migrate.h:8:quoted
include/linux/hugetlb.h:142:10: warning: declaration of 'enum mcopy_atomic_mode' will not be visible outside of this function [-Wvisibility]
enum mcopy_atomic_mode mode,
^
kernel/sched/deadline.c:700:20: warning: unused function 'need_pull_dl_task' [-Wunused-function]
static inline bool need_pull_dl_task(struct rq *rq, struct task_struct *prev)
^
kernel/sched/deadline.c:705:20: warning: unused function 'pull_dl_task' [-Wunused-function]
static inline void pull_dl_task(struct rq *rq)
^
3 warnings generated.
--
In file included from mm/page_alloc.c:61:
In file included from include/linux/migrate.h:8:quoted
include/linux/hugetlb.h:142:10: warning: declaration of 'enum mcopy_atomic_mode' will not be visible outside of this function [-Wvisibility]
enum mcopy_atomic_mode mode,
^
mm/page_alloc.c:3597:15: warning: no previous prototype for function 'should_fail_alloc_page' [-Wmissing-prototypes]
noinline bool should_fail_alloc_page(gfp_t gfp_mask, unsigned int order)
^
mm/page_alloc.c:3597:10: note: declare 'static' if the function is not intended to be used outside of this translation unit
noinline bool should_fail_alloc_page(gfp_t gfp_mask, unsigned int order)
^
static
mm/page_alloc.c:6258:23: warning: no previous prototype for function 'memmap_init' [-Wmissing-prototypes]
void __meminit __weak memmap_init(unsigned long size, int nid,
^
mm/page_alloc.c:6258:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void __meminit __weak memmap_init(unsigned long size, int nid,
^
static
3 warnings generated.
--
In file included from mm/hugetlb.c:39:quoted
include/linux/hugetlb.h:142:10: warning: declaration of 'enum mcopy_atomic_mode' will not be visible outside of this function [-Wvisibility]
enum mcopy_atomic_mode mode,
^quoted
mm/hugetlb.c:4659:13: warning: declaration of 'enum mcopy_atomic_mode' will not be visible outside of this function [-Wvisibility]
enum mcopy_atomic_mode mode,
^
mm/hugetlb.c:4654:5: error: conflicting types for 'hugetlb_mcopy_atomic_pte'
int hugetlb_mcopy_atomic_pte(struct mm_struct *dst_mm,
^
include/linux/hugetlb.h:138:5: note: previous declaration is here
int hugetlb_mcopy_atomic_pte(struct mm_struct *dst_mm, pte_t *dst_pte,
^
mm/hugetlb.c:4659:31: error: variable has incomplete type 'enum mcopy_atomic_mode'
enum mcopy_atomic_mode mode,
^
mm/hugetlb.c:4659:13: note: forward declaration of 'enum mcopy_atomic_mode'
enum mcopy_atomic_mode mode,
^
mm/hugetlb.c:4675:25: error: use of undeclared identifier 'MCOPY_ATOMIC_CONTINUE'
if (!*pagep && mode != MCOPY_ATOMIC_CONTINUE) {
^
mm/hugetlb.c:4692:21: error: use of undeclared identifier 'MCOPY_ATOMIC_CONTINUE'
} else if (mode == MCOPY_ATOMIC_CONTINUE) {
^
mm/hugetlb.c:4711:27: error: use of undeclared identifier 'MCOPY_ATOMIC_CONTINUE'
if (vm_shared && mode != MCOPY_ATOMIC_CONTINUE) {
^
mm/hugetlb.c:4771:14: error: use of undeclared identifier 'MCOPY_ATOMIC_CONTINUE'
if (mode != MCOPY_ATOMIC_CONTINUE)
^
2 warnings and 6 errors generated.
--
In file included from mm/z3fold.c:33:
In file included from include/linux/migrate.h:8:quoted
include/linux/hugetlb.h:142:10: warning: declaration of 'enum mcopy_atomic_mode' will not be visible outside of this function [-Wvisibility]
enum mcopy_atomic_mode mode,
^
mm/z3fold.c:287:37: warning: unused function 'handle_to_z3fold_header' [-Wunused-function]
static inline struct z3fold_header *handle_to_z3fold_header(unsigned long h)
^
2 warnings generated.
vim +142 include/linux/hugetlb.h
108
109 void reset_vma_resv_huge_pages(struct vm_area_struct *vma);
110 int hugetlb_sysctl_handler(struct ctl_table *, int, void *, size_t *, loff_t *);
111 int hugetlb_overcommit_handler(struct ctl_table *, int, void *, size_t *,
112 loff_t *);
113 int hugetlb_treat_movable_handler(struct ctl_table *, int, void *, size_t *,
114 loff_t *);
115 int hugetlb_mempolicy_sysctl_handler(struct ctl_table *, int, void *, size_t *,
116 loff_t *);
117
118 int copy_hugetlb_page_range(struct mm_struct *, struct mm_struct *, struct vm_area_struct *);
119 long follow_hugetlb_page(struct mm_struct *, struct vm_area_struct *,
120 struct page **, struct vm_area_struct **,
121 unsigned long *, unsigned long *, long, unsigned int,
122 int *);
123 void unmap_hugepage_range(struct vm_area_struct *,
124 unsigned long, unsigned long, struct page *);
125 void __unmap_hugepage_range_final(struct mmu_gather *tlb,
126 struct vm_area_struct *vma,
127 unsigned long start, unsigned long end,
128 struct page *ref_page);
129 void __unmap_hugepage_range(struct mmu_gather *tlb, struct vm_area_struct *vma,
130 unsigned long start, unsigned long end,
131 struct page *ref_page);
132 void hugetlb_report_meminfo(struct seq_file *);
133 int hugetlb_report_node_meminfo(char *buf, int len, int nid);
134 void hugetlb_show_meminfo(void);
135 unsigned long hugetlb_total_pages(void);
136 vm_fault_t hugetlb_fault(struct mm_struct *mm, struct vm_area_struct *vma,
137 unsigned long address, unsigned int flags);
138 int hugetlb_mcopy_atomic_pte(struct mm_struct *dst_mm, pte_t *dst_pte,
139 struct vm_area_struct *dst_vma,
140 unsigned long dst_addr,
141 unsigned long src_addr,
> 142 enum mcopy_atomic_mode mode,
143 struct page **pagep);
144 int hugetlb_reserve_pages(struct inode *inode, long from, long to,
145 struct vm_area_struct *vma,
146 vm_flags_t vm_flags);
147 long hugetlb_unreserve_pages(struct inode *inode, long start, long end,
148 long freed);
149 bool isolate_huge_page(struct page *page, struct list_head *list);
150 void putback_active_hugepage(struct page *page);
151 void move_hugetlb_state(struct page *oldpage, struct page *newpage, int reason);
152 void free_huge_page(struct page *page);
153 void hugetlb_fix_reserve_counts(struct inode *inode);
154 extern struct mutex *hugetlb_fault_mutex_table;
155 u32 hugetlb_fault_mutex_hash(struct address_space *mapping, pgoff_t idx);
156
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org Attachments
- .config.gz [application/gzip] 43402 bytes