On Tue, Jun 30, 2026 at 8:19 AM Andrew Morton <[email protected]> wrote:
>
> On Mon, 29 Jun 2026 16:58:34 +0800 kernel test robot <[email protected]> wrote:
>
> > tree:   https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-new
> > head:   88cefc306c43b58d9bb65c9e96e284306710d961
> > commit: 80c453511b6ee1af0e4db83c3db0020215c4eaf0 [59/142] mm/vmalloc: map 
> > contiguous pages in batches for vmap() if possible
> > config: csky-allnoconfig 
> > (https://download.01.org/0day-ci/archive/20260629/[email protected]/config)
> > compiler: csky-linux-gcc (GCC) 16.1.0
> > reproduce (this is a W=1 build): 
> > (https://download.01.org/0day-ci/archive/20260629/[email protected]/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 <[email protected]>
> > | Closes: 
> > https://lore.kernel.org/oe-kbuild-all/[email protected]/
> >
> > All warnings (new ones prefixed by >>):
> >
> >    mm/vmalloc.c: In function 'vmap_batched':
> > >> mm/vmalloc.c:3590:23: warning: unused variable 'start' 
> > >> [-Wunused-variable]
> >     3590 |         unsigned long start = addr, map_addr = addr;
> >          |                       ^~~~~
>
> Sigh.
>
>         unsigned long start = addr, map_addr = addr;
>         ...
>         flush_cache_vmap(start, end);
>
> See, this is our punishment for writing kernel code in CPP rather than
> in C.
>
> I'll queue (and test) the below.  It should be OK -
> arch/csky/abiv1/inc/abi/cacheflush.h directly includes asm/cache.h
> which declares cache_wbinv_all().
>
>
> From: Andrew Morton <[email protected]>
> Subject: csky: implement flush_cache_vmap() in C
> Date: Mon Jun 29 05:07:51 PM PDT 2026
>
> To avoid getting an unused-var warning from
>
>         unsigned long start = something;
>         ...
>         flush_cache_vmap(start, ...);
>
> Cc: Guo Ren <[email protected]>
> Cc: Andrew Donnellan <[email protected]>
> Cc: Anshuman Khandual <[email protected]>
> Cc: "Barry Song (Xiaomi)" <[email protected]>
> Cc: Catalin Marinas <[email protected]>
> Cc: David Hildenbrand <[email protected]>
> Cc: Dev Jain <[email protected]>
> Cc: Leo Yan <[email protected]>
> Cc: Mike Rapoport <[email protected]>
> Cc: Ryan Roberts <[email protected]>
> Cc: Uladzislau Rezki <[email protected]>
> Cc: Wen Jiang <[email protected]>
> Cc: Wen Jiang <[email protected]>
> Cc: Will Deacon <[email protected]>
> Cc: Xueyuan Chen <[email protected]>
> Signed-off-by: Andrew Morton <[email protected]>
> ---
>
>  arch/csky/abiv1/inc/abi/cacheflush.h |    7 ++++++-
>  1 file changed, 6 insertions(+), 1 deletion(-)
>
> --- 
> a/arch/csky/abiv1/inc/abi/cacheflush.h~csky-implement-flush_cache_vmap-in-c
> +++ a/arch/csky/abiv1/inc/abi/cacheflush.h
> @@ -42,7 +42,12 @@ static inline void flush_anon_page(struc
>   * Use cache_wbinv_all() here and need to be improved in future.
>   */
>  extern void flush_cache_range(struct vm_area_struct *vma, unsigned long 
> start, unsigned long end);
> -#define flush_cache_vmap(start, end)           cache_wbinv_all()
> +
> +static inline void flush_cache_vmap(unsigned long start, unsigned long end)
> +{
> +       cache_wbinv_all();
> +}
> +
Thx for the fixup.

Reviewed-by: Guo Ren <[email protected]>

-- 
Best Regards
 Guo Ren

Reply via email to