nft_expr_ops.dump signature not covered by kernel-module build detection — fails on RHEL9/kernel 5.14, reproduces on master, mr26.2.1.1, and mr26.1.1.10
Maintainers usually reply within 3 days
Nobody has claimed this yet.
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 45/100
- Issue type
- Bug
- Clarity
- Mostly clear
- Activity status
- Quiet
- Tech stack
- c, linux
- Domain
- build-system
Research direction
The kernel-module build auto-detects API variants in kernel-module/gen-rtpengine-kmod-flags; read the existing NFT_EXPR_OPS_VALIDATE_HAS_DATA compile-test there and commit 503c4aa as the pattern to follow. The .dump mismatch surfaces in the nft_expr_ops initialisers for rtpengine_inet_ops, rtpengine_ipv4_ops and rtpengine_ipv6_ops, while eventfd_signal_mask is used in ring_buffer_insert. Done looks like a clean kernel-module make on RHEL9 5.14 that selects the 3-arg dump signature without breaking kernels that still use the 2-arg one.
Written by the indexing model from the issue text.
Description
rtpengine version the issue has been seen with
mr26.2.1.1
Used distribution and its version
No response
Linux kernel version used
No response
CPU architecture issue was seen on (see uname -m)
None
Expected behaviour you didn't see
Environment: RHEL 9 family, kernel 5.14.0-70.22.1.el9_0.x86_64, matching kernel-devel headers confirmed present and correct.
Steps: git checkout → cd kernel-module && make clean && make, tried on master, mr26.2.1.1, and mr26.1.1.10.
Error 1 (all three): implicit declaration of function 'eventfd_signal_mask' in ring_buffer_insert.
Error 2 (all three): .dump = rtpengine_expr_dump — incompatible pointer type, kernel expects 3-arg (struct sk_buff *, const struct nft_expr *, bool), code provides 2-arg, for rtpengine_inet_ops, rtpengine_ipv4_ops, rtpengine_ipv6_ops.
Investigation: gen-rtpengine-kmod-flags (the build's own kernel-API auto-detection script) contains a real compile-test for nft_expr_ops.validate's signature (NFT_EXPR_OPS_VALIDATE_HAS_DATA), with a comment explaining distro kernels backport APIs without bumping LINUX_VERSION_CODE, so a compile-test is required rather than a version check. Confirmed via git show master:kernel-module/gen-rtpengine-kmod-flags | grep -i "dump|reset" — no equivalent detection exists for .dump, on master or either tag tried. Commit 503c4aa ("Fix nft_rtpengine compilation on RHEL/AlmaLinux 9.x kernel 5.14") addresses this exact symptom but doesn't appear to activate on this kernel — possibly because .dump's variant selection relies on a LINUX_VERSION_CODE check rather than a compile-test, which would fail for the same backporting reason .validate already accounts for.
Unexpected behaviour you saw
No response
Steps to reproduce the problem
No response
Additional program output to the terminal or logs illustrating the issue
Anything else?
No response
- Dominant language
- Perl
- Stars
- 992
- Forks
- 459
- PR merge metrics
- No merged PRs in 30d
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from sipwise/rtpengine
-
Difficulty 2/5 1-3 hours Newbie friendliness 67/100
Maintainers usually reply within 3 days
-
bug
Difficulty 1/5 Under an hour Newbie friendliness 75/100
Maintainers usually reply within 3 days
-
bug
Difficulty 4/5 3-5 days Newbie friendliness 15/100
sipwise/rtpengine#2197 · 1 comment ·
Maintainers usually reply within 3 days
-
bug
Difficulty 4/5 3-5 days Newbie friendliness 38/100
sipwise/rtpengine#2190 · 1 comment ·
Maintainers usually reply within 3 days
-
Difficulty 4/5 3-5 days Newbie friendliness 35/100
sipwise/rtpengine#2181 · 4 comments ·
Maintainers usually reply within 3 days
All issues in sipwise/rtpengine
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 69/100
bioconda/bioconda-recipes#70187 ·
Maintainers usually reply within 2 days
-
documentation Needs Triage
Difficulty 1/5 Under an hour Newbie friendliness 93/100
Maintainers usually reply within 1 day
-
Proposed Text EditsOpen
Difficulty 1/5 Under an hour Newbie friendliness 82/100
curl/everything-curl#658 ·
-
Difficulty 1/5 Under an hour Newbie friendliness 82/100
PDLPorters/pdl#561 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
objectionary/eolang.sty#197 ·
Maintainers usually reply within 2 days