Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1467924 > unrolled thread

[PATCH v05 00/72] Userspace compile test and fixes for exported uapi header files

Started byMikko Rapeli <mikko.rapeli@iki.fi>
First post2016-08-22 20:50 +0200
Last post2016-08-22 21:50 +0200
Articles 20 on this page of 87 — 11 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH v05 00/72] Userspace compile test and fixes for exported uapi header files Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 20:50 +0200
    [PATCH v05 31/72] include/uapi/linux/mroute.h: include linux/in.h Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 20:50 +0200
      Re: [PATCH v05 31/72] include/uapi/linux/mroute.h: include  linux/in.h David Miller <davem@davemloft.net> - 2016-08-23 01:40 +0200
    [PATCH v05 18/72] include/uapi/asm-generic/signal.h: use __kernel_size_t instead of size_t Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 20:50 +0200
    [PATCH v05 27/72] linux/if.h linux/hdlc/ioctl.h: move IFNAMSIZ definition to hdlc/ioctl.h Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 20:50 +0200
      Re: [PATCH v05 27/72] linux/if.h linux/hdlc/ioctl.h: move IFNAMSIZ  definition to hdlc/ioctl.h David Miller <davem@davemloft.net> - 2016-08-23 01:40 +0200
        Re: [PATCH v05 27/72] linux/if.h linux/hdlc/ioctl.h: move IFNAMSIZ  definition to hdlc/ioctl.h David Miller <davem@davemloft.net> - 2016-08-23 09:10 +0200
          Re: [PATCH v05 27/72] linux/if.h linux/hdlc/ioctl.h: move IFNAMSIZ  definition to hdlc/ioctl.h Frans Klaver <fransklaver@gmail.com> - 2016-08-23 10:10 +0200
            Re: [PATCH v05 27/72] linux/if.h linux/hdlc/ioctl.h: move IFNAMSIZ  definition to hdlc/ioctl.h Frans Klaver <fransklaver@gmail.com> - 2016-08-24 09:00 +0200
        Re: [PATCH v05 27/72] linux/if.h linux/hdlc/ioctl.h: move IFNAMSIZ  definition to hdlc/ioctl.h Frans Klaver <fransklaver@gmail.com> - 2016-08-23 09:20 +0200
    [PATCH v05 26/72] include/uapi/linux/if_pppox.h: include linux/in.h and linux/in6.h Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 20:50 +0200
      Re: [PATCH v05 26/72] include/uapi/linux/if_pppox.h: include  linux/in.h and linux/in6.h David Miller <davem@davemloft.net> - 2016-08-23 01:40 +0200
    [PATCH v05 17/72] asm-generic/sembuf.h: include asm/posix_types.h and asm/ipcbuf.h Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 20:50 +0200
    [PATCH v05 41/72] include/uapi/linux/atm_zatm.h: include linux/time.h Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 20:50 +0200
      Re: [PATCH v05 41/72] include/uapi/linux/atm_zatm.h: include  linux/time.h David Miller <davem@davemloft.net> - 2016-08-23 01:40 +0200
    [PATCH v05 37/72] include/uapi/linux/auto_fs.h: include linux/limits.h Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 20:50 +0200
      Re: [PATCH v05 37/72] include/uapi/linux/auto_fs.h: include  linux/limits.h Ian Kent <raven@themaw.net> - 2016-08-23 02:50 +0200
    [PATCH v05 30/72] include/uapi/linux/mqueue.h: include linux/types.h Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 20:50 +0200
    [PATCH v05 05/72] hsi_char.h: use __u32 from linux/types.h Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 20:50 +0200
      Re: [PATCH v05 05/72] hsi_char.h: use __u32 from linux/types.h Sebastian Reichel <sre@kernel.org> - 2016-08-22 23:00 +0200
    [PATCH v05 13/72] include/uapi/linux/sysctl.h: use __kernel_size_t instead of size_t Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 20:50 +0200
    [PATCH v05 39/72] include/uapi/linux/target_core_user.h: use __u8, __u16, __u32 and __u64 from linux/types.h Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 20:50 +0200
    [PATCH v05 32/72] include/uapi/linux/dlm_netlink.h: include linux/dlmconstants.h Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 20:50 +0200
    [PATCH v05 33/72] include/uapi/linux/ip6_tunnel.h: include linux/if.h and linux/in6.h Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 20:50 +0200
    [PATCH v05 28/72] include/uapi/linux/packet_diag.h: include linux/netdevice.h Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 20:50 +0200
    [PATCH v05 36/72] arch/x86/include/uapi/asm/signal.h: use __kernel_size_t instead of size_t Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 20:50 +0200
    [PATCH v05 38/72] include/uapi/linux/openvswitch.h: use __u32 from linux/types.h Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 20:50 +0200
      Re: [PATCH v05 38/72] include/uapi/linux/openvswitch.h: use __u32  from linux/types.h Stephen Hemminger <stephen@networkplumber.org> - 2016-08-22 21:40 +0200
        Re: [PATCH v05 38/72] include/uapi/linux/openvswitch.h: use __u32  from linux/types.h David Miller <davem@davemloft.net> - 2016-08-23 01:30 +0200
        Re: [PATCH v05 38/72] include/uapi/linux/openvswitch.h: use __u32  from linux/types.h Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-23 09:00 +0200
      Re: [PATCH v05 38/72] include/uapi/linux/openvswitch.h: use __u32  from linux/types.h David Miller <davem@davemloft.net> - 2016-08-23 01:40 +0200
    [PATCH v05 43/72] include/uapi/linux/btrfs.h: define NULL Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 20:50 +0200
    [PATCH v05 06/72] include/uapi/linux/hsi/cs-protocol.h: include linux/time.h Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 20:50 +0200
      Re: [PATCH v05 06/72] include/uapi/linux/hsi/cs-protocol.h: include  linux/time.h Sebastian Reichel <sre@kernel.org> - 2016-08-22 23:00 +0200
        Re: [PATCH v05 06/72] include/uapi/linux/hsi/cs-protocol.h: include  linux/time.h Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-23 09:00 +0200
    [PATCH v05 02/72] scripts/headers_compile_test.sh: compile test script for exported headers Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 20:50 +0200
    [PATCH v05 62/72] include/uapi/linux/openvswitch.h: use __u32 from linux/types.h Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 21:00 +0200
      Re: [PATCH v05 62/72] include/uapi/linux/openvswitch.h: use __u32  from linux/types.h David Miller <davem@davemloft.net> - 2016-08-23 01:40 +0200
    [PATCH v05 72/72] uapi route.h: glibc net/route.h compat fix Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 21:00 +0200
      Re: [PATCH v05 72/72] uapi route.h: glibc net/route.h compat fix David Miller <davem@davemloft.net> - 2016-08-23 01:40 +0200
        Re: [PATCH v05 66/72] uapi icmp.h: glibc netinet/ip_icmp.h header  file compatibility fixes Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-23 23:30 +0200
          Re: [PATCH v05 66/72] uapi icmp.h: glibc netinet/ip_icmp.h header  file compatibility fixes David Miller <davem@davemloft.net> - 2016-08-24 01:50 +0200
    [PATCH v05 66/72] uapi icmp.h: glibc netinet/ip_icmp.h header file compatibility fixes Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 21:00 +0200
      Re: [PATCH v05 66/72] uapi icmp.h: glibc netinet/ip_icmp.h header  file compatibility fixes David Miller <davem@davemloft.net> - 2016-08-23 01:40 +0200
      Re: [PATCH v05 66/72] uapi icmp.h: glibc netinet/ip_icmp.h header  file compatibility fixes David Miller <davem@davemloft.net> - 2016-08-24 01:50 +0200
    [PATCH v05 55/72] include/uapi/xen/gntdev.h: include xen/privcmd.h and define grant_ref_t Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 21:00 +0200
    [PATCH v05 21/72] include/uapi/linux/if_pppox.h: include linux/if.h Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 21:10 +0200
      Re: [PATCH v05 21/72] include/uapi/linux/if_pppox.h: include  linux/if.h Stephen Hemminger <stephen@networkplumber.org> - 2016-08-22 21:40 +0200
        Re: [PATCH v05 21/72] include/uapi/linux/if_pppox.h: include  linux/if.h David Miller <davem@davemloft.net> - 2016-08-23 01:30 +0200
        Re: [PATCH v05 21/72] include/uapi/linux/if_pppox.h: include  linux/if.h Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-23 08:50 +0200
      Re: [PATCH v05 21/72] include/uapi/linux/if_pppox.h: include  linux/if.h David Miller <davem@davemloft.net> - 2016-08-23 01:40 +0200
    [PATCH v05 57/72] coda_psdev.h: move upc_req definition from uapi to kernel side headers Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 21:10 +0200
    [PATCH v05 65/72] uapi fcntl.h: glibc fcntl.h header file compatibility fixes Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 21:10 +0200
    [PATCH v05 23/72] include/uapi/linux/ipv6_route.h: include linux/in6.h Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 21:20 +0200
      Re: [PATCH v05 23/72] include/uapi/linux/ipv6_route.h: include  linux/in6.h David Miller <davem@davemloft.net> - 2016-08-23 01:30 +0200
    [PATCH v05 19/72] include/uapi/linux/socket.h: include sys/socket.h in userspace Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 21:20 +0200
    [PATCH v05 60/72] arch/arm/include/uapi/asm/signal.h: use __kernel_size_t instead of size_t Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 21:20 +0200
      Re: [PATCH v05 60/72] arch/arm/include/uapi/asm/signal.h: use __kernel_size_t instead of size_t Arnd Bergmann <arnd@arndb.de> - 2016-08-24 17:10 +0200
    [PATCH v05 69/72] uapi rose.h: glibc netrose/rose.h header file compatibility fixes Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 21:20 +0200
    [PATCH v05 52/72] include/linux/sdb.h: use linux/types.h types instead of stdint.h Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 21:20 +0200
    [PATCH v05 54/72] include/uapi/xen/privcmd.h: fix compilation in userspace Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 21:20 +0200
      Re: [PATCH v05 54/72] include/uapi/xen/privcmd.h: fix compilation in  userspace Russell King - ARM Linux <linux@armlinux.org.uk> - 2016-08-23 12:10 +0200
        Re: [PATCH v05 54/72] include/uapi/xen/privcmd.h: fix compilation  in userspace Stefano Stabellini <sstabellini@kernel.org> - 2016-08-23 20:20 +0200
          Re: [PATCH v05 54/72] include/uapi/xen/privcmd.h: fix compilation in  userspace Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-23 22:40 +0200
            Re: [PATCH v05 54/72] include/uapi/xen/privcmd.h: fix compilation  in userspace Stefano Stabellini <sstabellini@kernel.org> - 2016-08-23 23:20 +0200
    [PATCH v05 24/72] include/uapi/linux/ipv6_route.h: include linux/in6.h Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 21:30 +0200
    [PATCH v05 56/72] include/uapi/xen/evtchn.h: include xen/privcmd.h Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 21:30 +0200
    [PATCH v05 63/72] include/uapi/sound/Kbuild: remove sound/asoc.h from userspace Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 21:30 +0200
    [PATCH v05 64/72] include/uapi/linux/ipx.h: fix conflicting defitions with glibc netipx/ipx.h Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 21:30 +0200
      Re: [PATCH v05 64/72] include/uapi/linux/ipx.h: fix conflicting  defitions with glibc netipx/ipx.h David Miller <davem@davemloft.net> - 2016-08-23 01:40 +0200
    [PATCH v05 20/72] include/uapi/linux/rds.h: include linux/socket.h and linux/types.h Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 21:30 +0200
    [PATCH v05 58/72] include/uapi/linux/elfcore.h: remove non-compiling userspace parts Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 21:30 +0200
    [PATCH v05 70/72] uapi time.h: glibc time.h header file compatibility fixes Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 21:30 +0200
    [PATCH v05 68/72] uapi ax25.h: glibc netax25/ax25.h header file compatibility fixes Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 21:30 +0200
      Re: [PATCH v05 68/72] uapi ax25.h: glibc netax25/ax25.h header  file compatibility fixes David Miller <davem@davemloft.net> - 2016-08-23 01:40 +0200
    [PATCH v05 50/72] include/uapi/linux/fuse.h: use linux/types.h also in userspace Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 21:30 +0200
      Re: [PATCH v05 50/72] include/uapi/linux/fuse.h: use linux/types.h  also in userspace Miklos Szeredi <miklos@szeredi.hu> - 2016-08-23 09:20 +0200
        Re: [PATCH v05 50/72] include/uapi/linux/fuse.h: use linux/types.h  also in userspace Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-23 09:50 +0200
    [PATCH v05 67/72] uapi uio.h: glibc sys/uio.h header file compatibility fixes Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 21:30 +0200
    [PATCH v05 59/72] include/uapi/linux/errqueue.h: include time.h in userspace Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 21:40 +0200
    [PATCH v05 53/72] include/linux/xz.h: use linux/types.h types instead of stdint.h Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 21:40 +0200
    [PATCH v05 61/72] include/uapi/rdma/rdma_user_rxe.h: include in.h and in6.h Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 21:40 +0200
      Re: [PATCH v05 61/72] include/uapi/rdma/rdma_user_rxe.h: include in.h  and in6.h Doug Ledford <dledford@redhat.com> - 2016-08-23 17:10 +0200
    [PATCH v05 71/72] uapi term*.h: glibc termios.h header file compatibility fixes Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 21:50 +0200
    [PATCH v05 22/72] include/uapi/linux/if_tunnel.h: include linux/if.h, linux/ip.h and linux/in6.h Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 21:50 +0200
      Re: [PATCH v05 22/72] include/uapi/linux/if_tunnel.h: include  linux/if.h, linux/ip.h and linux/in6.h David Miller <davem@davemloft.net> - 2016-08-23 01:30 +0200
    [PATCH v05 51/72] include/linux/ipmi-fru.h: use linux/types.h instead of stdint.h Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-08-22 21:50 +0200

