[Bug 1912783] [NEW] west-chamber-dkms fails to build after ip_route_me_harder() signature change

Launchpad Bug Tracker 1912783 at bugs.launchpad.net
Tue Mar 9 19:41:06 UTC 2021


You have been subscribed to a public bug by Brian Murray (brian-murray):

[Impact]
Focal linux 5.4.0-57.63 and Groovy linux 5.8.0-44.50 backported from upstream stable releases the following commit, which broke the build of west-chamber dkms modules on Groovy, Focal and Bionic for all 5.4 and 5.8 kernels based on this release:

"netfilter: use actual socket sk rather than skb sk when routing harder"
(Upstream commit 46d6c5ae953cc0be38efd0e469284df7c4328cf8).

This is the same issue found on xtables-addons (bug 1907109 and bug
1915177).

[Test case]
Install west-chamber-dkms package which builds the kernel modules.

[Fix]
The proposed fix is similar to what has been done for xtabled-addons and use a version of the API depending on the kernel version being built against.

However, the ABI version detection needs to be done differently between
the 5.4 and the 5.8 kernels. For the 5.4 kernels the ABI change was
applied as part of an upstream stable release which changed the SUBLEVEL
version on the Makefile, so the detection can be done using the
LINUX_VERSION_CODE macro. For the 5.8 kernels, this can't be done and
another method is needed to check function declaration on the kernel
headers. Therefore Focal also needs the same change as done in Groovy
because of the HWE backport based on 5.8.

[Where problems could occur]
If any kernel version doesn't match the assumptions reflected by the ifdef's the modules can fail to build.

-----
Testing failing on:
amd64: https://objectstorage.prodstack4-5.canonical.com/v1/AUTH_77e2ada1e7a84929a74ba3b87153c0ac/autopkgtest-focal/focal/amd64/w/west-chamber/20210121_172911_d9f41@/log.gz
arm64: https://objectstorage.prodstack4-5.canonical.com/v1/AUTH_77e2ada1e7a84929a74ba3b87153c0ac/autopkgtest-focal/focal/arm64/w/west-chamber/20210113_011159_54cdf@/log.gz
armhf: https://objectstorage.prodstack4-5.canonical.com/v1/AUTH_77e2ada1e7a84929a74ba3b87153c0ac/autopkgtest-focal/focal/armhf/w/west-chamber/20210113_010911_54cdf@/log.gz
ppc64el: https://objectstorage.prodstack4-5.canonical.com/v1/AUTH_77e2ada1e7a84929a74ba3b87153c0ac/autopkgtest-focal/focal/ppc64el/w/west-chamber/20210113_010547_54cdf@/log.gz
s390x: https://objectstorage.prodstack4-5.canonical.com/v1/AUTH_77e2ada1e7a84929a74ba3b87153c0ac/autopkgtest-focal/focal/s390x/w/west-chamber/20210113_010347_cc516@/log.gz

Build of the dkms is failing with the following error:

/usr/src/west-chamber-20100405+svn20111107.r124/extensions/xt_CUI.c:106:30: error: passing argument 2 of ‘ip_route_me_harder’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  106 |  if (ip_route_me_harder(net, skb, addr_type))
      |                              ^~~
      |                              |
      |                              struct sk_buff *
In file included from ./include/linux/netfilter/x_tables.h:245,
                 from /usr/src/west-chamber-20100405+svn20111107.r124/extensions/xt_CUI.c:19:
./include/linux/netfilter_ipv4.h:19:54: note: expected ‘struct sock *’ but argument is of type ‘struct sk_buff *’
   19 | int ip_route_me_harder(struct net *net, struct sock *sk, struct sk_buff *skb, unsigned addr_type);
      |

** Affects: west-chamber (Ubuntu)
     Importance: Undecided
         Status: Fix Released

** Affects: west-chamber (Ubuntu Bionic)
     Importance: High
         Status: Fix Committed

** Affects: west-chamber (Ubuntu Focal)
     Importance: High
         Status: Fix Committed

** Affects: west-chamber (Ubuntu Groovy)
     Importance: High
         Status: Fix Committed


** Tags: verification-needed verification-needed-bionic verification-needed-focal verification-needed-groovy
-- 
west-chamber-dkms fails to build after ip_route_me_harder() signature change
https://bugs.launchpad.net/bugs/1912783
You received this bug notification because you are a member of Ubuntu Sponsors Team, which is subscribed to the bug report.



More information about the Ubuntu-sponsors mailing list