[P4] L3FWD p4-16-on?

Leskó Dániel ldani at elte.hu
Mon Jun 18 22:52:47 CEST 2018


Robi!

  Az examples/p4_16_v1model/l3-routing-full.p4 nekem egy csomó undefined 
reference hibát dob (az l2fwd-vel nincs gond). Mi lehet a gond? (nem 
módosítottam semmit, csak mérni akartam)

  p4 at dpdk-switch:~$ ./run_t4p4s.sh 4 100
Defaulting to launching ./examples/p4_16_v1model/l3-routing-full.p4
-------------------- Compiling P4-16 -> C
-------------------- Compiling C -> switch executable
   CC util.o
   CC main.o
   CC dpdk_lib.o
   CC dpdk_tables.o
   CC dpdk_primitives.o
   CC dataplane.o
   CC tables.o
   CC parser.o
   CC actions.o
   CC controlplane.o
/home/p4/t4p4s-16/build/l3-routing-full//../src_hardware_indep/actions.c: 
In function 'action_code_set_nhop_0':
/home/p4/t4p4s-16/build/l3-routing-full//../src_hardware_indep/actions.c:27:5: 
warning: dereferencing type-punned pointer will break strict-aliasing 
rules [-Wstrict-aliasing]
      printf("Value32:%d v16:%d __ %d\n", value32, 
(*(uint16_t*)(&value32)), GET_INT32_AUTO_PACKET(pd, 
header_instance_standard_metadata, 
field_standard_metadata_t_egress_port) ); // actions at 56
      ^
/home/p4/t4p4s-16/build/l3-routing-full//../src_hardware_indep/actions.c:31:5: 
warning: dereferencing type-punned pointer will break strict-aliasing 
rules [-Wstrict-aliasing]
      printf("Value32:%d v16:%d __ %d\n", value32, 
(*(uint16_t*)(&value32)), GET_INT32_AUTO_PACKET(pd, 
header_instance_standard_metadata, 
field_standard_metadata_t_egress_port) ); // actions at 56
      ^
/home/p4/t4p4s-16/build/l3-routing-full//../src_hardware_indep/actions.c: 
In function 'action_code__drop_0':
/home/p4/t4p4s-16/build/l3-routing-full//../src_hardware_indep/actions.c:39:5: 
warning: dereferencing type-punned pointer will break strict-aliasing 
rules [-Wstrict-aliasing]
      printf("Value32:%d v16:%d __ %d\n", value32, 
(*(uint16_t*)(&value32)), GET_INT32_AUTO_PACKET(pd, 
header_instance_standard_metadata, 
field_standard_metadata_t_egress_port) ); // actions at 56
      ^
/home/p4/t4p4s-16/build/l3-routing-full//../src_hardware_indep/actions.c: 
In function 'action_code__drop_2':
/home/p4/t4p4s-16/build/l3-routing-full//../src_hardware_indep/actions.c:47:5: 
warning: dereferencing type-punned pointer will break strict-aliasing 
rules [-Wstrict-aliasing]
      printf("Value32:%d v16:%d __ %d\n", value32, 
(*(uint16_t*)(&value32)), GET_INT32_AUTO_PACKET(pd, 
header_instance_standard_metadata, 
field_standard_metadata_t_egress_port) ); // actions at 56
      ^
/home/p4/t4p4s-16/build/l3-routing-full//../src_hardware_indep/actions.c: 
In function 'action_code_forward_0':
/home/p4/t4p4s-16/build/l3-routing-full//../src_hardware_indep/actions.c:55:5: 
warning: dereferencing type-punned pointer will break strict-aliasing 
rules [-Wstrict-aliasing]
      printf("Value32:%d v16:%d __ %d\n", value32, 
(*(uint16_t*)(&value32)), GET_INT32_AUTO_PACKET(pd, 
header_instance_standard_metadata, 
field_standard_metadata_t_egress_port) ); // actions at 56
      ^
/home/p4/t4p4s-16/build/l3-routing-full//../src_hardware_indep/actions.c:58:5: 
warning: dereferencing type-punned pointer will break strict-aliasing 
rules [-Wstrict-aliasing]
      printf("Value32:%d v16:%d __ %d\n", value32, 
(*(uint16_t*)(&value32)), GET_INT32_AUTO_PACKET(pd, 
header_instance_standard_metadata, 
field_standard_metadata_t_egress_port) ); // actions at 56
      ^