Page 1 of 5  [1] 2 3 4 5  Next page →


#1467924 — [PATCH v05 00/72] Userspace compile test and fixes for exported uapi header files

FromMikko Rapeli <mikko.rapeli@iki.fi>
Date2016-08-22 20:50 +0200
Subject[PATCH v05 00/72] Userspace compile test and fixes for exported uapi header files
Message-ID<s92iC-1rh-5@gated-at.bofh.it>
v5:
two years now from v1 to v5 though some of the patches have been applied
with these changes all uapi headers compile stand alone in users space
added myself to MAINTAINERS for the test script
tried to fix all v04 review findings
due to regression in one of the accepted patches, added a glibc compatibility test
fixed some glibc compatibility issues, which are hopefully on the right path

v4:
https://lkml.org/lkml/2015/10/15/22
tried to fix v03 review findings
tried to fix all hack patches

v3:
https://lkml.org/lkml/2015/5/30/96
tried to fix all v2 review findings
tried to guess how to fix a few more issue
with a few hacks, 0 files fail and 760 files pass the compile test on 32bit x86

v2:
https://lkml.org/lkml/2015/2/16/521
added cross compiler support with CROSS_COMPILE,
detecting libc and GCC headers from compiler,
more header file fixes

v1:
https://lkml.org/lkml/2014/8/21/665

