OpenDataPlane / odp

The ODP project is an open-source, cross-platform set of application programming interfaces (APIs) for the networking data plane

Home Page:https://opendataplane.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

odp_ipsec_api example application misbehaves with run script odp_ipsec_api_run_esp_in.sh

asasidharan opened this issue · comments

I compiled ODP linux-generic implementation and was trying to run odp_ipsec_api with the standalone mode ESP inbound test.
I had directly used the odp_ipsec_api_run_esp_tun_in.sh script for this. What I observe is that the application doesn't complete its execution, i.e., it doesn't successfully verify the test packets after IPsec processing.

I had tried other standalone mode tests such as:
odp_ipsec_api_run_esp_out.sh
odp_ipsec_api_run_ah_in.sh

These tests does complete their execution successfully.

I would like to know if this is already a known issue or if I could be missing something that was needed to run this test.

Application log when I run ./odp_ipsec_api_run_esp_in.sh

$ ./odp_ipsec_api_run_esp_in.sh                                                  
HW time counter freq: 2596992109 hz                                              
                                                                                 
odp_system_info.c:105:default_huge_page_size():defaut hp size is 2048 kB         
odp_system_info.c:105:default_huge_page_size():defaut hp size is 2048 kB         
odp_ishm.c:1671:_odp_ishm_init_global():Shm single VA size: 262144kB             
odp_ishm.c:1683:_odp_ishm_init_global():Shm huge page usage limit: 64kB          
odp_ishm.c:1703:_odp_ishm_init_global():ishm: using dir /dev/shm                 
odp_ishm.c:1718:_odp_ishm_init_global():Huge pages mount point is: /dev/hugepages
odp_ishm.c:1626:_odp_ishm_cleanup_files():opendir failed for /dev/hugepages: No such file or directory
odp_ishm.c:1273:reserve_single_va():No huge pages, fall back to normal pages. Check: /proc/sys/vm/nr_hugepages.
odp_ishmphy.c:62:_odp_ishmphy_reserve_single_va():VA Reserved: 0x7f0350992000, len=268435456
odp_ishm.c:1160:_odp_ishm_reserve():No huge pages, fall back to normal pages. Check: /proc/sys/vm/nr_hugepages.
Pool config:                                                                     
  pool.local_cache_size: 256                                                     
  pool.burst_size: 32                                                            
  pool.pkt.max_num: 262143                                                       
  pool.pkt.max_len: 65536                                                        
  pool.pkt.base_align: 64                                                        
  pool.buf.min_align: 64                                                         
                                                                                 
odp_pool.c:300:_odp_pool_init_global():                                          
Pool init global                                                                 
odp_pool.c:301:_odp_pool_init_global():  odp_buffer_hdr_t size 64                
odp_pool.c:302:_odp_pool_init_global():  odp_packet_hdr_t size 256               
odp_pool.c:303:_odp_pool_init_global():  odp_timeout_hdr_t size 128              
odp_pool.c:304:_odp_pool_init_global():  odp_event_vector_hdr_t size 128         
odp_pool.c:306:_odp_pool_init_global():                                          
odp_queue_basic.c:127:queue_init_global():Starts...                              
Queue config:                                                                    
  queue_basic.max_queue_size: 8192                                               
  queue_basic.default_queue_size: 4096                                           
                                                                                 
odp_queue_lf.c:314:_odp_queue_lf_init_global():                                  
Lock-free queue init                                                             
odp_queue_lf.c:315:_odp_queue_lf_init_global():  u128 lock-free: 0               
                                                                                 
odp_queue_basic.c:181:queue_init_global():... done.                              
odp_queue_basic.c:182:queue_init_global():  queue_entry_t size 384               
odp_queue_basic.c:183:queue_init_global():  max num queues     2048              
odp_queue_basic.c:184:queue_init_global():  max queue size     8192              
odp_queue_basic.c:185:queue_init_global():  max num lockfree   0                 
odp_queue_basic.c:186:queue_init_global():  max lockfree size  0                 
                                                                                 
Using scheduler 'basic'                                                          
odp_schedule_basic.c:403:schedule_init_global():Schedule init ... Scheduler config:
  sched_basic.prio_spread: 4                                                     
  sched_basic.prio_spread_weight: 63                                             
  sched_basic.burst_size_default[] =  32  32  32  32  32  16   8   4             
  sched_basic.burst_size_max[] =     255 255 255 255 255  16  16   8
  sched_basic.group_enable.all: 1                                                
  sched_basic.group_enable.worker: 1                                             
  sched_basic.group_enable.control: 1                                            
                                                                                 
