Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1945996AbbHGQMV (ORCPT ); Fri, 7 Aug 2015 12:12:21 -0400 Received: from mail-wi0-f171.google.com ([209.85.212.171]:38663 "EHLO mail-wi0-f171.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751297AbbHGQMS (ORCPT ); Fri, 7 Aug 2015 12:12:18 -0400 Date: Fri, 7 Aug 2015 17:12:15 +0100 From: Andy Whitcroft To: Joe Perches Cc: Ross Zwisler , LKML , "sparse@chrisli.org" , Linus Torvalds Subject: Re: false positives with checkpatch Message-ID: <20150807161215.GB10173@bark> References: <1438959684.17630.4.camel@linux.intel.com> <1438961867.2322.43.camel@perches.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1438961867.2322.43.camel@perches.com> User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2110 Lines: 68 On Fri, Aug 07, 2015 at 08:37:47AM -0700, Joe Perches wrote: > On Fri, 2015-08-07 at 09:01 -0600, Ross Zwisler wrote: > > When running checkpatch.pl against my latest patch set, I hit what I think are > > two false positives. Here are the related lines: > > > > +static inline void flush_cache_pmem(void __pmem *addr, size_t size) > > +{ > > + if (arch_has_pmem_api()) > > + arch_flush_cache_pmem(addr, size); > > +} > > > > The error was: > > > > ERROR: need consistent spacing around '*' (ctx:WxV) > > #88: FILE: include/linux/pmem.h:167: > > +static inline void flush_cache_pmem(void __pmem *addr, size_t size) > > ^ > > The (void __annotation *variable) syntax is correct, I believe, and is used > > consistently for both __iomem and __pmem annotations. > > checkpatch doesn't know what a __pmem is. > Neither did I until a second ago. > > Are there any other sparse annotations that were > added by this subsystem? (I don't notice any) > > They need to be added to checkpatch's $Sparse use > so there's a patch proposal below this. > > It looks like compiler.h's #define __safe is unused > in the linux kernel and it could be deleted as it's > not a gcc attribute. > > Does anyone know? > > Linus' commit is unrevealing. > > commit e6b8f25bd950947d06c59432cbafd320dda66abf > Author: Linus Torvalds > Date: Fri Apr 16 03:49:32 2004 -0700 > > Add sparse __safe annotation > > --- > scripts/checkpatch.pl | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl > index fd8e502..6362ec3 100755 > --- a/scripts/checkpatch.pl > +++ b/scripts/checkpatch.pl > @@ -264,6 +264,7 @@ our $Sparse = qr{ > __kernel| > __force| > __iomem| > + __pmem| > __must_check| > __init_refok| > __kprobes| Looks good to me. -apw -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/