Re: [PATCH v7 7/8] uapi: export all headers under uapi directories

From: Dmitry V. Levin
Date: Mon Feb 27 2017 - 21:48:57 EST


On Mon, Feb 27, 2017 at 05:01:55PM +0100, Nicolas Dichtel wrote:
> Le 24/02/2017 Ã 17:49, Nicolas Dichtel a Ãcrit :
> > Regularly, when a new header is created in include/uapi/, the developer
> > forgets to add it in the corresponding Kbuild file. This error is usually
> > detected after the release is out.
> >
> > In fact, all headers under uapi directories should be exported, thus it's
> > useless to have an exhaustive list.
> >
> > After this patch, the following files, which were not exported, are now
> > exported (with make headers_install_all):
> > asm-arc/kvm_para.h
> > asm-arc/ucontext.h
> > asm-avr32/kvm_para.h
> > asm-blackfin/shmparam.h
> > asm-blackfin/ucontext.h
> > asm-c6x/shmparam.h
> > asm-c6x/ucontext.h
> > asm-cris/kvm_para.h
> > asm-h8300/shmparam.h
> > asm-h8300/ucontext.h
> > asm-hexagon/shmparam.h
> > asm-m32r/kvm_para.h
> > asm-m68k/kvm_para.h
> > asm-m68k/shmparam.h
> > asm-metag/kvm_para.h
> > asm-metag/shmparam.h
> > asm-metag/ucontext.h
> > asm-mips/hwcap.h
> > asm-mips/reg.h
> > asm-mips/ucontext.h
> > asm-nios2/kvm_para.h
> > asm-nios2/ucontext.h
> > asm-openrisc/shmparam.h
> > asm-parisc/kvm_para.h
> > asm-powerpc/perf_regs.h
> > asm-sh/kvm_para.h
> > asm-sh/ucontext.h
> > asm-tile/shmparam.h
> > asm-unicore32/shmparam.h
> > asm-unicore32/ucontext.h
> > asm-x86/hwcap2.h
> > asm-xtensa/kvm_para.h
> > drm/armada_drm.h
> > drm/etnaviv_drm.h
> > drm/vgem_drm.h
> > linux/auto_dev-ioctl.h
> > linux/bcache.h
> > linux/btrfs_tree.h
> > linux/cifs
> > linux/cifs/cifs_mount.h
> > linux/coresight-stm.h
> > linux/cryptouser.h
> > linux/genwqe
> > linux/genwqe/genwqe_card.h
> > linux/hash_info.h
> > linux/kcm.h
> > linux/kcov.h
> > linux/kfd_ioctl.h
> > linux/lightnvm.h
> > linux/module.h
> > linux/nilfs2_api.h
> > linux/nilfs2_ondisk.h
> > linux/nsfs.h
> > linux/pr.h
> > linux/qrtr.h
> > linux/rpmsg.h
> > linux/sed-opal.h
> > linux/smc.h
> > linux/smc_diag.h
> > linux/stm.h
> > linux/userio.h
> > linux/wil6210_uapi.h
> > rdma/bnxt_re-abi.h
> >
> > Note that I have removed from this list the files which are generated in every
> > exported directories (like .install or .install.cmd).
> >
> > Thanks to Julien Floret <julien.floret@xxxxxxxxx> for the tip to get all
> > subdirs with a pure makefile command.
> >
> > For the record, note that exported files for asm directories are a mix of
> > files listed by:
> > - include/uapi/asm-generic/Kbuild.asm;
> > - arch/<arch>/include/uapi/asm/Kbuild;
> > - arch/<arch>/include/asm/Kbuild.
> >
> > Signed-off-by: Nicolas Dichtel <nicolas.dichtel@xxxxxxxxx>
> > Acked-by: Daniel Vetter <daniel.vetter@xxxxxxxx>
> > Acked-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxx>
> > Acked-by: Mark Salter <msalter@xxxxxxxxxx>
> > Acked-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx> (powerpc)
> Is there any chance to get this series in before the rc1?

Note that the following newly exported headers have userspace compilation
errors:

/usr/include/drm/armada_drm.h:26:2: error: unknown type name 'uint32_t'
uint32_t handle;

/usr/include/linux/btrfs_tree.h:390:12: error: 'BTRFS_UUID_SIZE' undeclared here (not in a function)
__u8 uuid[BTRFS_UUID_SIZE];

/usr/include/linux/cryptouser.h:58:16: error: 'CRYPTO_MAX_ALG_NAME' undeclared here (not in a function)
char cru_name[CRYPTO_MAX_ALG_NAME];

/usr/include/linux/kfd_ioctl.h:33:2: error: unknown type name 'uint32_t'
uint32_t major_version; /* from KFD */

/usr/include/linux/smc_diag.h:6:27: fatal error: rdma/ib_verbs.h: No such file or directory
#include <rdma/ib_verbs.h>

/usr/include/linux/wil6210_uapi.h:73:2: error: unknown type name 'uint32_t'
uint32_t op; /* enum wil_memio_op */

I think they should be fixed first.


--
ldv

Attachment: pgpJ1BYwVfBBK.pgp
Description: PGP signature