From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755390AbdJINWi (ORCPT ); Mon, 9 Oct 2017 09:22:38 -0400 Received: from mx1.redhat.com ([209.132.183.28]:41854 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755377AbdJINWh (ORCPT ); Mon, 9 Oct 2017 09:22:37 -0400 DMARC-Filter: OpenDMARC Filter v1.3.2 mx1.redhat.com C5948883C3 Authentication-Results: ext-mx02.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=redhat.com Authentication-Results: ext-mx02.extmail.prod.ext.phx2.redhat.com; spf=fail smtp.mailfrom=mst@redhat.com Date: Mon, 9 Oct 2017 16:22:35 +0300 From: "Michael S. Tsirkin" To: Bart Van Assche Cc: linux-kernel@vger.kernel.org, Christoph Hellwig , Linus Torvalds Subject: Re: [PATCH] linux/types.h: Restore the ability to disable sparse endianness checks Message-ID: <20171009162008-mutt-send-email-mst@kernel.org> References: <20171006172353.16758-1-bart.vanassche@wdc.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20171006172353.16758-1-bart.vanassche@wdc.com> X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.26]); Mon, 09 Oct 2017 13:22:37 +0000 (UTC) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Oct 06, 2017 at 10:23:53AM -0700, Bart Van Assche wrote: > The purpose of patch "linux/types.h: enable endian checks for all > sparse builds" was to encourage driver authors to annotate > endianness correctly in their drivers. However, since that patch > went upstream no endianness annotations in drivers have been fixed. > I think that this shows that the followed approach does not work, > probably because several driver authors do not use sparse. Restore > the ability to disable sparse endianness checks such that it > becomes again easy to review other sparse diagnostics for people > who want to analyze drivers they are not the author of. > > References: commit 05de97003c77 ("linux/types.h: enable endian checks for all sparse builds") > Signed-off-by: Bart Van Assche > Cc: Christoph Hellwig > Cc: Linus Torvalds I still think the new default is good. You probably want ability to disable these checks selectively for the specific drivers though. Makes it easier to spot what needs to be fixed. > --- > include/uapi/linux/types.h | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/include/uapi/linux/types.h b/include/uapi/linux/types.h > index 41e5914f0a8e..d3dcb0764c45 100644 > --- a/include/uapi/linux/types.h > +++ b/include/uapi/linux/types.h > @@ -23,7 +23,11 @@ > #else > #define __bitwise__ > #endif > +#if !defined(__CHECK_ENDIAN__) || __CHECK_ENDIAN__ != 0 > #define __bitwise __bitwise__ > +#else > +#define __bitwise > +#endif > > typedef __u16 __bitwise __le16; > typedef __u16 __bitwise __be16; > -- > 2.14.2