[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <Z17nSh5XhsL3DBBz@rli9-mobl>
Date: Sun, 15 Dec 2024 22:27:22 +0800
From: Philip Li <philip.li@...el.com>
To: kernel test robot <lkp@...el.com>
CC: Kees Cook <keescook@...omium.org>, <oe-kbuild-all@...ts.linux.dev>,
<linux-kernel@...r.kernel.org>, Jonathan Corbet <corbet@....net>
Subject: Re: arch/x86/lib/usercopy_64.c:29: warning: Function parameter or
struct member 'addr' not described in 'clean_cache_range'
On Sun, Dec 15, 2024 at 05:38:45PM +0800, kernel test robot wrote:
> tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
> head: 2d8308bf5b67dff50262d8a9260a50113b3628c6
> commit: 0c3ebff535956d2718594dc90aa9cc87521ec9fd scripts: kernel-doc: Clarify missing struct member description
> date: 1 year ago
> config: x86_64-allnoconfig (https://download.01.org/0day-ci/archive/20241215/202412151701.yujios7D-lkp@intel.com/config)
> compiler: gcc-12 (Debian 12.2.0-14) 12.2.0
> reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241215/202412151701.yujios7D-lkp@intel.com/reproduce)
>
> If you fix the issue in a separate patch/commit (i.e. not just a new version of
> the same patch/commit), kindly add following tags
> | Reported-by: kernel test robot <lkp@...el.com>
> | Closes: https://lore.kernel.org/oe-kbuild-all/202412151701.yujios7D-lkp@intel.com/
>
> All warnings (new ones prefixed by >>):
Sorry, kindly ignore this, the commit is not the actual cause of
the issue.
>
> >> arch/x86/lib/usercopy_64.c:29: warning: Function parameter or struct member 'addr' not described in 'clean_cache_range'
> arch/x86/lib/usercopy_64.c:29: warning: Excess function parameter 'vaddr' description in 'clean_cache_range'
> --
> >> kernel/reboot.c:226: warning: Function parameter or struct member 'cmd' not described in 'do_kernel_restart'
> >> kernel/reboot.c:952: warning: Function parameter or struct member 'poweroff_delay_ms' not described in 'hw_failure_emergency_poweroff'
> --
> >> arch/x86/mm/pgtable.c:650: warning: Function parameter or struct member 'reserve' not described in 'reserve_top_address'
> >> arch/x86/mm/pgtable.c:699: warning: Function parameter or struct member 'p4d' not described in 'p4d_set_huge'
> >> arch/x86/mm/pgtable.c:699: warning: Function parameter or struct member 'addr' not described in 'p4d_set_huge'
> >> arch/x86/mm/pgtable.c:699: warning: Function parameter or struct member 'prot' not described in 'p4d_set_huge'
> >> arch/x86/mm/pgtable.c:709: warning: Function parameter or struct member 'p4d' not described in 'p4d_clear_huge'
> >> arch/x86/mm/pgtable.c:726: warning: Function parameter or struct member 'pud' not described in 'pud_set_huge'
> >> arch/x86/mm/pgtable.c:726: warning: Function parameter or struct member 'addr' not described in 'pud_set_huge'
> >> arch/x86/mm/pgtable.c:726: warning: Function parameter or struct member 'prot' not described in 'pud_set_huge'
> >> arch/x86/mm/pgtable.c:752: warning: Function parameter or struct member 'pmd' not described in 'pmd_set_huge'
> >> arch/x86/mm/pgtable.c:752: warning: Function parameter or struct member 'addr' not described in 'pmd_set_huge'
> >> arch/x86/mm/pgtable.c:752: warning: Function parameter or struct member 'prot' not described in 'pmd_set_huge'
> >> arch/x86/mm/pgtable.c:779: warning: Function parameter or struct member 'pud' not described in 'pud_clear_huge'
> >> arch/x86/mm/pgtable.c:794: warning: Function parameter or struct member 'pmd' not described in 'pmd_clear_huge'
> --
> >> arch/x86/kernel/apic/apic.c:2170: warning: Function parameter or struct member 'spurious_interrupt' not described in 'DEFINE_IDTENTRY_IRQ'
> arch/x86/kernel/apic/apic.c:2170: warning: expecting prototype for spurious_interrupt(). Prototype was for DEFINE_IDTENTRY_IRQ() instead
> --
> >> arch/x86/mm/pat/memtype.c:710: warning: Function parameter or struct member 'pfn' not described in 'pat_pfn_immune_to_uc_mtrr'
> --
> >> kernel/time/tick-broadcast.c:1026: warning: Function parameter or struct member 'bc' not described in 'tick_broadcast_setup_oneshot'
> >> kernel/time/tick-broadcast.c:1026: warning: Function parameter or struct member 'from_periodic' not described in 'tick_broadcast_setup_oneshot'
>
>
> vim +29 arch/x86/lib/usercopy_64.c
>
> ^1da177e4c3f415 arch/x86_64/lib/usercopy.c Linus Torvalds 2005-04-16 13
> ^1da177e4c3f415 arch/x86_64/lib/usercopy.c Linus Torvalds 2005-04-16 14 /*
> ^1da177e4c3f415 arch/x86_64/lib/usercopy.c Linus Torvalds 2005-04-16 15 * Zero Userspace
> ^1da177e4c3f415 arch/x86_64/lib/usercopy.c Linus Torvalds 2005-04-16 16 */
> ^1da177e4c3f415 arch/x86_64/lib/usercopy.c Linus Torvalds 2005-04-16 17
> 0aed55af88345b5 arch/x86/lib/usercopy_64.c Dan Williams 2017-05-29 18 #ifdef CONFIG_ARCH_HAS_UACCESS_FLUSHCACHE
> 0aed55af88345b5 arch/x86/lib/usercopy_64.c Dan Williams 2017-05-29 19 /**
> 0aed55af88345b5 arch/x86/lib/usercopy_64.c Dan Williams 2017-05-29 20 * clean_cache_range - write back a cache range with CLWB
> 0aed55af88345b5 arch/x86/lib/usercopy_64.c Dan Williams 2017-05-29 21 * @vaddr: virtual start address
> 0aed55af88345b5 arch/x86/lib/usercopy_64.c Dan Williams 2017-05-29 22 * @size: number of bytes to write back
> 0aed55af88345b5 arch/x86/lib/usercopy_64.c Dan Williams 2017-05-29 23 *
> 0aed55af88345b5 arch/x86/lib/usercopy_64.c Dan Williams 2017-05-29 24 * Write back a cache range using the CLWB (cache line write back)
> 0aed55af88345b5 arch/x86/lib/usercopy_64.c Dan Williams 2017-05-29 25 * instruction. Note that @size is internally rounded up to be cache
> 0aed55af88345b5 arch/x86/lib/usercopy_64.c Dan Williams 2017-05-29 26 * line size aligned.
> 0aed55af88345b5 arch/x86/lib/usercopy_64.c Dan Williams 2017-05-29 27 */
> 0aed55af88345b5 arch/x86/lib/usercopy_64.c Dan Williams 2017-05-29 28 static void clean_cache_range(void *addr, size_t size)
> 0aed55af88345b5 arch/x86/lib/usercopy_64.c Dan Williams 2017-05-29 @29 {
> 0aed55af88345b5 arch/x86/lib/usercopy_64.c Dan Williams 2017-05-29 30 u16 x86_clflush_size = boot_cpu_data.x86_clflush_size;
> 0aed55af88345b5 arch/x86/lib/usercopy_64.c Dan Williams 2017-05-29 31 unsigned long clflush_mask = x86_clflush_size - 1;
> 0aed55af88345b5 arch/x86/lib/usercopy_64.c Dan Williams 2017-05-29 32 void *vend = addr + size;
> 0aed55af88345b5 arch/x86/lib/usercopy_64.c Dan Williams 2017-05-29 33 void *p;
> 0aed55af88345b5 arch/x86/lib/usercopy_64.c Dan Williams 2017-05-29 34
> 0aed55af88345b5 arch/x86/lib/usercopy_64.c Dan Williams 2017-05-29 35 for (p = (void *)((unsigned long)addr & ~clflush_mask);
> 0aed55af88345b5 arch/x86/lib/usercopy_64.c Dan Williams 2017-05-29 36 p < vend; p += x86_clflush_size)
> 0aed55af88345b5 arch/x86/lib/usercopy_64.c Dan Williams 2017-05-29 37 clwb(p);
> 0aed55af88345b5 arch/x86/lib/usercopy_64.c Dan Williams 2017-05-29 38 }
> 0aed55af88345b5 arch/x86/lib/usercopy_64.c Dan Williams 2017-05-29 39
>
> :::::: The code at line 29 was first introduced by commit
> :::::: 0aed55af88345b5d673240f90e671d79662fb01e x86, uaccess: introduce copy_from_iter_flushcache for pmem / cache-bypass operations
>
> :::::: TO: Dan Williams <dan.j.williams@...el.com>
> :::::: CC: Dan Williams <dan.j.williams@...el.com>
>
> --
> 0-DAY CI Kernel Test Service
> https://github.com/intel/lkp-tests/wiki
>
Powered by blists - more mailing lists