Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752066AbdHGGIy (ORCPT ); Mon, 7 Aug 2017 02:08:54 -0400 Received: from mail.kapsi.fi ([91.232.154.25]:53115 "EHLO mail.kapsi.fi" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751795AbdHGGIw (ORCPT ); Mon, 7 Aug 2017 02:08:52 -0400 Date: Mon, 7 Aug 2017 09:08:49 +0300 From: Mikko Rapeli To: James Bottomley Cc: linux-kernel@vger.kernel.org, linux-api@vger.kernel.org, linux-scsi@vger.kernel.org Subject: Re: [PATCH v06 04/36] uapi scsi/scsi_netlink_fc.h: use __u16, __u32 and __u64 from linux/types.h Message-ID: <20170807060849.GC31101@lakka.kapsi.fi> References: <20170806164428.2273-1-mikko.rapeli@iki.fi> <20170806164428.2273-5-mikko.rapeli@iki.fi> <1502043773.2673.9.camel@HansenPartnership.com> <20170806204224.GE28459@lakka.kapsi.fi> <1502057361.2673.21.camel@HansenPartnership.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <1502057361.2673.21.camel@HansenPartnership.com> X-SA-Exim-Connect-IP: 2001:1bc8:1004::1 X-SA-Exim-Mail-From: mcfrisk@kapsi.fi X-SA-Exim-Scanned: No (on mail.kapsi.fi); SAEximRunCond expanded to false Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2004 Lines: 45 On Sun, Aug 06, 2017 at 03:09:21PM -0700, James Bottomley wrote: > On Sun, 2017-08-06 at 23:42 +0300, Mikko Rapeli wrote: > > Hi, > > > > On Sun, Aug 06, 2017 at 11:22:53AM -0700, James Bottomley wrote: > > > > > > On Sun, 2017-08-06 at 18:43 +0200, Mikko Rapeli wrote: > > > > > > > > Fixes userspace compilation errors like: > > > > > > > > scsi/scsi_netlink_fc.h:60:2: error: expected specifier-qualifier- > > > > list  before ‘uint64_t’ > > > > > > Rather than patching the kernel, why not #include in > > > your userspace programme? > > > > The userspace program is actually a test which checks that uapi > > headers compile alone because several headers are not compiling at > > all and/or require special tricks. The test is available here: > > > > http://marc.info/?l=linux-kernel&m=150203944104544&w=2 > > But you don't seem to be detecting or fixing an existing problem. >  These types are width unambiguous and all current consumers of these > headers include stdint.h so you're churning the kernel for a problem > which doesn't currently exist for any consumer of this header. The header file dependencies of scsi/scsi_netlink_fc.h are not explicit. I will propose a patch which includes in userspace then. > I can agree not adding any more external uint_t types for newly > exported headers so new consumers don't depend on an external standard > is reasonable, so checkpatch should warn if someone tries to add them; > I just don't see the benefit of going over the whole kernel changing > stuff that has worked fine for years.  Now if you can tell me there's > an actual bug somewhere, that's different ... Tools parsing and checking uapi headers need to be able to compile them and thus need the explicit list of dependencies. If is a required dependency, then scsi/scsi_netlink_fc.h should include it. scsi/scsi_netlink_fc.h is one of 42 problematic headers left in current kernel and I want to fix it one way or the other. -Mikko