https://bugs.dpdk.org/show_bug.cgi?id=1025

            Bug ID: 1025
           Summary: [dpdk 22.07/dpdk-next-net] kernel/linux/kni meson
                    build failed on
                    Ub22.04/Ub20.04/Fedora36/Centos7.9/SUSE15/RHEL8.6
           Product: DPDK
           Version: unspecified
          Hardware: All
                OS: All
            Status: UNCONFIRMED
          Severity: critical
          Priority: Normal
         Component: core
          Assignee: dev@dpdk.org
          Reporter: daxuex....@intel.com
  Target Milestone: ---

[Dpdk version]
dpdk branch: fb96caa56aabaa425ae66cd638ce9b9065828044


[OS version]
OS: FC36-64
        Kernel Version: 5.17.7-300.fc36.x86_64
        GCC Version: gcc (GCC) 12.1.1 20220507 (Red Hat 12.1.1-1)
        Clang Version: 14.0.0 (Fedora 14.0.0-1.fc36)

OS: RHEL86-64
        Kernel Version: 4.18.0-372.9.1.el8.x86_64
        GCC Version: gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-13)
        Clang Version: 14.0.0 (Red Hat 14.0.0-1.module_el8.7.0+1142+5343df54)

OS: SUSE15-64
        Kernel Version: 5.3.18-57-default
        GCC Version: gcc (SUSE Linux) 7.5.0
        Clang Version: 11.0.1

OS: UB2004-64
        Kernel Version: 5.8.0-48-generic
        GCC Version: gcc (Ubuntu 10.3.0-1ubuntu1~20.04) 10.3.0
        Clang Version: 10.0.0-4ubuntu1

OS: UB2204-64
        Kernel Version: 5.15.0-25-generic
        GCC Version: gcc (Ubuntu 11.2.0-19ubuntu1) 11.2.0


OS: CentOS79-64
        Kernel Version: 3.10.0-1160.el7.x86_64
        GCC Version: gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-44)


[Test Setup]
#  meson --werror -Denable_kmods=True -Dlibdir=lib -Dexamples=all
--default-library=static gcc-linux-app
# ninja -C gcc-linux-app

[log]

[3506/3587] Generating kernel/linux/kni/rte_kni with a custom command
FAILED: kernel/linux/kni/rte_kni.ko
/usr/bin/make -j4 -C /lib/modules/5.15.0-25-generic/build
M=/tmp/dpdk/gcc-linux-app/kernel/linux/kni src=/tmp/dpdk/kernel/linux/kni
'MODULE_CFLAGS=  -include /tmp/dpdk/config/rte_config.h
-I/tmp/dpdk/lib/eal/include -I/tmp/dpdk/lib/kni -I/tmp/dpdk/gcc-linux-app
-I/tmp/dpdk/kernel/linux/kni' modules
make: Entering directory '/usr/src/linux-headers-5.15.0-25-generic'
  CC [M]  /tmp/dpdk/gcc-linux-app/kernel/linux/kni/kni_misc.o
  CC [M]  /tmp/dpdk/gcc-linux-app/kernel/linux/kni/kni_net.o
/tmp/dpdk/kernel/linux/kni/kni_net.c: In function ‘kni_net_rx_normal’:
/tmp/dpdk/kernel/linux/kni/kni_net.c:448:2: error: #else after #else
  448 | #else
      |  ^~~~
/tmp/dpdk/kernel/linux/kni/kni_net.c:444: error: the conditional began here
  444 | #ifdef HAVE_NETIF_RX_NI
      |
/tmp/dpdk/kernel/linux/kni/kni_net.c:444: error: unterminated #else
/tmp/dpdk/kernel/linux/kni/kni_net.c:445:17: error: expected declaration or
statement at end of input
  445 |                 netif_rx_ni(skb);
      |                 ^~~~~~~~~~~
/tmp/dpdk/kernel/linux/kni/kni_net.c:445:17: error: expected declaration or
statement at end of input
/tmp/dpdk/kernel/linux/kni/kni_net.c:382:18: warning: unused variable ‘ret’
[-Wunused-variable]
  382 |         uint32_t ret;
      |                  ^~~
At top level:
/tmp/dpdk/kernel/linux/kni/kni_net.c:297:1: warning: ‘kni_net_tx’ defined but
not used [-Wunused-function]
  297 | kni_net_tx(struct sk_buff *skb, struct net_device *dev)
      | ^~~~~~~~~~
/tmp/dpdk/kernel/linux/kni/kni_net.c:284:1: warning: ‘kni_net_config’ defined
but not used [-Wunused-function]
  284 | kni_net_config(struct net_device *dev, struct ifmap *map)
      | ^~~~~~~~~~~~~~
/tmp/dpdk/kernel/linux/kni/kni_net.c:202:1: warning: ‘kni_net_release’ defined
but not used [-Wunused-function]
  202 | kni_net_release(struct net_device *dev)
      | ^~~~~~~~~~~~~~~
/tmp/dpdk/kernel/linux/kni/kni_net.c:180:1: warning: ‘kni_net_open’ defined but
not used [-Wunused-function]
  180 | kni_net_open(struct net_device *dev)
      | ^~~~~~~~~~~~
/tmp/dpdk/kernel/linux/kni/kni_net.c:38:21: warning: ‘kni_net_rx_func’ defined
but not used [-Wunused-variable]
   38 | static kni_net_rx_t kni_net_rx_func = kni_net_rx_normal;
      |                     ^~~~~~~~~~~~~~~
make[1]: *** [scripts/Makefile.build:285:
/tmp/dpdk/gcc-linux-app/kernel/linux/kni/kni_net.o] Error 1
make[1]: *** Waiting for unfinished jobs....
make: *** [Makefile:1875: /tmp/dpdk/gcc-linux-app/kernel/linux/kni] Error 2
make: Leaving directory '/usr/src/linux-headers-5.15.0-25-generic'
[3513/3587] Compiling C object app/test/dpdk-test.p/test_ring.c.o
ninja: build stopped: subcommand failed.


[bad commit]
commit c98600d4bed6d15599e448990f2ba117ca938a2d
Author: Jiri Slaby <jsl...@suse.cz>
Date:   Wed Jun 1 08:53:58 2022 +0200

    kni: fix build with Linux 5.18

    Since commit 2655926aea9b (net: Remove netif_rx_any_context() and
    netif_rx_ni().) in 5.18, netif_rx_ni() no longer exists as netif_rx()
    can be called from any context. So define HAVE_NETIF_RX_NI for older
    releases and call the appropriate function in kni_net.

    netif_rx_ni() must be used on older kernel since netif_rx() might
    might lead to deadlocks or other problems there.

    Cc: sta...@dpdk.org

    Signed-off-by: Jiri Slaby <jsl...@suse.cz>
    Reviewed-by: Andrew Rybchenko <andrew.rybche...@oktetlabs.ru>

 kernel/linux/kni/compat.h  | 4 ++++
 kernel/linux/kni/kni_net.c | 4 ++++
 2 files changed, 8 insertions(+)

-- 
You are receiving this mail because:
You are the assignee for the bug.

Reply via email to