Re: [RFC PATCH for-stable] kbuild: Define LINUX_VERSION_{MAJOR,PATCHLEVEL,SUBLEVEL}

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





在 2022/2/7 12:01, Greg KH 写道:
On Mon, Feb 07, 2022 at 11:52:12AM +0000, Jiaxun Yang wrote:
Since the SUBLEVEL overflowed LINUX_VERSION, we have no reliable
way to tell the current SUBLEVEL in source code.
What in-kernel code needs to know the SUBLEVEL?
Hi,

Ah sorry, to clarification, backport here means "Backport Project"
(https://backports.wiki.kernel.org).

Though it is not in-tree, it is a vital part of kernel ecosystem to
deliver some new drivers to stable kernels.

It relies on KERNEL_VERSION macros to enable compat code.


This brings significant difficulties for backport works to deal
with changes in stable releases.
What backport issues?
Context: https://lore.kernel.org/backports/bb0ae37aa770e016463706d557fec1c5205bc6a9.camel@xxxxxxxxxxxxxxxx/T/#t

We are nolonger able to detect linux version > 4.9.255 in source.

Define those macros so we can continue to get proper SUBLEVEL
in source without breaking stable ABI by refining KERNEL_VERSION
bit fields.

Signed-off-by: Jiaxun Yang <jiaxun.yang@xxxxxxxxxxx>
---
For some context: https://lore.kernel.org/backports/bb0ae37aa770e016463706d557fec1c5205bc6a9.camel@xxxxxxxxxxxxxxxx/T/#t
---
  Makefile | 5 ++++-
  1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/Makefile b/Makefile
index 99d37c23495e..8132f81d94d8 100644
--- a/Makefile
+++ b/Makefile
@@ -1142,7 +1142,10 @@ endef
  define filechk_version.h
  	(echo \#define LINUX_VERSION_CODE $(shell                         \
  	expr $(VERSION) \* 65536 + 0$(PATCHLEVEL) \* 256 + 255); \
-	echo '#define KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c))';)
+	echo '#define KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c))'; \
+	echo \#define LINUX_VERSION_MAJOR $(VERSION); \
+	echo \#define LINUX_VERSION_PATCHLEVEL $(PATCHLEVEL); \
+	echo \#define LINUX_VERSION_SUBLEVEL $(SUBLEVEL);)
This is already in Makefile, are you sure you just do not need to
backport
I wish this can be a part of existing stable kernels so backport project
can maintain flawless build againt stable kernels.

Thanks.
- Jiaxun

a specific patch instead of making your own that does the same
thing?

thanks,

greg k-h




[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux