[OE-core] [PATCH 1/2] linux-libc-headers: Include linux/stddef.h in linux/swab.h

Bruce Ashfield bruce.ashfield at windriver.com
Thu Sep 13 03:46:36 UTC 2018


On 2018-09-12 9:05 PM, Khem Raj wrote:
> This helps compiling bpf tests using non-glibc C libraries e.g. musl

Looks good to me. Thanks for the cc', most appreciated.

Acked-by: Bruce Ashfield <bruce.ashfield at windriver.com>

> 
> Signed-off-by: Khem Raj <raj.khem at gmail.com>
> Cc: Bruce Ashfield <bruce.ashfield at windriver.com>
> ---
>   ...linux-stddef.h-in-swab.h-uapi-header.patch | 44 +++++++++++++++++++
>   .../linux-libc-headers_4.18.bb                |  1 +
>   2 files changed, 45 insertions(+)
>   create mode 100644 meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001-include-linux-stddef.h-in-swab.h-uapi-header.patch
> 
> diff --git a/meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001-include-linux-stddef.h-in-swab.h-uapi-header.patch b/meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001-include-linux-stddef.h-in-swab.h-uapi-header.patch
> new file mode 100644
> index 0000000000..9d17daa70f
> --- /dev/null
> +++ b/meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001-include-linux-stddef.h-in-swab.h-uapi-header.patch
> @@ -0,0 +1,44 @@
> +From 9708dc74d9f49488d669e070982f6224a888d61a Mon Sep 17 00:00:00 2001
> +From: Khem Raj <raj.khem at gmail.com>
> +Date: Wed, 12 Sep 2018 17:08:58 -0700
> +Subject: [PATCH] include linux/stddef.h in swab.h uapi header
> +
> +swab.h uses __always_inline without including the header where it is
> +defined, this is exposed by musl based distributions where this macro is
> +not defined by system C library headers unlike glibc where it is defined
> +in sys/cdefs.h and that header gets pulled in indirectly via
> +
> +features.h -> sys/cdefs.h
> +
> +and features.h gets pulled in a lot of headers. Therefore it may work in
> +cases where features.h is includes but not otherwise.
> +
> +Adding linux/stddef.h here ensures that __always_inline is always
> +defined independent of which C library is used in userspace
> +
> +Upstream-Status: Submitted [https://lkml.org/lkml/2018/9/13/78]
> +
> +Signed-off-by: Khem Raj <raj.khem at gmail.com>
> +Cc: Philippe Ombredanne <pombredanne at nexb.com>
> +Cc: Kate Stewart <kstewart at linuxfoundation.org>
> +Cc: Greg Kroah-Hartman <gregkh at linuxfoundation.org>
> +Cc: Thomas Gleixner <tglx at linutronix.de>
> +---
> + include/uapi/linux/swab.h | 1 +
> + 1 file changed, 1 insertion(+)
> +
> +diff --git a/include/uapi/linux/swab.h b/include/uapi/linux/swab.h
> +index 23cd84868cc3..acddbe50a20d 100644
> +--- a/include/uapi/linux/swab.h
> ++++ b/include/uapi/linux/swab.h
> +@@ -3,6 +3,7 @@
> + #define _UAPI_LINUX_SWAB_H
> +
> + #include <linux/types.h>
> ++#include <linux/stddef.h>
> + #include <linux/compiler.h>
> + #include <asm/swab.h>
> +
> +--
> +2.19.0
> +
> diff --git a/meta/recipes-kernel/linux-libc-headers/linux-libc-headers_4.18.bb b/meta/recipes-kernel/linux-libc-headers/linux-libc-headers_4.18.bb
> index e38872bb91..eb7bee72b0 100644
> --- a/meta/recipes-kernel/linux-libc-headers/linux-libc-headers_4.18.bb
> +++ b/meta/recipes-kernel/linux-libc-headers/linux-libc-headers_4.18.bb
> @@ -6,6 +6,7 @@ SRC_URI_append_libc-musl = "\
>       file://0003-remove-inclusion-of-sysinfo.h-in-kernel.h.patch \
>       file://0001-libc-compat.h-musl-_does_-define-IFF_LOWER_UP-DORMAN.patch \
>       file://0001-if_ether-move-muslc-ethhdr-protection-to-uapi-file.patch \
> +    file://0001-include-linux-stddef.h-in-swab.h-uapi-header.patch \
>      "
>   
>   SRC_URI[md5sum] = "bee5fe53ee1c3142b8f0c12c0d3348f9"
> 




More information about the Openembedded-core mailing list