odp_schedule_basic.c:458:schedule_init_global():done                             
Packet IO config:                                                                
  pktio.pktin_frame_offset: 0                                                    
                                                                                 
PKTIO: initialized loop interface.                                               
PKTIO: initialized pcap interface.                                               
PKTIO: initialized null interface.                                               
PKTIO: initialized socket mmap, use export ODP_PKTIO_DISABLE_SOCKET_MMAP=1 to disable.
PKTIO: initialized socket mmsg,use export ODP_PKTIO_DISABLE_SOCKET_MMSG=1 to disable.
odp_timer.c:1553:_odp_timer_init_global():Using lock-less timer implementation   
                                                                                 
Parsing command line options                                                     
                                                                                 
ODP system info                                                                  
---------------                                                                  
ODP API version:  1.25.2                                                         
ODP impl name:    odp-linux                                                      
ODP impl details: odp-linux 1.25.2-0 (v1.25.2) 1.25.2.0                          
CPU model:        Intel(R) Xeon(R) CPU E5-2690 v4                                
CPU freq (hz):    3500000000                                                     
Cache line size:  64                                                             
CPU count:        27                                                             
CPU mask:         0xFFFFFFE                                                      
                                                                                 
                                                                                 
CPU features supported:                                                          
SSE3 PCLMULQDQ DTES64 MONITOR DS_CPL VMX SMX EIST TM2 SSSE3 FMA CMPXCHG16B XTPR PDCM PCID DCA SSE4_1 SSE4_2 X2APIC MOVBE POPCNT TSC_DEADLINE AES XSAVE OSXSAVE AVX F16C RDRAND FPU VME DE PSE TSC MSR PAE MCE CX8 APIC SEP MTRR PGE MCA CMOV PAT PSE36 CLFSH DS ACPI MMX FXSR SSE SSE2 SS HTT TM PBE DIGTEMP TRBOBST ARAT PLN ECMD PTM MPERF_APERF_MSR ENERGY_EFF FSGSBASE HLE AVX2 BMI2 ERMS INVPCID RTM LAHF_SAHF SYSCALL XD 1GB_PG RDTSCP EM64T INVTSC
                                                                                 
CPU features NOT supported:                                                      
CNXT_ID PSN ACNT2 BMI1 SMEP AVX512F LZCNT                                        
                                                                                 
Running ODP appl: "odp_ipsec_api"                                                
-----------------                                                                
IF-count:        2                                                               
Using IFs:       loop1 loop2                                                     
                                                                                 
Routing table                                                                    
-------------                                                                    
 192.168.111.002/32 loop1 08.00.27.76.B5.E0                                      
                                                                                 
Security policy table                                                            
---------------------
 192.168.222.000/24 192.168.111.000/24 in esp:none                               
                                                                                 
Security association table                                                       
--------------------------                                                       
 esp 192.168.222.002 192.168.111.002 301 2 C966199F24D095F3990A320D749056401E82B26570320292
                                                                                 
Tunnel table                                                                     
--------------------------                                                       
                                                                                 
                                                                                 
num worker threads: 2                                                            
first CPU:          26                                                           
cpu mask:           0xC000000                                                    
Using SYNC mode for IPsec API                                                    
                                                                                 
odp_packet_io.c:411:odp_pktio_open():interface: loop1, driver: loop              
odp_packet_io.c:639:odp_pktio_start():interface: loop1, input queues: 1, output queues: 1
Created pktio:01, queue mode (ATOMIC queues)                                     
          default pktio01-INPUT queue:139652506063232                            
          source mac address 02.E9.34.80.73.02                                   
odp_packet_io.c:411:odp_pktio_open():interface: loop2, driver: loop              
odp_packet_io.c:639:odp_pktio_start():interface: loop2, input queues: 1, output queues: 1
Created pktio:02, queue mode (ATOMIC queues)                                     
          default pktio02-INPUT queue:139652505670016                            
          source mac address 02.E9.34.80.73.03                                   
Pktio thread [01] starts                                                         
Stream 10 0                                                                      
Pktio thread [02] starts                                                         
  [01] pkt_cnt:1                                                                 
Stream 10 0                                                                      
Stream 10 0                                                                      
Stream 10 0                                                                      
Stream 10 0                                                                      
Stream 10 0                                                                      
Stream 10 0                                                                      
Stream 10 0                                                                      
Stream 10 0                                                                      
^Z                                                                               
[1]+  Stopped                 ./odp_ipsec_api_run_esp_in.sh