On Sat, Jun 23, 2018 at 7:12 PM christophe leroy <christophe.le...@c-s.fr> wrote: > > > > Le 22/06/2018 à 21:27, Mathieu Malaterre a écrit : > > ‘type’ is only used when CONFIG_DEBUG_HIGHMEM is set. So add a possibly > > unused tag to variable. Remove warning treated as error with W=1: > > > > arch/powerpc/mm/highmem.c:59:6: error: variable ‘type’ set but not used > > [-Werror=unused-but-set-variable] > > Is type neeeded at all when CONFIG_DEBUG_HIGHMEM is not set ? > > The call type = kmap_atomic_idx(); seems useless when > CONFIG_DEBUG_HIGHMEM isn't set. Couldn't we just most type definition > and setting inside the CONFIG_DEBUG_HIGHMEM {} below ? > > Alternatively, maybe you could replace the #ifdef CONFIG_DEBUG_HIGHMEM > by an if (IS_ENABLED(CONFIG_DEBUG_HIGHMEM)) ?
I am not familiar with this code. But starring at other arch implementations (eg. `arch/x86/mm/highmem_32.c`), it feels like powerpc is skipping `pte_clear(&init_mm, vaddr, kmap_pte-idx);` unless `CONFIG_DEBUG_HIGHMEM=y`. Could someone please confirm this is the correct behavior ? Or else I can rewrite the code a bit like `arch/arm/mm/highmem.c` which skips `set_fixmap_pte(idx, __pte(0));` unless `CONFIG_DEBUG_HIGHMEM=y`. > Christophe > > > > > Signed-off-by: Mathieu Malaterre <ma...@debian.org> > > --- > > arch/powerpc/mm/highmem.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/arch/powerpc/mm/highmem.c b/arch/powerpc/mm/highmem.c > > index 668e87d03f9e..82a0e37557a5 100644 > > --- a/arch/powerpc/mm/highmem.c > > +++ b/arch/powerpc/mm/highmem.c > > @@ -56,7 +56,7 @@ EXPORT_SYMBOL(kmap_atomic_prot); > > void __kunmap_atomic(void *kvaddr) > > { > > unsigned long vaddr = (unsigned long) kvaddr & PAGE_MASK; > > - int type; > > + int type __maybe_unused; > > > > if (vaddr < __fix_to_virt(FIX_KMAP_END)) { > > pagefault_enable(); > > > > --- > L'absence de virus dans ce courrier électronique a été vérifiée par le > logiciel antivirus Avast. > https://www.avast.com/antivirus >