/home/p4/t4p4s-16/build/l3-routing-full//../src_hardware_indep/actions.c:60:5: 
warning: dereferencing type-punned pointer will break strict-aliasing 
rules [-Wstrict-aliasing]
      printf("Value32:%d v16:%d __ %d\n", value32, 
(*(uint16_t*)(&value32)), GET_INT32_AUTO_PACKET(pd, 
header_instance_standard_metadata, 
field_standard_metadata_t_egress_port) ); // actions at 56
      ^
   LD l3-routing-full
main.o: In function `main':
/home/p4/t4p4s-16/build/l3-routing-full//../../src/hardware_dep/dpdk/main.c:24: 
undefined reference to `launch_dpdk'
dpdk_lib.o: In function `init_lcore_confs':
/home/p4/t4p4s-16/build/l3-routing-full//../../src/hardware_dep/dpdk/data_plane/dpdk_lib.c:602: 
undefined reference to `lcore_conf'
dpdk_lib.o: In function `exact_add_promote':
/home/p4/t4p4s-16/build/l3-routing-full//../../src/hardware_dep/dpdk/data_plane/dpdk_lib.c:659: 
undefined reference to `lcore_conf'
dpdk_lib.o: In function `lpm_add_promote':
/home/p4/t4p4s-16/build/l3-routing-full//../../src/hardware_dep/dpdk/data_plane/dpdk_lib.c:664: 
undefined reference to `lcore_conf'
dpdk_lib.o: In function `ternary_add_promote':
/home/p4/t4p4s-16/build/l3-routing-full//../../src/hardware_dep/dpdk/data_plane/dpdk_lib.c:668: 
undefined reference to `lcore_conf'
dpdk_lib.o: In function `table_setdefault_promote':
/home/p4/t4p4s-16/build/l3-routing-full//../../src/hardware_dep/dpdk/data_plane/dpdk_lib.c:672: 
undefined reference to `lcore_conf'
dpdk_lib.o:/home/p4/t4p4s-16/build/l3-routing-full//../../src/hardware_dep/dpdk/data_plane/dpdk_lib.c:697: 
more undefined references to `lcore_conf' follow
dpdk_lib.o: In function `parse_args':
/home/p4/t4p4s-16/build/l3-routing-full//../../src/hardware_dep/dpdk/data_plane/dpdk_lib.c:328: 
undefined reference to `enabled_port_mask'
dpdk_lib.o: In function `init_lcore_rx_queues':
/home/p4/t4p4s-16/build/l3-routing-full//../../src/hardware_dep/dpdk/data_plane/dpdk_lib.c:181: 
undefined reference to `lcore_conf'
/home/p4/t4p4s-16/build/l3-routing-full//../../src/hardware_dep/dpdk/data_plane/dpdk_lib.c:181: 
undefined reference to `lcore_conf'
/home/p4/t4p4s-16/build/l3-routing-full//../../src/hardware_dep/dpdk/data_plane/dpdk_lib.c:189: 
undefined reference to `lcore_conf'
/home/p4/t4p4s-16/build/l3-routing-full//../../src/hardware_dep/dpdk/data_plane/dpdk_lib.c:193: 
undefined reference to `lcore_conf'
/home/p4/t4p4s-16/build/l3-routing-full//../../src/hardware_dep/dpdk/data_plane/dpdk_lib.c:191: 
undefined reference to `lcore_conf'
dpdk_lib.o: In function `check_port_config':
/home/p4/t4p4s-16/build/l3-routing-full//../../src/hardware_dep/dpdk/data_plane/dpdk_lib.c:148: 
undefined reference to `enabled_port_mask'
dpdk_lib.o: In function `initialize':
/home/p4/t4p4s-16/build/l3-routing-full//../../src/hardware_dep/dpdk/data_plane/dpdk_lib.c:830: 
undefined reference to `lcore_conf'
/home/p4/t4p4s-16/build/l3-routing-full//../../src/hardware_dep/dpdk/data_plane/dpdk_lib.c:773: 
undefined reference to `enabled_port_mask'
dpdk_lib.o: In function `init_mem':
/home/p4/t4p4s-16/build/l3-routing-full//../../src/hardware_dep/dpdk/data_plane/dpdk_lib.c:561: 
undefined reference to `pktmbuf_pool'
/home/p4/t4p4s-16/build/l3-routing-full//../../src/hardware_dep/dpdk/data_plane/dpdk_lib.c:563: 
undefined reference to `pktmbuf_pool'
dpdk_lib.o: In function `memset':
/usr/include/x86_64-linux-gnu/bits/string3.h:90: undefined reference to 
`lcore_conf'
dpdk_lib.o: In function `initialize':
/home/p4/t4p4s-16/build/l3-routing-full//../../src/hardware_dep/dpdk/data_plane/dpdk_lib.c:853: 
undefined reference to `lcore_conf'
/home/p4/t4p4s-16/build/l3-routing-full//../../src/hardware_dep/dpdk/data_plane/dpdk_lib.c:854: 
undefined reference to `lcore_conf'
/home/p4/t4p4s-16/build/l3-routing-full//../../src/hardware_dep/dpdk/data_plane/dpdk_lib.c:861: 
undefined reference to `pktmbuf_pool'
/home/p4/t4p4s-16/build/l3-routing-full//../../src/hardware_dep/dpdk/data_plane/dpdk_lib.c:875: 
undefined reference to `enabled_port_mask'
/home/p4/t4p4s-16/build/l3-routing-full//../../src/hardware_dep/dpdk/data_plane/dpdk_lib.c:886: 
undefined reference to `enabled_port_mask'
/home/p4/t4p4s-16/build/l3-routing-full//../../src/hardware_dep/dpdk/data_plane/dpdk_lib.c:894: 
undefined reference to `lcore_conf'
dpdk_lib.o: In function `parse_args':
/home/p4/t4p4s-16/build/l3-routing-full//../../src/hardware_dep/dpdk/data_plane/dpdk_lib.c:328: 
undefined reference to `enabled_port_mask'
dataplane.o: In function `control_verifyChecksum':
/home/p4/t4p4s-16/build/l3-routing-full//../src_hardware_indep/dataplane.c:290: 
undefined reference to `verify_checksum_offload'
dataplane.o: In function `control_computeChecksum':
/home/p4/t4p4s-16/build/l3-routing-full//../src_hardware_indep/dataplane.c:329: 
undefined reference to `update_checksum_offload'
dataplane.o: In function `control_verifyChecksum':
/home/p4/t4p4s-16/build/l3-routing-full//../src_hardware_indep/dataplane.c:290: 
undefined reference to `verify_checksum_offload'
dataplane.o: In function `control_computeChecksum':
/home/p4/t4p4s-16/build/l3-routing-full//../src_hardware_indep/dataplane.c:329: 
undefined reference to `update_checksum_offload'
dataplane.o: In function `control_verifyChecksum':
/home/p4/t4p4s-16/build/l3-routing-full//../src_hardware_indep/dataplane.c:290: 
undefined reference to `verify_checksum_offload'
dataplane.o: In function `control_computeChecksum':
/home/p4/t4p4s-16/build/l3-routing-full//../src_hardware_indep/dataplane.c:329: 
undefined reference to `update_checksum_offload'
actions.o: In function `action_code__drop_0':
/usr/include/x86_64-linux-gnu/bits/stdio2.h:104: undefined reference to 
`mark_to_drop'
actions.o: In function `action_code__drop_2':
/home/p4/t4p4s-16/build/l3-routing-full//../src_hardware_indep/actions.c:46: 
undefined reference to `mark_to_drop'
collect2: error: ld returned 1 exit status
/home/p4/dpdk-17.11//mk/rte.app.mk:306: recipe for target 
'l3-routing-full' failed
make[1]: *** [l3-routing-full] Error 1
/home/p4/dpdk-17.11//mk/rte.extapp.mk:42: recipe for target 'all' failed
make: *** [all] Error 2
Error: C compilation failed (error code: 2)



More information about the P4 mailing list