uapi: includes linux/types.h before exporting files
PATCH 1/2 uapi: includes linux/types.h before exporting files
From: Nicolas Dichtel <[email protected]>
Date: Mon, 27 Mar 2017 14:20:11 +0200
commit 9078b4eea119c13d633d45af0397c821a517b522 upstream
Some files will be exported after a following patch. 0-day tests report the following warning/error:./usr/include/linux/bcache.h:8: include of <linux/types.h> is preferred over <asm/types.h> ./usr/include/linux/bcache.h:11: found __[us]{8,16,32,64} type without #include <linux/types.h> ./usr/include/linux/qrtr.h:8: found __[us]{8,16,32,64} type without #include <linux/types.h> ./usr/include/linux/cryptouser.h:39: found __[us]{8,16,32,64} type without #include <linux/types.h> ./usr/include/linux/pr.h:14: found __[us]{8,16,32,64} type without #include <linux/types.h> ./usr/include/linux/btrfs_tree.h:337: found __[us]{8,16,32,64} type without #include <linux/types.h> ./usr/include/rdma/bnxt_re-abi.h:45: found __[us]{8,16,32,64} type without #include <linux/types.h>
reb: left out include/uapi/rdma/bnxt_re-abi.h as it's not in this kernel version
--- include/uapi/linux/bcache.h | 2 +- include/uapi/linux/btrfs_tree.h | 2 ++ include/uapi/linux/cryptouser.h | 2 ++ include/uapi/linux/pr.h | 2 ++ include/uapi/linux/qrtr.h | 1 + 5 files changed, 8 insertions(+), 1 deletion(-)
include/uapi/linux/bcache.h +1 -1
@@ -5,7 +5,7 @@* Bcache on disk data structures */ -#include <asm/types.h> +#include <linux/types.h> #define BITMASK (name, type, field, offset, size) \ static inline __u64 name(const type *k) \
include/uapi/linux/btrfs_tree.h +2 -0
@@ -1,6 +1,8 @@#ifndef _BTRFS_CTREE_H_#define _BTRFS_CTREE_H_ +#include <linux/types.h> +/* * This header contains the structure definitions and constants used * by file system objects that can be retrieved using
include/uapi/linux/cryptouser.h +2 -0
@@ -18,6 +18,8 @@* 51 Franklin St - Fifth Floor, Boston, MA 02110-1301 USA. */ +#include <linux/types.h> +/* Netlink configuration messages. */ enum {CRYPTO_MSG_BASE =0x10 ,
include/uapi/linux/pr.h +2 -0
@@ -1,6 +1,8 @@#ifndef _UAPI_PR_H#define _UAPI_PR_H +#include <linux/types.h> +enum pr_type {PR_WRITE_EXCLUSIVE =1 , PR_EXCLUSIVE_ACCESS = 2,
include/uapi/linux/qrtr.h +1 -0
@@ -2,6 +2,7 @@#define _LINUX_QRTR_H#include <linux/socket.h> +#include <linux/types.h> struct sockaddr_qrtr {__kernel_sa_family_t sq_family;
Signature · 11 lines
2.27.0 -- Rolf Eike Beer, emlix GmbH, http://www.emlix.com Fon +49 551 30664-0, Fax +49 551 30664-11 Gothaer Platz 3, 37083 Göttingen, Germany Sitz der Gesellschaft: Göttingen, Amtsgericht Göttingen HR B 3160 Geschäftsführung: Heike Jordan, Dr. Uwe Kracke – Ust-IdNr.: DE 205 198 055 emlix - smart embedded open source
PATCH 2/2 install several missing uapi headers
Commit fcc8487d477a3452a1d0ccbdd4c5e0e1e3cb8bed ("uapi: export all headers under uapi directories") changed the default to install all headers not marked to be conditional. This takes the list of headers listed in the commit message and manually adds an export for those that are already present in this kernel version.
Found during an attempt to build mtd-utils 2.1.2 as it wants hash_info.h, which exists since 3.13 but has not been installed until the above mentioned commit, which ended up in 4.12.
--- arch/mips/include/uapi/asm/Kbuild | 3 +++ arch/powerpc/include/uapi/asm/Kbuild | 1 + include/uapi/drm/Kbuild | 3 +++ include/uapi/linux/Kbuild | 20 ++++++++++++++++++++ include/uapi/linux/cifs/Kbuild | 2 ++ include/uapi/linux/genwqe/Kbuild | 2 ++ 6 files changed, 31 insertions(+) create mode 100644 include/uapi/linux/cifs/Kbuild create mode 100644 include/uapi/linux/genwqe/Kbuild
arch/mips/include/uapi/asm/Kbuild +3 -0
@@ -39,3 +39,6 @@ header-y += termbits.h header-y += termios.h header-y += types.h header-y += unistd.h +header-y += hwcap.h +header-y += reg.h +header-y += ucontext.h
arch/powerpc/include/uapi/asm/Kbuild +1 -0
@@ -45,3 +45,4 @@ header-y += tm.h header-y += types.h header-y += ucontext.h header-y += unistd.h +header-y += perf_regs.h
include/uapi/drm/Kbuild +3 -0
@@ -20,3 +20,6 @@ header-y += vmwgfx_drm.h header-y += msm_drm.h header-y += vc4_drm.h header-y += virtgpu_drm.h +header-y += armada_drm.h +header-y += etnaviv_drm.h +header-y += vgem_drm.h
include/uapi/linux/Kbuild +20 -0
@@ -475,3 +475,23 @@ header-y += xilinx-v4l2-controls.h header-y += zorro.h header-y += zorro_ids.h header-y += userfaultfd.h +header-y += auto_dev-ioctl.h +header-y += bcache.h +header-y += btrfs_tree.h +header-y += coresight-stm.h +header-y += cryptouser.h +header-y += hash_info.h +header-y += kcm.h +header-y += kcov.h +header-y += kfd_ioctl.h +header-y += lightnvm.h +header-y += module.h +header-y += nilfs2_api.h +header-y += nilfs2_ondisk.h +header-y += nsfs.h +header-y += pr.h +header-y += qrtr.h +header-y += stm.h +header-y += wil6210_uapi.h +header-y += cifs/ +header-y += genwqe/
include/uapi/linux/cifs/Kbuild new file +1 -0
@@ -0,0 +1,1 @@ +header-y += cifs_mount.h
include/uapi/linux/genwqe/Kbuild new file +1 -0
@@ -0,0 +1,1 @@ +header-y += genwqe_card.h
Signature · 10 lines
2.27.0 -- Rolf Eike Beer, emlix GmbH, http://www.emlix.com Fon +49 551 30664-0, Fax +49 551 30664-11 Gothaer Platz 3, 37083 Göttingen, Germany Sitz der Gesellschaft: Göttingen, Amtsgericht Göttingen HR B 3160 Geschäftsführung: Heike Jordan, Dr. Uwe Kracke – Ust-IdNr.: DE 205 198 055 emlix - smart embedded open source
Greg KH
maintainerRe: [PATCH 4.9.y 2/2] install several missing uapi headers
Quoted 11 lines · Rolf Eike Beer
Commit
fcc8487d477a3452a1d0ccbdd4c5e0e1e3cb8bed("uapi: export all headers under uapi directories") changed the default to install all headers not marked to be conditional. This takes the list of headers listed in the commit message and manually adds an export for those that are already present in this kernel version.Found during an attempt to build mtd-utils 2.1.2 as it wants
hash_info.h, which exists since 3.13 but has not been installed until the above mentioned commit, which ended up in 4.12.Signed-off-by Rolf Eike Beer <[email protected]>
Quoted 10 lines
--- arch/mips/include/uapi/asm/Kbuild | 3 +++ arch/powerpc/include/uapi/asm/Kbuild | 1 + include/uapi/drm/Kbuild | 3 +++ include/uapi/linux/Kbuild | 20 ++++++++++++++++++++ include/uapi/linux/cifs/Kbuild | 2 ++ include/uapi/linux/genwqe/Kbuild | 2 ++ 6 files changed, 31 insertions(+) create mode 100644 include/uapi/linux/cifs/Kbuild create mode 100644 include/uapi/linux/genwqe/Kbuild
I doubt many people are hitting this old issue on 4.9, but oh well, it looks correct, so now queued up :)
greg k-h