Users of kernel header files would be happier if they did not contain
kernel specific parts and would contain #include statements for all
other header files that they depend on, and in general would compile.

This patch set introduces a compile test for headers exported to userspace
and then fixes many of the userspace header compilation failures.

Changes are also available in headers_test_v05 branch at github:
https://github.com/mcfrisk/linux/tree/headers_test_v05

Here's how to run the userspace compile tests and example output with these
patches applied on top of v4.8-rc2-348-g6040e57:

$ make headers_install && cd usr/include && \
  ../../scripts/headers_compile_test.sh -l
...
Kernel header compile test statistics:

0 files failed the kernel header compile test.
784 files passed the kernel header compile test.

libc and kernel header compatibility test statistics:
114 files failed the libc compatibility test.
670 files passed the libc compatibility test.
39 files failed libc before kernel include test.
745 files passed libc before kernel include test.
113 files failed kernel before libc include test.
671 files passed kernel before libc include test.

Additionally tested an allyesconfig compilation on i686.

If these changes are merged, it becomes possible to run abi-compliance-checker
tool https://lvc.github.io/abi-compliance-checker/ to detect API and ABI
breakages from the uapi headers, but some scripting around the tool is required.

Once all archs have completely compiling uapi headers, I would add this test
to 'make headers_check' build target to prevent regressions.

If the initial set of glibc compatibility fixes is going in the right
direction, I can try to fix the kernel side of those, and maybe try to
get glibc headers to play nicely with kernel uapi headers.

Some kernel subsystem and their uapi headers adhere to
Documentation/CodingStyle regarding C99 and __u32 etc types but many don't and
have even good reasons for not doing so, e.g. main userspace user of the headers
e.g. libdrm or libfuse require C99 stdint.h types. I'm hoping we could finally
settle this by for example agreeing that C99 stdint.h types are allowed in some
uapi subsystems, e.g. drm and fuse. Help would be appreciated here.

