Messages in this thread | | | From | Bart Van Assche <> | Subject | Re: [PATCH] linux/types.h: Restore the ability to disable sparse endianness checks | Date | Tue, 10 Oct 2017 16:38:16 +0000 |
| |
On Mon, 2017-10-09 at 20:42 +0300, Michael S. Tsirkin wrote: > On Mon, Oct 09, 2017 at 03:07:42PM +0000, Bart Van Assche wrote: > > On Mon, 2017-10-09 at 16:22 +0300, Michael S. Tsirkin wrote: > > > 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 <bart.vanassche@wdc.com> > > > > Cc: Christoph Hellwig <hch@lst.de> > > > > Cc: Linus Torvalds <torvalds@linux-foundation.org> > > > > > > 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. > > > > I agree with what you wrote. And what you described is what my patch implements > > - keep endianness checking enabled by default and make it possible to disable it > > selectively. Does that mean that you agree with the patch I posted? > > I just mean I'd expect a patchset setting the flag for the broken > drivers. Presumably this will help trigger some action.
Hello MST,
If I would add something like ccflags-y += -D__CHECK_ENDIAN__=0 to the Makefile of drivers that are not endianness clean then that would make it easier for driver authors to ignore endianness warnings reported by sparse. I prefer that they have to add CF=-D__CHECK_ENDIAN__=0 to the command line when verifying a driver with sparse to get rid of the sparse endianness warnings. Do you agree with this?
Thanks,
Bart. | |