Red Hat 6.5 compilation failure
Hi all,
Am facing an issue with compilation on redhat 6.5 of DPDK v16.11-rc2, compilation fails with:
cc1: warnings being treated as errors
/root/dpdk/drivers/net/i40e/i40e_ethdev_vf.c: In function ‘i40evf_dev_interrupt_handler’:
/root/dpdk/drivers/net/i40e/i40e_ethdev_vf.c:1391: error: dereferencing pointer ‘v_msg’ does break strict-aliasing rules /root/dpdk/drivers/net/i40e/i40e_ethdev_vf.c:1397: error: dereferencing pointer ‘v_msg’ does break strict-aliasing rules /root/dpdk/drivers/net/i40e/i40e_ethdev_vf.c:1398: error: dereferencing pointer ‘v_msg’ does break strict-aliasing rules /root/dpdk/drivers/net/i40e/i40e_ethdev_vf.c:1376: note: initialized from here
cc1: warnings being treated as errors
/root/dpdk/drivers/net/bnxt/bnxt_hwrm.c: In function ‘bnxt_hwrm_func_driver_unregister’:
/root/dpdk/drivers/net/bnxt/bnxt_hwrm.c:105: error: dereferencing pointer ‘req’ does break strict-aliasing rules /root/dpdk/drivers/net/bnxt/bnxt_hwrm.c:66: note: initialized from here
cc1: warnings being treated as errors /root/dpdk/drivers/net/qede/base/ecore_mcp.c: In function ‘ecore_mcp_nvm_rd_cmd’:
/root/dpdk/build/include/rte_memcpy.h:740: error: array subscript is above array bounds /root/dpdk/drivers/net/qede/base/ecore_mcp.c: In function ‘ecore_mcp_nvm_wr_cmd’:
/root/dpdk/build/include/rte_memcpy.h:740: error: array subscript is above array bounds At top level:
cc1: error: unrecognized command line option "-Wno-maybe-uninitialized"
cc1: error: unrecognized command line option "-Wno-maybe-uninitialized"
cc1: error: unrecognized command line option "-Wno-maybe-uninitialized"
cc1: error: unrecognized command line option "-Wno-maybe-uninitialized"
cc1: error: unrecognized command line option "-Wno-maybe-uninitialized"
cc1: error: unrecognized command line option "-Wno-maybe-uninitialized"
cc1: error: unrecognized command line option "-Wno-maybe-uninitialized"
cc1: error: unrecognized command line option "-Wno-maybe-uninitialized"
cc1: error: unrecognized command line option "-Wno-maybe-uninitialized"
cc1: error: unrecognized command line option "-Wno-maybe-uninitialized"
cc1: error: unrecognized command line option "-Wno-maybe-uninitialized"
cc1: error: unrecognized command line option "-Wno-maybe-uninitialized"
cc1: error: unrecognized command line option "-Wno-maybe-uninitialized"
cc1: error: unrecognized command line option "-Wno-maybe-uninitialized"
In doc/guides/rel_notes/supported_os.rst we still support "Red Hat Enterprise Linux 6.5".
Do we still want to support it, or should we update the documentation to remove it?
Regards,
Signature · 2 lines
Nélio Laranjeiro 6WIND
2016-10-31 11:43, Nélio Laranjeiro:
Quoted 3 lines
Hi all,
Am facing an issue with compilation on redhat 6.5 of DPDK v16.11-rc2,
Thanks Nelio for raising the issue.
Quoted 1 line
compilation fails with:
[...]
Quoted 5 lines
In
doc/guides/rel_notes/supported_os.rstwe still support "Red Hat Enterprise Linux 6.5".Do we still want to support it, or should we update the documentation to remove it?
I vote for dropping RHEL6 support in DPDK 16.11.
Any other comment in the community?
Please give your voice, whether you agree or disagree.
Quoted 40 lines · Nélio Laranjeiro
Hi all,
Am facing an issue with compilation on redhat 6.5 of DPDK v16.11-rc2, compilation fails with:
cc1: warnings being treated as errors
/root/dpdk/drivers/net/i40e/i40e_ethdev_vf.c: In function ‘i40evf_dev_interrupt_handler’:
/root/dpdk/drivers/net/i40e/i40e_ethdev_vf.c:1391: error: dereferencing pointer ‘v_msg’ does break strict-aliasing rules/root/dpdk/drivers/net/i40e/i40e_ethdev_vf.c:1397: error: dereferencing pointer ‘v_msg’ does break strict-aliasing rules/root/dpdk/drivers/net/i40e/i40e_ethdev_vf.c:1398: error: dereferencing pointer ‘v_msg’ does break strict-aliasing rules/root/dpdk/drivers/net/i40e/i40e_ethdev_vf.c:1376: note: initialized from herecc1: warnings being treated as errors
/root/dpdk/drivers/net/bnxt/bnxt_hwrm.c: In function ‘bnxt_hwrm_func_driver_unregister’:
/root/dpdk/drivers/net/bnxt/bnxt_hwrm.c:105: error: dereferencing pointer ‘req’ does break strict-aliasing rules/root/dpdk/drivers/net/bnxt/bnxt_hwrm.c:66: note: initialized from herecc1: warnings being treated as errors
/root/dpdk/drivers/net/qede/base/ecore_mcp.c: In function ‘ecore_mcp_nvm_rd_cmd’:
/root/dpdk/build/include/rte_memcpy.h:740: error: array subscript is above array bounds/root/dpdk/drivers/net/qede/base/ecore_mcp.c: In function ‘ecore_mcp_nvm_wr_cmd’:
/root/dpdk/build/include/rte_memcpy.h:740: error: array subscript is above array bounds At top level:
cc1: error: unrecognized command line option "-Wno-maybe-uninitialized"
cc1: error: unrecognized command line option "-Wno-maybe-uninitialized"
cc1: error: unrecognized command line option "-Wno-maybe-uninitialized"
cc1: error: unrecognized command line option "-Wno-maybe-uninitialized"
cc1: error: unrecognized command line option "-Wno-maybe-uninitialized"
cc1: error: unrecognized command line option "-Wno-maybe-uninitialized"
cc1: error: unrecognized command line option "-Wno-maybe-uninitialized"
cc1: error: unrecognized command line option "-Wno-maybe-uninitialized"
cc1: error: unrecognized command line option "-Wno-maybe-uninitialized"
cc1: error: unrecognized command line option "-Wno-maybe-uninitialized"
cc1: error: unrecognized command line option "-Wno-maybe-uninitialized"
cc1: error: unrecognized command line option "-Wno-maybe-uninitialized"
cc1: error: unrecognized command line option "-Wno-maybe-uninitialized"
cc1: error: unrecognized command line option "-Wno-maybe-uninitialized"
Quoted 3 lines
In
doc/guides/rel_notes/supported_os.rstwe still support "Red Hat Enterprise Linux 6.5".
Most of these errors stems from the fact that in i40e there is alot of casting from structs which lay out data in typed members to structs which have flat memory buffers, which can cause problems if the alignment of the former isn't what you expect. You can disable strict aliasing if you want, but its a much better idea to fix it properly.
The subscript above array options is pretty straightforward. rte_memcpy has a case statement that blocks memory copies to be more efficient. I would presume that there is a call site for a ecore read operation where the buffer array is smaller than the number of bytes copied, and the compiler noticed.
Quoted 3 lines
Do we still want to support it, or should we update the documentation to remove it?
I think support probably doesn't matter, but regardless of that decision, you should likely look a bit more closely at these errors.
Neil
Quoted 6 lines
Regards,
Signature · 2 lines
Nélio Laranjeiro 6WIND