Bug 1194

Summary: l3fwd-cat: calling unsafe functions from signal handler
Product: DPDK Reporter: Stephen Hemminger (stephen)
Component: examplesAssignee: dev
Status: UNCONFIRMED ---    
Severity: normal    
Priority: Normal    
Version: unspecified   
Target Milestone: ---   
Hardware: All   
OS: All   

Description Stephen Hemminger 2023-03-20 18:08:20 CET
The handling of SIGINT and SIGTERM in the l2fwd-cat example is unsafe and non-portable.  The signal handler could be called by any thread at any time.

The current method (copy/paste from testpmd?) is to call cat_exit() in the signal handler. This may race with other threads and cause problems.

The better solution is to set a flag in signal handler and then do the shutdown aft er the main loop exits.