lkml.org 
[lkml]   [2021]   [Mar]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.10 053/157] kbuild: Fix <linux/version.h> for empty SUBLEVEL or PATCHLEVEL again
    Date
    From: Masahiro Yamada <masahiroy@kernel.org>

    commit 207da4c82ade9a6d59f7e794d737ba0748613fa2 upstream.

    Commit 78d3bb4483ba ("kbuild: Fix <linux/version.h> for empty SUBLEVEL
    or PATCHLEVEL") fixed the build error for empty SUBLEVEL or PATCHLEVEL
    by prepending a zero.

    Commit 9b82f13e7ef3 ("kbuild: clamp SUBLEVEL to 255") re-introduced
    this issue.

    This time, we cannot take the same approach because we have C code:

    #define LINUX_VERSION_PATCHLEVEL $(PATCHLEVEL)
    #define LINUX_VERSION_SUBLEVEL $(SUBLEVEL)

    Replace empty SUBLEVEL/PATCHLEVEL with a zero.

    Fixes: 9b82f13e7ef3 ("kbuild: clamp SUBLEVEL to 255")
    Reported-by: Christian Zigotzky <chzigotzky@xenosoft.de>
    Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
    Reviewed-and-tested-by: Sasha Levin <sashal@kernel.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    ---
    Makefile | 6 ++++--
    1 file changed, 4 insertions(+), 2 deletions(-)

    --- a/Makefile
    +++ b/Makefile
    @@ -1249,15 +1249,17 @@ endef
    define filechk_version.h
    if [ $(SUBLEVEL) -gt 255 ]; then \
    echo \#define LINUX_VERSION_CODE $(shell \
    - expr $(VERSION) \* 65536 + 0$(PATCHLEVEL) \* 256 + 255); \
    + expr $(VERSION) \* 65536 + $(PATCHLEVEL) \* 256 + 255); \
    else \
    echo \#define LINUX_VERSION_CODE $(shell \
    - expr $(VERSION) \* 65536 + 0$(PATCHLEVEL) \* 256 + $(SUBLEVEL)); \
    + expr $(VERSION) \* 65536 + $(PATCHLEVEL) \* 256 + $(SUBLEVEL)); \
    fi; \
    echo '#define KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + \
    ((c) > 255 ? 255 : (c)))'
    endef

    +$(version_h): PATCHLEVEL := $(if $(PATCHLEVEL), $(PATCHLEVEL), 0)
    +$(version_h): SUBLEVEL := $(if $(SUBLEVEL), $(SUBLEVEL), 0)
    $(version_h): FORCE
    $(call filechk,version.h)
    $(Q)rm -f $(old_version_h)

    \
     
     \ /
      Last update: 2021-03-22 13:45    [W:4.032 / U:0.124 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site