Project

General

Profile

Actions

Bug #41523

closed

build ceph failed when using WITH_DPDK=ON

Added by Hu Ye over 4 years ago. Updated almost 3 years ago.

Status:
Closed
Priority:
High
Assignee:
-
Category:
build
Target version:
-
% Done:

0%

Source:
Tags:
Backport:
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature (v1):
Crash signature (v2):

Description

I used the master brach of ceph, here are the build error logs:


In file included from /home/yehu/ceph/ceph/src/msg/async/dpdk/DPDK.cc:37:
/home/yehu/ceph/ceph/src/msg/async/dpdk/IP.h:126:8: error: redefinition of ‘struct icmp_hdr’
 struct icmp_hdr {
        ^~~~~~~~
In file included from /home/yehu/ceph/ceph/build/src/dpdk/include/rte_flow.h:23,
                 from /home/yehu/ceph/ceph/build/src/dpdk/include/rte_eth_ctrl.h:11,
                 from /home/yehu/ceph/ceph/build/src/dpdk/include/rte_ethdev.h:887,
                 from /home/yehu/ceph/ceph/src/msg/async/dpdk/DPDK.cc:31:
/home/yehu/ceph/ceph/build/src/dpdk/include/rte_icmp.h:26:8: note: previous definition of ‘struct icmp_hdr’
 struct icmp_hdr {
        ^~~~~~~~
In file included from /home/yehu/ceph/ceph/src/common/ceph_time.h:23,
                 from /home/yehu/ceph/ceph/src/msg/async/Event.h:44,
                 from /home/yehu/ceph/ceph/src/msg/async/dpdk/IP.h:35,
                 from /home/yehu/ceph/ceph/src/msg/async/dpdk/DPDK.cc:37:
/home/yehu/ceph/ceph/src/msg/async/dpdk/DPDK.cc: In member function ‘int DPDKDevice::init_port_start()’:
/home/yehu/ceph/ceph/src/msg/async/dpdk/DPDK.cc:154:45: warning: ‘uint16_t rte_eth_dev_count()’ is deprecated [-Wdeprecated-declarations]
   ceph_assert(_port_idx < rte_eth_dev_count());
                                             ^
/home/yehu/ceph/ceph/src/include/ceph_assert.h:106:6: note: in definition of macro ‘ceph_assert’
    ((expr) \
      ^~~~
In file included from /home/yehu/ceph/ceph/src/msg/async/dpdk/DPDK.cc:31:
/home/yehu/ceph/ceph/build/src/dpdk/include/rte_ethdev.h:1593:10: note: declared here
 uint16_t rte_eth_dev_count(void);
          ^~~~~~~~~~~~~~~~~
In file included from /home/yehu/ceph/ceph/src/common/ceph_time.h:23,
                 from /home/yehu/ceph/ceph/src/msg/async/Event.h:44,
                 from /home/yehu/ceph/ceph/src/msg/async/dpdk/IP.h:35,
                 from /home/yehu/ceph/ceph/src/msg/async/dpdk/DPDK.cc:37:
/home/yehu/ceph/ceph/src/msg/async/dpdk/DPDK.cc:154:45: warning: ‘uint16_t rte_eth_dev_count()’ is deprecated [-Wdeprecated-declarations]
   ceph_assert(_port_idx < rte_eth_dev_count());
                                             ^
/home/yehu/ceph/ceph/src/include/ceph_assert.h:106:6: note: in definition of macro ‘ceph_assert’
    ((expr) \
      ^~~~
In file included from /home/yehu/ceph/ceph/src/msg/async/dpdk/DPDK.cc:31:
/home/yehu/ceph/ceph/build/src/dpdk/include/rte_ethdev.h:1593:10: note: declared here
 uint16_t rte_eth_dev_count(void);
          ^~~~~~~~~~~~~~~~~
/home/yehu/ceph/ceph/src/msg/async/dpdk/DPDK.cc:193:28: error: ‘struct rte_eth_txconf’ has no member named ‘txq_flags’
   _dev_info.default_txconf.txq_flags =
                            ^~~~~~~~~
/home/yehu/ceph/ceph/src/msg/async/dpdk/DPDK.cc:194:7: error: ‘ETH_TXQ_FLAGS_NOMULTMEMP’ was not declared in this scope
       ETH_TXQ_FLAGS_NOMULTMEMP | ETH_TXQ_FLAGS_NOREFCOUNT;
       ^~~~~~~~~~~~~~~~~~~~~~~~
/home/yehu/ceph/ceph/src/msg/async/dpdk/DPDK.cc:194:34: error: ‘ETH_TXQ_FLAGS_NOREFCOUNT’ was not declared in this scope
       ETH_TXQ_FLAGS_NOMULTMEMP | ETH_TXQ_FLAGS_NOREFCOUNT;
                                  ^~~~~~~~~~~~~~~~~~~~~~~~
/home/yehu/ceph/ceph/src/msg/async/dpdk/DPDK.cc:194:34: note: suggested alternative: ‘CEPH_OSD_FLAG_IGNORE_CACHE’
       ETH_TXQ_FLAGS_NOMULTMEMP | ETH_TXQ_FLAGS_NOREFCOUNT;
                                  ^~~~~~~~~~~~~~~~~~~~~~~~
                                  CEPH_OSD_FLAG_IGNORE_CACHE
/home/yehu/ceph/ceph/src/msg/async/dpdk/DPDK.cc:200:30: error: ‘struct rte_eth_txconf’ has no member named ‘txq_flags’
     _dev_info.default_txconf.txq_flags |= ETH_TXQ_FLAGS_NOXSUMUDP;
                              ^~~~~~~~~
/home/yehu/ceph/ceph/src/msg/async/dpdk/DPDK.cc:200:43: error: ‘ETH_TXQ_FLAGS_NOXSUMUDP’ was not declared in this scope
     _dev_info.default_txconf.txq_flags |= ETH_TXQ_FLAGS_NOXSUMUDP;
                                           ^~~~~~~~~~~~~~~~~~~~~~~
/home/yehu/ceph/ceph/src/msg/async/dpdk/DPDK.cc:204:30: error: ‘struct rte_eth_txconf’ has no member named ‘txq_flags’
     _dev_info.default_txconf.txq_flags |= ETH_TXQ_FLAGS_NOXSUMTCP;
                              ^~~~~~~~~
/home/yehu/ceph/ceph/src/msg/async/dpdk/DPDK.cc:204:43: error: ‘ETH_TXQ_FLAGS_NOXSUMTCP’ was not declared in this scope
     _dev_info.default_txconf.txq_flags |= ETH_TXQ_FLAGS_NOXSUMTCP;
                                           ^~~~~~~~~~~~~~~~~~~~~~~
/home/yehu/ceph/ceph/src/msg/async/dpdk/DPDK.cc:208:30: error: ‘struct rte_eth_txconf’ has no member named ‘txq_flags’
     _dev_info.default_txconf.txq_flags |= ETH_TXQ_FLAGS_NOXSUMSCTP;
                              ^~~~~~~~~
/home/yehu/ceph/ceph/src/msg/async/dpdk/DPDK.cc:208:43: error: ‘ETH_TXQ_FLAGS_NOXSUMSCTP’ was not declared in this scope
     _dev_info.default_txconf.txq_flags |= ETH_TXQ_FLAGS_NOXSUMSCTP;
                                           ^~~~~~~~~~~~~~~~~~~~~~~~
/home/yehu/ceph/ceph/src/msg/async/dpdk/DPDK.cc:212:30: error: ‘struct rte_eth_txconf’ has no member named ‘txq_flags’
     _dev_info.default_txconf.txq_flags |= ETH_TXQ_FLAGS_NOVLANOFFL;
                              ^~~~~~~~~
/home/yehu/ceph/ceph/src/msg/async/dpdk/DPDK.cc:212:43: error: ‘ETH_TXQ_FLAGS_NOVLANOFFL’ was not declared in this scope
     _dev_info.default_txconf.txq_flags |= ETH_TXQ_FLAGS_NOVLANOFFL;
                                           ^~~~~~~~~~~~~~~~~~~~~~~~
/home/yehu/ceph/ceph/src/msg/async/dpdk/DPDK.cc:216:30: error: ‘struct rte_eth_txconf’ has no member named ‘txq_flags’
     _dev_info.default_txconf.txq_flags |= ETH_TXQ_FLAGS_NOVLANOFFL;
                              ^~~~~~~~~
/home/yehu/ceph/ceph/src/msg/async/dpdk/DPDK.cc:216:43: error: ‘ETH_TXQ_FLAGS_NOVLANOFFL’ was not declared in this scope
     _dev_info.default_txconf.txq_flags |= ETH_TXQ_FLAGS_NOVLANOFFL;
                                           ^~~~~~~~~~~~~~~~~~~~~~~~
/home/yehu/ceph/ceph/src/msg/async/dpdk/DPDK.cc:220:30: error: ‘struct rte_eth_txconf’ has no member named ‘txq_flags’
     _dev_info.default_txconf.txq_flags |= ETH_TXQ_FLAGS_NOMULTSEGS;
                              ^~~~~~~~~
/home/yehu/ceph/ceph/src/msg/async/dpdk/DPDK.cc:220:43: error: ‘ETH_TXQ_FLAGS_NOMULTSEGS’ was not declared in this scope
     _dev_info.default_txconf.txq_flags |= ETH_TXQ_FLAGS_NOMULTSEGS;
                                           ^~~~~~~~~~~~~~~~~~~~~~~~
/home/yehu/ceph/ceph/src/msg/async/dpdk/DPDK.cc:284:22: error: ‘struct rte_eth_rxmode’ has no member named ‘hw_vlan_strip’
     port_conf.rxmode.hw_vlan_strip = 1;
                      ^~~~~~~~~~~~~
/home/yehu/ceph/ceph/src/msg/async/dpdk/DPDK.cc:288:20: error: ‘struct rte_eth_rxmode’ has no member named ‘hw_strip_crc’
   port_conf.rxmode.hw_strip_crc = 1;
                    ^~~~~~~~~~~~
/home/yehu/ceph/ceph/src/msg/async/dpdk/DPDK.cc:294:22: error: ‘struct rte_eth_rxmode’ has no member named ‘enable_lro’
     port_conf.rxmode.enable_lro = 1;
                      ^~~~~~~~~~
/home/yehu/ceph/ceph/src/msg/async/dpdk/DPDK.cc:313:22: error: ‘struct rte_eth_rxmode’ has no member named ‘hw_ip_checksum’
     port_conf.rxmode.hw_ip_checksum = 1;
                      ^~~~~~~~~~~~~~
......

In file included from /home/yehu/ceph/ceph/build/src/dpdk/include/rte_flow.h:23,
                 from /home/yehu/ceph/ceph/build/src/dpdk/include/rte_eth_ctrl.h:11,
                 from /home/yehu/ceph/ceph/build/src/dpdk/include/rte_ethdev.h:887,
                 from /home/yehu/ceph/ceph/src/msg/async/dpdk/DPDK.h:30,
                 from /home/yehu/ceph/ceph/src/msg/async/dpdk/DPDKStack.cc:46:
/home/yehu/ceph/ceph/build/src/dpdk/include/rte_icmp.h:26:8: error: redefinition of ‘struct icmp_hdr’
 struct icmp_hdr {
        ^~~~~~~~
In file included from /home/yehu/ceph/ceph/src/msg/async/dpdk/DPDKStack.h:26,
                 from /home/yehu/ceph/ceph/src/msg/async/dpdk/DPDKStack.cc:45:
/home/yehu/ceph/ceph/src/msg/async/dpdk/IP.h:126:8: note: previous definition of ‘struct icmp_hdr’
 struct icmp_hdr {
        ^~~~~~~~
/home/yehu/ceph/ceph/src/msg/async/dpdk/DPDKStack.cc: In member function ‘virtual void DPDKWorker::initialize()’:
/home/yehu/ceph/ceph/src/msg/async/dpdk/DPDKStack.cc:109:10: error: ‘ceph::condition_variable’ {aka ‘class ceph::condition_variable_debug’} has no member named ‘Signal’
     cond.Signal();
          ^~~~~~
/home/yehu/ceph/ceph/src/msg/async/dpdk/DPDKStack.cc: At global scope:
/home/yehu/ceph/ceph/src/msg/async/dpdk/DPDKStack.cc:162:13: warning: ‘bool match_available_address(const std::vector<std::tuple<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, const entity_addr_t&, int&)’ defined but not used [-Wunused-function]
 static bool match_available_address(const vector<AvailableIPAddress> &avails,
             ^~~~~~~~~~~~~~~~~~~~~~~
make[2]: *** [src/msg/CMakeFiles/common_async_dpdk.dir/async/dpdk/DPDKStack.cc.o] Error 1

Actions #1

Updated by Hu Ye over 4 years ago

Hu Ye wrote:

I used the master brach of ceph, here are the build error logs:

[...]

There are two versions of DPDK, one is in src/seastar, another is in src/spdk, when we use WITH_DPDK=ON, which version do we use?

Actions #2

Updated by Brad Hubbard over 4 years ago

  • Priority changed from Normal to High

Bumping priority

Actions #3

Updated by Kefu Chai over 4 years ago

Hu Ye wrote:

Hu Ye wrote:

I used the master brach of ceph, here are the build error logs:

[...]

There are two versions of DPDK, one is in src/seastar, another is in src/spdk, when we use WITH_DPDK=ON, which version do we use?

the one in src/spdk/dpdk

Actions #4

Updated by Sage Weil almost 3 years ago

  • Status changed from New to Closed
Actions

Also available in: Atom PDF