imq / linuximq

Pseudo-driver for the intermediate queue device.
https://imq.github.io/
GNU General Public License v2.0
99 stars 51 forks source link

Kernel-Patch will not with Kernel-Line 5.7 #89

Closed Roland-F closed 4 years ago

Roland-F commented 4 years ago

The actually Kernel-Patch for Kernel 5.4 will not longer fir for Kernel 5.7. So there is an update for this need. There be problems by the patching self and also during the build as the variable nf_qeue_entry_release_refs is also changed in the Kernel (Something like static)

bkuhls commented 4 years ago

This is the kernel patch which breaks building imq: https://github.com/torvalds/linux/commit/dd3cc111f2e3220ddc9c4ab17f13dc97759b5163

Here is a try by the fli4l project to fix the problem https://web.nettworks.org/bugs/browse/FFL-2610 - see 10-imq.patch

But this patch is not enough to fix the build. Attached you will find my additional changes to get kernel 5.7 compiled, not runtime-tested however: 10a-imq-fix.txt

Roland-F commented 4 years ago

The build will work with that additional patch. But here as also with Kernel-Line 5.8 i see there no function of LinuxIMQ. So still wait for an official fix here.

mrg2k8 commented 4 years ago

Hello,

I've spent more than a week in my free time trying to get any version 5 kernel to compile on CentOS 7, without any luck. I am using the elrepo 5.x (http://mirror.hoztnode.net/elrepo/kernel/el7/SRPMS/) spec and config (with the required options for IMQ from the documentation) and vanilla kernel sources from kernel.org.

I have also tried patches from @Roland-F's fli4l project, as well as patches posted in previous issues.

The errors I am getting are the following:

export ELREPO_NOSRC_URL="http://mirror.hoztnode.net/elrepo/kernel/el7/SRPMS/kernel-ml-5.4.10-1.el7.elrepo.nosrc.rpm"
export KERNEL_SOURCE_URL="https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.4.10.tar.xz"
export IMQ_PATCH_URL="https://github.com/imq/linuximq/files/4046078/linux-5.4.10-imq.diff.txt"

drivers/net/imq.c: In function 'nf_bridge_adjust_skb_data':
drivers/net/imq.c:409:9: error: 'struct sk_buff' has no member named 'nf_bridge'
  if (skb->nf_bridge)
         ^
drivers/net/imq.c: In function 'nf_bridge_adjust_segmented_data':
drivers/net/imq.c:415:9: error: 'struct sk_buff' has no member named 'nf_bridge'

I was able to patch kernel 4.4.238, but it doesn't have CAKE for tc, which I also need.

Can anyone point me in the direction of successfully patching any 5.x kernel for Centos 7?

Thanks.

Roland-F commented 4 years ago

I suggest as kernel-lines 5.7 and 5.8 be EOL, this will not be solved anymore.