Mikko Rapeli (72):
  headers_install.sh: enhance error handling
  scripts/headers_compile_test.sh: compile test script for exported
    headers
  headers_compile_test.sh: add GNU libc compatibility test
  dm-log-userspace.h: use __u32, __s32 and __u64 from linux/types.h
  hsi_char.h: use __u32 from linux/types.h
  include/uapi/linux/hsi/cs-protocol.h: include linux/time.h
  cld.h: use __u8, __u16, __s16, __u32 and __s64 from linux/types.h
  rds.h: use __u8, __u16, __s16, __u32 and __s64 from linux/types.h
  sctp.h: use __u8 and __u32 from linux/types.h
  scsi_bsg_fc.h: use __u8, __u32 and __u64 from linux/types.h
  scsi_netlink.h: use __u8, __u16 and __u64 from linux/types.h
  scsi_netlink_fc.h: use __u16, __u32 and __u64 from linux/types.h
  include/uapi/linux/sysctl.h: use __kernel_size_t instead of size_t
  include/uapi/asm-generic/ipcbuf.h: include linux/posix_types.h
  include/uapi/asm-generic/msgbuf.h: include asm/ipcbuf.h
  include/uapi/asm-generic/shmbuf.h: include fixes
  asm-generic/sembuf.h: include asm/posix_types.h and asm/ipcbuf.h
  include/uapi/asm-generic/signal.h: use __kernel_size_t instead of
    size_t
  include/uapi/linux/socket.h: include sys/socket.h in userspace
  include/uapi/linux/rds.h: include linux/socket.h and linux/types.h
  include/uapi/linux/if_pppox.h: include linux/if.h
  include/uapi/linux/if_tunnel.h: include linux/if.h, linux/ip.h and
    linux/in6.h
  include/uapi/linux/ipv6_route.h: include linux/in6.h
  include/uapi/linux/ipv6_route.h: include linux/in6.h
  include/uapi/linux/if_pppol2tp.h: include linux/in.h and linux/in6.h
  include/uapi/linux/if_pppox.h: include linux/in.h and linux/in6.h
  linux/if.h linux/hdlc/ioctl.h: move IFNAMSIZ definition to
    hdlc/ioctl.h
  include/uapi/linux/packet_diag.h: include linux/netdevice.h
  include/uapi/linux/llc.h: include linux/if.h
  include/uapi/linux/mqueue.h: include linux/types.h
  include/uapi/linux/mroute.h: include linux/in.h
  include/uapi/linux/dlm_netlink.h: include linux/dlmconstants.h
  include/uapi/linux/ip6_tunnel.h: include linux/if.h and linux/in6.h
  include/uapi/linux/errqueue.h: include linux/time.h
  include/uapi/asm-generic/ucontext.h: include asm/signal.h and
    asm/sigcontext.h
  arch/x86/include/uapi/asm/signal.h: use __kernel_size_t instead of
    size_t
  include/uapi/linux/auto_fs.h: include linux/limits.h
  include/uapi/linux/openvswitch.h: use __u32 from linux/types.h
  include/uapi/linux/target_core_user.h: use __u8, __u16, __u32 and
    __u64 from linux/types.h
  include/uapi/linux/omapfb.h: use __kernel_size_t instead of size_t
  include/uapi/linux/atm_zatm.h: include linux/time.h
  include/uapi/linux/scc.h: include linux/sockios.h
  include/uapi/linux/btrfs.h: define NULL
  include/uapi/linux/kexec.h: use __kernel_size_t instead of size_t
  include/uapi/linux/reiserfs_xattr.h: use __kernel_size_t instead of
    size_t
  include/uapi/linux/patchkey.h: change #error to #warning if file
    included directly
  include/uapi/linux/coda.h: use __kernel_pid_t and add u_short etc
    definitions for userspace
  include/uapi/linux/android/binder.h: use __kernel_pid_t and
    __kernel_uid_t
  arch/x86/include/uapi/asm/sembuf.h: include linux/types.h and
    linux/ipc.h
  include/uapi/linux/fuse.h: use linux/types.h also in userspace
  include/linux/ipmi-fru.h: use linux/types.h instead of stdint.h
  include/linux/sdb.h: use linux/types.h types instead of stdint.h
  include/linux/xz.h: use linux/types.h types instead of stdint.h
  include/uapi/xen/privcmd.h: fix compilation in userspace
  include/uapi/xen/gntdev.h: include xen/privcmd.h and define
    grant_ref_t
  include/uapi/xen/evtchn.h: include xen/privcmd.h
  coda_psdev.h: move upc_req definition from uapi to kernel side headers
  include/uapi/linux/elfcore.h: remove non-compiling userspace parts
  include/uapi/linux/errqueue.h: include time.h in userspace
  arch/arm/include/uapi/asm/signal.h: use __kernel_size_t instead of
    size_t
  include/uapi/rdma/rdma_user_rxe.h: include in.h and in6.h
  include/uapi/linux/openvswitch.h: use __u32 from linux/types.h
  include/uapi/sound/Kbuild: remove sound/asoc.h from userspace
  include/uapi/linux/ipx.h: fix conflicting defitions with glibc
    netipx/ipx.h
  uapi fcntl.h: glibc fcntl.h header file compatibility fixes
  uapi icmp.h: glibc netinet/ip_icmp.h header file compatibility fixes
  uapi uio.h: glibc sys/uio.h header file compatibility fixes
  uapi ax25.h: glibc netax25/ax25.h header file compatibility fixes
  uapi rose.h: glibc netrose/rose.h header file compatibility fixes
  uapi time.h: glibc time.h header file compatibility fixes
  uapi term*.h: glibc termios.h header file compatibility fixes
  uapi route.h: glibc net/route.h compat fix

 MAINTAINERS                           |   5 +
 arch/arm/include/asm/xen/interface.h  |   2 +-
 arch/arm/include/uapi/asm/signal.h    |   2 +-
 arch/x86/include/uapi/asm/sembuf.h    |   3 +
 arch/x86/include/uapi/asm/signal.h    |   2 +-
 include/linux/coda_psdev.h            |  11 +
 include/linux/ipmi-fru.h              |  31 +--
 include/linux/sdb.h                   |  62 ++---
 include/linux/xz.h                    |  11 +-
 include/uapi/asm-generic/fcntl.h      |   6 +
 include/uapi/asm-generic/ipcbuf.h     |   2 +
 include/uapi/asm-generic/msgbuf.h     |   2 +
 include/uapi/asm-generic/sembuf.h     |   2 +
 include/uapi/asm-generic/shmbuf.h     |   4 +-
 include/uapi/asm-generic/signal.h     |   2 +-
 include/uapi/asm-generic/termbits.h   |   3 +
 include/uapi/asm-generic/termios.h    |   5 +
 include/uapi/asm-generic/ucontext.h   |   3 +
 include/uapi/linux/android/binder.h   |   4 +-
 include/uapi/linux/atm_zatm.h         |   1 +
 include/uapi/linux/auto_fs.h          |   1 +
 include/uapi/linux/ax25.h             |  22 ++
 include/uapi/linux/btrfs.h            |   6 +
 include/uapi/linux/coda.h             |  11 +-
 include/uapi/linux/coda_psdev.h       |  13 -
 include/uapi/linux/dlm_netlink.h      |   1 +
 include/uapi/linux/dm-log-userspace.h |  43 +--
 include/uapi/linux/elfcore.h          |  21 +-
 include/uapi/linux/errqueue.h         |   6 +
 include/uapi/linux/fcntl.h            |   3 +
 include/uapi/linux/fuse.h             | 452 +++++++++++++++---------------
 include/uapi/linux/hdlc/ioctl.h       |   5 +
 include/uapi/linux/hsi/cs-protocol.h  |   1 +
 include/uapi/linux/hsi/hsi_char.h     |  17 +-
 include/uapi/linux/icmp.h             |   4 +-
 include/uapi/linux/if.h               |   5 +-
 include/uapi/linux/if_pppol2tp.h      |   3 +-
 include/uapi/linux/if_pppox.h         |   3 +
 include/uapi/linux/if_tunnel.h        |   3 +
 include/uapi/linux/ip6_tunnel.h       |   2 +
 include/uapi/linux/ipv6_route.h       |   1 +
 include/uapi/linux/ipx.h              |  13 +-
 include/uapi/linux/kexec.h            |   4 +-
 include/uapi/linux/libc-compat.h      | 212 ++++++++++++++
 include/uapi/linux/llc.h              |   1 +
 include/uapi/linux/mqueue.h           |   2 +
 include/uapi/linux/mroute.h           |   1 +
 include/uapi/linux/mroute6.h          |   1 +
 include/uapi/linux/nfsd/cld.h         |  14 +-
 include/uapi/linux/omapfb.h           |   2 +-
 include/uapi/linux/openvswitch.h      |   6 +-
 include/uapi/linux/packet_diag.h      |   1 +
 include/uapi/linux/patchkey.h         |   2 +-
 include/uapi/linux/rds.h              | 103 +++----
 include/uapi/linux/reiserfs_xattr.h   |   2 +-
 include/uapi/linux/rose.h             |  15 +
 include/uapi/linux/route.h            |   4 +-
 include/uapi/linux/scc.h              |   1 +
 include/uapi/linux/sctp.h             |  10 +-
 include/uapi/linux/socket.h           |   4 +
 include/uapi/linux/sysctl.h           |   4 +-
 include/uapi/linux/target_core_user.h |  22 +-
 include/uapi/linux/time.h             |  18 +-
 include/uapi/linux/uio.h              |   4 +-
 include/uapi/rdma/rdma_user_rxe.h     |   2 +
 include/uapi/scsi/scsi_bsg_fc.h       |  54 ++--
 include/uapi/scsi/scsi_netlink.h      |  22 +-
 include/uapi/scsi/scsi_netlink_fc.h   |  16 +-
 include/uapi/sound/Kbuild             |   1 -
 include/uapi/xen/evtchn.h             |   2 +
 include/uapi/xen/gntdev.h             |   6 +
 include/uapi/xen/privcmd.h            |  12 +-
 include/xen/interface/grant_table.h   |   6 +-
 scripts/headers_compile_test.sh       | 507 ++++++++++++++++++++++++++++++++++
 scripts/headers_install.sh            |  14 +-
 75 files changed, 1375 insertions(+), 499 deletions(-)
 create mode 100755 scripts/headers_compile_test.sh

-- 
2.8.1

[toc] | [next] | [standalone]


#1467925 — [PATCH v05 31/72] include/uapi/linux/mroute.h: include linux/in.h

FromMikko Rapeli <mikko.rapeli@iki.fi>
Date2016-08-22 20:50 +0200
Subject[PATCH v05 31/72] include/uapi/linux/mroute.h: include linux/in.h
Message-ID<s92sh-1v9-21@gated-at.bofh.it>
In reply to#1467924
Fixes userspace compile errors like:

error: field ‘vifc_lcl_addr’ has incomplete type
 struct in_addr vifc_lcl_addr;     /* Local interface address */

Signed-off-by: Mikko Rapeli <mikko.rapeli@iki.fi>
---
 include/uapi/linux/mroute.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/include/uapi/linux/mroute.h b/include/uapi/linux/mroute.h
index cf94301..4540653 100644
--- a/include/uapi/linux/mroute.h
+++ b/include/uapi/linux/mroute.h
@@ -3,6 +3,7 @@
 
 #include <linux/sockios.h>
 #include <linux/types.h>
+#include <linux/in.h>
 
 /* Based on the MROUTING 3.5 defines primarily to keep
  * source compatibility with BSD.
-- 
2.8.1

[toc] | [prev] | [next] | [standalone]


#1468189 — Re: [PATCH v05 31/72] include/uapi/linux/mroute.h: include linux/in.h

FromDavid Miller <davem@davemloft.net>
Date2016-08-23 01:40 +0200
SubjectRe: [PATCH v05 31/72] include/uapi/linux/mroute.h: include linux/in.h
Message-ID<s96YX-4v1-77@gated-at.bofh.it>
In reply to#1467925
From: Mikko Rapeli <mikko.rapeli@iki.fi>
Date: Mon, 22 Aug 2016 20:32:48 +0200

> Fixes userspace compile errors like:
> 
> error: field ‘vifc_lcl_addr’ has incomplete type
>  struct in_addr vifc_lcl_addr;     /* Local interface address */
> 
> Signed-off-by: Mikko Rapeli <mikko.rapeli@iki.fi>

Applied.

[toc] | [prev] | [next] | [standalone]


#1467926 — [PATCH v05 18/72] include/uapi/asm-generic/signal.h: use __kernel_size_t instead of size_t

FromMikko Rapeli <mikko.rapeli@iki.fi>
Date2016-08-22 20:50 +0200
Subject[PATCH v05 18/72] include/uapi/asm-generic/signal.h: use __kernel_size_t instead of size_t
Message-ID<s92si-1v9-33@gated-at.bofh.it>
In reply to#1467924
Fixes userspace compiler error:

error: unknown type name ‘size_t’

Signed-off-by: Mikko Rapeli <mikko.rapeli@iki.fi>
---
 include/uapi/asm-generic/signal.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/include/uapi/asm-generic/signal.h b/include/uapi/asm-generic/signal.h
index 3094618..6bbcdfa 100644
--- a/include/uapi/asm-generic/signal.h
+++ b/include/uapi/asm-generic/signal.h
@@ -113,7 +113,7 @@ struct sigaction {
 typedef struct sigaltstack {
 	void __user *ss_sp;
 	int ss_flags;
-	size_t ss_size;
+	__kernel_size_t ss_size;
 } stack_t;
 
 #endif /* __ASSEMBLY__ */
-- 
2.8.1

[toc] | [prev] | [next] | [standalone]


#1467928 — [PATCH v05 27/72] linux/if.h linux/hdlc/ioctl.h: move IFNAMSIZ definition to hdlc/ioctl.h

FromMikko Rapeli <mikko.rapeli@iki.fi>
Date2016-08-22 20:50 +0200
Subject[PATCH v05 27/72] linux/if.h linux/hdlc/ioctl.h: move IFNAMSIZ definition to hdlc/ioctl.h
Message-ID<s92sh-1v9-25@gated-at.bofh.it>
In reply to#1467924
Fixes userspace compiler error:

error: ‘IFNAMSIZ’ undeclared here (not in a function)

Suggested by Frans Klaver <fransklaver@gmail.com> on lkml message
<20150530195223.GA15645@bugger.home>.

Signed-off-by: Mikko Rapeli <mikko.rapeli@iki.fi>
---
 include/uapi/linux/hdlc/ioctl.h | 5 +++++
 include/uapi/linux/if.h         | 5 +----
 2 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/include/uapi/linux/hdlc/ioctl.h b/include/uapi/linux/hdlc/ioctl.h
index 04bc027..4b7a7ed 100644
--- a/include/uapi/linux/hdlc/ioctl.h
+++ b/include/uapi/linux/hdlc/ioctl.h
@@ -1,6 +1,11 @@
 #ifndef __HDLC_IOCTL_H__
 #define __HDLC_IOCTL_H__
 
+#include <linux/libc-compat.h>	/* for compatibility with glibc */
+
+#if __UAPI_DEF_IF_IFNAMSIZ
+#define	IFNAMSIZ	16
+#endif /* __UAPI_DEF_IF_IFNAMSIZ */
 
 #define GENERIC_HDLC_VERSION 4	/* For synchronization with sethdlc utility */
 
diff --git a/include/uapi/linux/if.h b/include/uapi/linux/if.h
index e601c8c..68bd205 100644
--- a/include/uapi/linux/if.h
+++ b/include/uapi/linux/if.h
@@ -23,12 +23,9 @@
 #include <linux/types.h>		/* for "__kernel_caddr_t" et al	*/
 #include <linux/socket.h>		/* for "struct sockaddr" et al	*/
 #include <linux/compiler.h>		/* for "__user" et al           */
+#include <linux/hdlc/ioctl.h>		/* for IFNAMSIZ                 */
 
-#if __UAPI_DEF_IF_IFNAMSIZ
-#define	IFNAMSIZ	16
-#endif /* __UAPI_DEF_IF_IFNAMSIZ */
 #define	IFALIASZ	256
-#include <linux/hdlc/ioctl.h>
 
 /* For glibc compatibility. An empty enum does not compile. */
 #if __UAPI_DEF_IF_NET_DEVICE_FLAGS_LOWER_UP_DORMANT_ECHO != 0 && \
-- 
2.8.1

[toc] | [prev] | [next] | [standalone]


#1468183 — Re: [PATCH v05 27/72] linux/if.h linux/hdlc/ioctl.h: move IFNAMSIZ definition to hdlc/ioctl.h

FromDavid Miller <davem@davemloft.net>
Date2016-08-23 01:40 +0200
SubjectRe: [PATCH v05 27/72] linux/if.h linux/hdlc/ioctl.h: move IFNAMSIZ definition to hdlc/ioctl.h
Message-ID<s96YX-4v1-67@gated-at.bofh.it>
In reply to#1467928
From: Mikko Rapeli <mikko.rapeli@iki.fi>
Date: Mon, 22 Aug 2016 20:32:44 +0200

> Fixes userspace compiler error:
> 
> error: ‘IFNAMSIZ’ undeclared here (not in a function)
> 
> Suggested by Frans Klaver <fransklaver@gmail.com> on lkml message
> <20150530195223.GA15645@bugger.home>.
> 
> Signed-off-by: Mikko Rapeli <mikko.rapeli@iki.fi>

IFNAMSIZ has to be in linux/if.h, you aren't explaining why you have
to move it to the hdlc header instead of having the hdlc header
include linux/if.h

And if your reason is legitimate, you have to add that explanation to
the patch commit log message.

[toc] | [prev] | [next] | [standalone]


#1468332 — Re: [PATCH v05 27/72] linux/if.h linux/hdlc/ioctl.h: move IFNAMSIZ definition to hdlc/ioctl.h

FromDavid Miller <davem@davemloft.net>
Date2016-08-23 09:10 +0200
SubjectRe: [PATCH v05 27/72] linux/if.h linux/hdlc/ioctl.h: move IFNAMSIZ definition to hdlc/ioctl.h
Message-ID<s9e0p-EE-27@gated-at.bofh.it>
In reply to#1468183
From: Frans Klaver <fransklaver@gmail.com>
Date: Tue, 23 Aug 2016 09:03:20 +0200

> On Tue, Aug 23, 2016 at 1:30 AM, David Miller <davem@davemloft.net> wrote:
>> From: Mikko Rapeli <mikko.rapeli@iki.fi>
>> Date: Mon, 22 Aug 2016 20:32:44 +0200
>>
>>> Fixes userspace compiler error:
>>>
>>> error: ‘IFNAMSIZ’ undeclared here (not in a function)
>>>
>>> Suggested by Frans Klaver <fransklaver@gmail.com> on lkml message
>>> <20150530195223.GA15645@bugger.home>.
>>>
>>> Signed-off-by: Mikko Rapeli <mikko.rapeli@iki.fi>
>>
>> IFNAMSIZ has to be in linux/if.h, you aren't explaining why you have
>> to move it to the hdlc header instead of having the hdlc header
>> include linux/if.h
> 
> Circular references. linux/if.h includes hdlc/ioctl.h, and has to
> define IFNAMSIZ before doing so.

That's not acceptable.  Use forward declarations or similar to avoid
the circular dependency.

IFNAMSIZ belongs in linux/if.h, please keep it there.

[toc] | [prev] | [next] | [standalone]


#1468367 — Re: [PATCH v05 27/72] linux/if.h linux/hdlc/ioctl.h: move IFNAMSIZ definition to hdlc/ioctl.h

FromFrans Klaver <fransklaver@gmail.com>
Date2016-08-23 10:10 +0200
SubjectRe: [PATCH v05 27/72] linux/if.h linux/hdlc/ioctl.h: move IFNAMSIZ definition to hdlc/ioctl.h
Message-ID<s9eWu-1gG-13@gated-at.bofh.it>
In reply to#1468332
On Tue, Aug 23, 2016 at 9:05 AM, David Miller <davem@davemloft.net> wrote:
> From: Frans Klaver <fransklaver@gmail.com>
> Date: Tue, 23 Aug 2016 09:03:20 +0200
>
>> On Tue, Aug 23, 2016 at 1:30 AM, David Miller <davem@davemloft.net> wrote:
>>> From: Mikko Rapeli <mikko.rapeli@iki.fi>
>>> Date: Mon, 22 Aug 2016 20:32:44 +0200
>>>
>>>> Fixes userspace compiler error:
>>>>
>>>> error: ‘IFNAMSIZ’ undeclared here (not in a function)
>>>>
>>>> Suggested by Frans Klaver <fransklaver@gmail.com> on lkml message
>>>> <20150530195223.GA15645@bugger.home>.
>>>>
>>>> Signed-off-by: Mikko Rapeli <mikko.rapeli@iki.fi>
>>>
>>> IFNAMSIZ has to be in linux/if.h, you aren't explaining why you have
>>> to move it to the hdlc header instead of having the hdlc header
>>> include linux/if.h
>>
>> Circular references. linux/if.h includes hdlc/ioctl.h, and has to
>> define IFNAMSIZ before doing so.
>
> That's not acceptable.  Use forward declarations or similar to avoid
> the circular dependency.
>
> IFNAMSIZ belongs in linux/if.h, please keep it there.

I went back to one of the previous patch sets, but couldn't find why
the circular dependency had to be broken. So if this can be fixed by
including linux/if.h instead, I'm all for it.

[toc] | [prev] | [next] | [standalone]


#1469116 — Re: [PATCH v05 27/72] linux/if.h linux/hdlc/ioctl.h: move IFNAMSIZ definition to hdlc/ioctl.h

FromFrans Klaver <fransklaver@gmail.com>
Date2016-08-24 09:00 +0200
SubjectRe: [PATCH v05 27/72] linux/if.h linux/hdlc/ioctl.h: move IFNAMSIZ definition to hdlc/ioctl.h
Message-ID<s9Akh-70V-15@gated-at.bofh.it>
In reply to#1468367
On Tue, Aug 23, 2016 at 10:03 AM, Frans Klaver <fransklaver@gmail.com> wrote:
> On Tue, Aug 23, 2016 at 9:05 AM, David Miller <davem@davemloft.net> wrote:
>> From: Frans Klaver <fransklaver@gmail.com>
>> Date: Tue, 23 Aug 2016 09:03:20 +0200
>>
>>> On Tue, Aug 23, 2016 at 1:30 AM, David Miller <davem@davemloft.net> wrote:
>>>> From: Mikko Rapeli <mikko.rapeli@iki.fi>
>>>> Date: Mon, 22 Aug 2016 20:32:44 +0200
>>>>
>>>>> Fixes userspace compiler error:
>>>>>
>>>>> error: ‘IFNAMSIZ’ undeclared here (not in a function)
>>>>>
>>>>> Suggested by Frans Klaver <fransklaver@gmail.com> on lkml message
>>>>> <20150530195223.GA15645@bugger.home>.
>>>>>
>>>>> Signed-off-by: Mikko Rapeli <mikko.rapeli@iki.fi>
>>>>
>>>> IFNAMSIZ has to be in linux/if.h, you aren't explaining why you have
>>>> to move it to the hdlc header instead of having the hdlc header
>>>> include linux/if.h
>>>
>>> Circular references. linux/if.h includes hdlc/ioctl.h, and has to
>>> define IFNAMSIZ before doing so.
>>
>> That's not acceptable.  Use forward declarations or similar to avoid
>> the circular dependency.
>>
>> IFNAMSIZ belongs in linux/if.h, please keep it there.
>
> I went back to one of the previous patch sets, but couldn't find why
> the circular dependency had to be broken. So if this can be fixed by
> including linux/if.h instead, I'm all for it.

Alright, so the core of the 'problem' is that the structs in
hdlc/ioctl.h are typedefs of anonymous structs, and linux/if.h points
to those types. We can't really forward declare these structs unless
we name them, so the proper approach would be to name them and use
forward declarations in linux/if.h. hdlc/ioctl.h can then include
linux/if.h. linux/if.h should probably keep including hdlc/ioctl.h to
keep depending application builds from breaking.

[toc] | [prev] | [next] | [standalone]


#1468334 — Re: [PATCH v05 27/72] linux/if.h linux/hdlc/ioctl.h: move IFNAMSIZ definition to hdlc/ioctl.h

FromFrans Klaver <fransklaver@gmail.com>
Date2016-08-23 09:20 +0200
SubjectRe: [PATCH v05 27/72] linux/if.h linux/hdlc/ioctl.h: move IFNAMSIZ definition to hdlc/ioctl.h
Message-ID<s9e0p-EE-29@gated-at.bofh.it>
In reply to#1468183
On Tue, Aug 23, 2016 at 1:30 AM, David Miller <davem@davemloft.net> wrote:
> From: Mikko Rapeli <mikko.rapeli@iki.fi>
> Date: Mon, 22 Aug 2016 20:32:44 +0200
>
>> Fixes userspace compiler error:
>>
>> error: ‘IFNAMSIZ’ undeclared here (not in a function)
>>
>> Suggested by Frans Klaver <fransklaver@gmail.com> on lkml message
>> <20150530195223.GA15645@bugger.home>.
>>
>> Signed-off-by: Mikko Rapeli <mikko.rapeli@iki.fi>
>
> IFNAMSIZ has to be in linux/if.h, you aren't explaining why you have
> to move it to the hdlc header instead of having the hdlc header
> include linux/if.h

Circular references. linux/if.h includes hdlc/ioctl.h, and has to
define IFNAMSIZ before doing so. If IFNAMSIZ is moved to hdlc/ioctl.h,
it is still pulled in if one includes linux/if.h. What we gain is that
you can include hdlc/ioctl.h directly (which is what one of the tests
is already doing, iirc).

But yes, it should be explained in the commit message.

Thanks,
Frans

[toc] | [prev] | [next] | [standalone]


#1467929 — [PATCH v05 26/72] include/uapi/linux/if_pppox.h: include linux/in.h and linux/in6.h

FromMikko Rapeli <mikko.rapeli@iki.fi>
Date2016-08-22 20:50 +0200
Subject[PATCH v05 26/72] include/uapi/linux/if_pppox.h: include linux/in.h and linux/in6.h
Message-ID<s92sh-1v9-23@gated-at.bofh.it>
In reply to#1467924
Fixes userspace compilation errors:

error: field ‘addr’ has incomplete type
 struct sockaddr_in addr; /* IP address and port to send to */

error: field ‘addr’ has incomplete type
 struct sockaddr_in6 addr; /* IP address and port to send to */

Signed-off-by: Mikko Rapeli <mikko.rapeli@iki.fi>
---
 include/uapi/linux/if_pppox.h | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/include/uapi/linux/if_pppox.h b/include/uapi/linux/if_pppox.h
index 473c3c4..d37bbb1 100644
--- a/include/uapi/linux/if_pppox.h
+++ b/include/uapi/linux/if_pppox.h
@@ -24,6 +24,8 @@
 #include <linux/if.h>
 #include <linux/if_ether.h>
 #include <linux/if_pppol2tp.h>
+#include <linux/in.h>
+#include <linux/in6.h>
 
 /* For user-space programs to pick up these definitions
  * which they wouldn't get otherwise without defining __KERNEL__
-- 
2.8.1

[toc] | [prev] | [next] | [standalone]


#1468177 — Re: [PATCH v05 26/72] include/uapi/linux/if_pppox.h: include linux/in.h and linux/in6.h

FromDavid Miller <davem@davemloft.net>
Date2016-08-23 01:40 +0200
SubjectRe: [PATCH v05 26/72] include/uapi/linux/if_pppox.h: include linux/in.h and linux/in6.h
Message-ID<s96YX-4v1-57@gated-at.bofh.it>
In reply to#1467929
From: Mikko Rapeli <mikko.rapeli@iki.fi>
Date: Mon, 22 Aug 2016 20:32:43 +0200

> Fixes userspace compilation errors:
> 
> error: field ‘addr’ has incomplete type
>  struct sockaddr_in addr; /* IP address and port to send to */
> 
> error: field ‘addr’ has incomplete type
>  struct sockaddr_in6 addr; /* IP address and port to send to */
> 
> Signed-off-by: Mikko Rapeli <mikko.rapeli@iki.fi>

Applied.

[toc] | [prev] | [next] | [standalone]


#1467930 — [PATCH v05 17/72] asm-generic/sembuf.h: include asm/posix_types.h and asm/ipcbuf.h

FromMikko Rapeli <mikko.rapeli@iki.fi>
Date2016-08-22 20:50 +0200
Subject[PATCH v05 17/72] asm-generic/sembuf.h: include asm/posix_types.h and asm/ipcbuf.h
Message-ID<s92si-1v9-27@gated-at.bofh.it>
In reply to#1467924
Fixes userspace compilation errors like:

error: field ‘msg_perm’ has incomplete type
struct ipc64_perm msg_perm;
error: unknown type name ‘__kernel_ulong_t’

Signed-off-by: Mikko Rapeli <mikko.rapeli@iki.fi>
---
 include/uapi/asm-generic/sembuf.h | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/include/uapi/asm-generic/sembuf.h b/include/uapi/asm-generic/sembuf.h
index 4cb2c13..17d523f 100644
--- a/include/uapi/asm-generic/sembuf.h
+++ b/include/uapi/asm-generic/sembuf.h
@@ -2,6 +2,8 @@
 #define __ASM_GENERIC_SEMBUF_H
 
 #include <asm/bitsperlong.h>
+#include <asm/posix_types.h>
+#include <asm/ipcbuf.h>
 
 /*
  * The semid64_ds structure for x86 architecture.
-- 
2.8.1

[toc] | [prev] | [next] | [standalone]


#1467932 — [PATCH v05 41/72] include/uapi/linux/atm_zatm.h: include linux/time.h

FromMikko Rapeli <mikko.rapeli@iki.fi>
Date2016-08-22 20:50 +0200
Subject[PATCH v05 41/72] include/uapi/linux/atm_zatm.h: include linux/time.h
Message-ID<s92si-1v9-31@gated-at.bofh.it>
In reply to#1467924
Fixes userspace compile error:

error: field ‘real’ has incomplete type
 struct timeval real;  /* real (wall-clock) time */

Signed-off-by: Mikko Rapeli <mikko.rapeli@iki.fi>
---
 include/uapi/linux/atm_zatm.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/include/uapi/linux/atm_zatm.h b/include/uapi/linux/atm_zatm.h
index 9c9c6ad..5cd4d4d 100644
--- a/include/uapi/linux/atm_zatm.h
+++ b/include/uapi/linux/atm_zatm.h
@@ -14,6 +14,7 @@
 
 #include <linux/atmapi.h>
 #include <linux/atmioc.h>
+#include <linux/time.h>
 
 #define ZATM_GETPOOL	_IOW('a',ATMIOC_SARPRV+1,struct atmif_sioc)
 						/* get pool statistics */
-- 
2.8.1

[toc] | [prev] | [next] | [standalone]


#1468186 — Re: [PATCH v05 41/72] include/uapi/linux/atm_zatm.h: include linux/time.h

FromDavid Miller <davem@davemloft.net>
Date2016-08-23 01:40 +0200
SubjectRe: [PATCH v05 41/72] include/uapi/linux/atm_zatm.h: include linux/time.h
Message-ID<s96YX-4v1-73@gated-at.bofh.it>
In reply to#1467932
From: Mikko Rapeli <mikko.rapeli@iki.fi>
Date: Mon, 22 Aug 2016 20:32:58 +0200

> Fixes userspace compile error:
> 
> error: field ‘real’ has incomplete type
>  struct timeval real;  /* real (wall-clock) time */
> 
> Signed-off-by: Mikko Rapeli <mikko.rapeli@iki.fi>

Applied.

[toc] | [prev] | [next] | [standalone]


#1467933 — [PATCH v05 37/72] include/uapi/linux/auto_fs.h: include linux/limits.h

FromMikko Rapeli <mikko.rapeli@iki.fi>
Date2016-08-22 20:50 +0200
Subject[PATCH v05 37/72] include/uapi/linux/auto_fs.h: include linux/limits.h
Message-ID<s92si-1v9-49@gated-at.bofh.it>
In reply to#1467924
Fixes userspace compilation error:

error: ‘NAME_MAX’ undeclared here (not in a function)

Signed-off-by: Mikko Rapeli <mikko.rapeli@iki.fi>
---
 include/uapi/linux/auto_fs.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/include/uapi/linux/auto_fs.h b/include/uapi/linux/auto_fs.h
index 9175a1b..1bfc3ed 100644
--- a/include/uapi/linux/auto_fs.h
+++ b/include/uapi/linux/auto_fs.h
@@ -12,6 +12,7 @@
 #define _UAPI_LINUX_AUTO_FS_H
 
 #include <linux/types.h>
+#include <linux/limits.h>
 #ifndef __KERNEL__
 #include <sys/ioctl.h>
 #endif /* __KERNEL__ */
-- 
2.8.1

[toc] | [prev] | [next] | [standalone]


#1468208 — Re: [PATCH v05 37/72] include/uapi/linux/auto_fs.h: include linux/limits.h

FromIan Kent <raven@themaw.net>
Date2016-08-23 02:50 +0200
SubjectRe: [PATCH v05 37/72] include/uapi/linux/auto_fs.h: include linux/limits.h
Message-ID<s984G-58O-5@gated-at.bofh.it>
In reply to#1467933
On Mon, 2016-08-22 at 20:32 +0200, Mikko Rapeli wrote:
> Fixes userspace compilation error:
> 
> error: ‘NAME_MAX’ undeclared here (not in a function)

Thanks for your effort but a patch for this, from from Tomohiro Kusumi, is
currently included in the mm tree.

> 
> Signed-off-by: Mikko Rapeli <mikko.rapeli@iki.fi>
> ---
>  include/uapi/linux/auto_fs.h | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/include/uapi/linux/auto_fs.h b/include/uapi/linux/auto_fs.h
> index 9175a1b..1bfc3ed 100644
> --- a/include/uapi/linux/auto_fs.h
> +++ b/include/uapi/linux/auto_fs.h
> @@ -12,6 +12,7 @@
>  #define _UAPI_LINUX_AUTO_FS_H
>  
>  #include <linux/types.h>
> +#include <linux/limits.h>
>  #ifndef __KERNEL__
>  #include <sys/ioctl.h>
>  #endif /* __KERNEL__ */

[toc] | [prev] | [next] | [standalone]


#1467935 — [PATCH v05 30/72] include/uapi/linux/mqueue.h: include linux/types.h

FromMikko Rapeli <mikko.rapeli@iki.fi>
Date2016-08-22 20:50 +0200
Subject[PATCH v05 30/72] include/uapi/linux/mqueue.h: include linux/types.h
Message-ID<s92si-1v9-37@gated-at.bofh.it>
In reply to#1467924
Fixes userspace compile error:

error: unknown type name ‘__kernel_long_t’
 __kernel_long_t mq_flags; /* message queue flags   */

Signed-off-by: Mikko Rapeli <mikko.rapeli@iki.fi>
---
 include/uapi/linux/mqueue.h | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/include/uapi/linux/mqueue.h b/include/uapi/linux/mqueue.h
index d0a2b8e..bbd5116 100644
--- a/include/uapi/linux/mqueue.h
+++ b/include/uapi/linux/mqueue.h
@@ -18,6 +18,8 @@
 #ifndef _LINUX_MQUEUE_H
 #define _LINUX_MQUEUE_H
 
+#include <linux/types.h>
+
 #define MQ_PRIO_MAX 	32768
 /* per-uid limit of kernel memory used by mqueue, in bytes */
 #define MQ_BYTES_MAX	819200
-- 
2.8.1

[toc] | [prev] | [next] | [standalone]


#1467936 — [PATCH v05 05/72] hsi_char.h: use __u32 from linux/types.h

FromMikko Rapeli <mikko.rapeli@iki.fi>
Date2016-08-22 20:50 +0200
Subject[PATCH v05 05/72] hsi_char.h: use __u32 from linux/types.h
Message-ID<s92si-1v9-39@gated-at.bofh.it>
In reply to#1467924
Fixes userspace compiler errors like:

linux/hsi/hsi_char.h:51:2: error: unknown type name ‘uint32_t’

Signed-off-by: Mikko Rapeli <mikko.rapeli@iki.fi>
---
 include/uapi/linux/hsi/hsi_char.h | 17 +++++++++--------
 1 file changed, 9 insertions(+), 8 deletions(-)

diff --git a/include/uapi/linux/hsi/hsi_char.h b/include/uapi/linux/hsi/hsi_char.h
index 76160b4..c00a463 100644
--- a/include/uapi/linux/hsi/hsi_char.h
+++ b/include/uapi/linux/hsi/hsi_char.h
@@ -20,10 +20,11 @@
  * 02110-1301 USA
  */
 
-
 #ifndef __HSI_CHAR_H
 #define __HSI_CHAR_H
 
+#include <linux/types.h>
+
 #define HSI_CHAR_MAGIC		'k'
 #define HSC_IOW(num, dtype)	_IOW(HSI_CHAR_MAGIC, num, dtype)
 #define HSC_IOR(num, dtype)	_IOR(HSI_CHAR_MAGIC, num, dtype)
@@ -48,16 +49,16 @@
 #define HSC_ARB_PRIO		1
 
 struct hsc_rx_config {
-	uint32_t mode;
-	uint32_t flow;
-	uint32_t channels;
+	__u32 mode;
+	__u32 flow;
+	__u32 channels;
 };
 
 struct hsc_tx_config {
-	uint32_t mode;
-	uint32_t channels;
-	uint32_t speed;
-	uint32_t arb_mode;
+	__u32 mode;
+	__u32 channels;
+	__u32 speed;
+	__u32 arb_mode;
 };
 
 #endif /* __HSI_CHAR_H */
-- 
2.8.1

[toc] | [prev] | [next] | [standalone]


#1468051 — Re: [PATCH v05 05/72] hsi_char.h: use __u32 from linux/types.h

FromSebastian Reichel <sre@kernel.org>
Date2016-08-22 23:00 +0200
SubjectRe: [PATCH v05 05/72] hsi_char.h: use __u32 from linux/types.h
Message-ID<s94u6-2Ol-51@gated-at.bofh.it>
In reply to#1467936

[Multipart message — attachments visible in raw view] — view raw

Hi,

On Mon, Aug 22, 2016 at 08:32:22PM +0200, Mikko Rapeli wrote:
> Fixes userspace compiler errors like:
> 
> linux/hsi/hsi_char.h:51:2: error: unknown type name ‘uint32_t’
> 
> Signed-off-by: Mikko Rapeli <mikko.rapeli@iki.fi>
> ---
>  include/uapi/linux/hsi/hsi_char.h | 17 +++++++++--------
>  1 file changed, 9 insertions(+), 8 deletions(-)
> 
> diff --git a/include/uapi/linux/hsi/hsi_char.h b/include/uapi/linux/hsi/hsi_char.h
> index 76160b4..c00a463 100644
> --- a/include/uapi/linux/hsi/hsi_char.h
> +++ b/include/uapi/linux/hsi/hsi_char.h
> @@ -20,10 +20,11 @@
>   * 02110-1301 USA
>   */
>  
> -
>  #ifndef __HSI_CHAR_H
>  #define __HSI_CHAR_H
>  
> +#include <linux/types.h>
> +
>  #define HSI_CHAR_MAGIC		'k'
>  #define HSC_IOW(num, dtype)	_IOW(HSI_CHAR_MAGIC, num, dtype)
>  #define HSC_IOR(num, dtype)	_IOR(HSI_CHAR_MAGIC, num, dtype)
> @@ -48,16 +49,16 @@
>  #define HSC_ARB_PRIO		1
>  
>  struct hsc_rx_config {
> -	uint32_t mode;
> -	uint32_t flow;
> -	uint32_t channels;
> +	__u32 mode;
> +	__u32 flow;
> +	__u32 channels;
>  };
>  
>  struct hsc_tx_config {
> -	uint32_t mode;
> -	uint32_t channels;
> -	uint32_t speed;
> -	uint32_t arb_mode;
> +	__u32 mode;
> +	__u32 channels;
> +	__u32 speed;
> +	__u32 arb_mode;
>  };
>  
>  #endif /* __HSI_CHAR_H */

Thanks, queued.

-- Sebastian

[toc] | [prev] | [next] | [standalone]


Page 1 of 5  [1] 2 3 4 5  Next page →

Back to top | Article view | linux.kernel


csiph-web