https://bugs.dpdk.org/show_bug.cgi?id=2071

            Bug ID: 2071
           Summary: [dpdk-26.11]vswitch_sample_cbdma: No response at all
                    when quitting vhost-user with CTRL+C
           Product: DPDK
           Version: 26.11
          Hardware: All
                OS: All
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: vhost/virtio
          Assignee: [email protected]
          Reporter: [email protected]
  Target Milestone: ---

--------------------------------------------------------------------------------
DPDK version: dpdk 9a45341f18 (HEAD -> main, tag: v26.11-rc1, origin/main,
origin/HEAD) version: 26.11-rc1
Other software versions: QEMU emulator version 11.1.2
OS: Ubuntu26.04.1 LTS/7.0.0-38-generic
Compiler: gcc version 13.3.0
Hardware platform: Intel(R) Xeon(R) Platinum 8468H
--------------------------------------------------------------------------------
Test Setup
Steps to reproduce

1. Use the following command to build DPDK:
rm -rf x86_64-native-linuxapp-gcc
CC=gcc meson setup -Dlibdir=lib -Dexamples=vhost --default-library=static 
x86_64-native-linuxapp-gcc
ninja -C x86_64-native-linuxapp-gcc

2. Bind NIC and CBDMA device:

usertools/dpdk-devbind.py --force --bind=vfio-pci 0000:cc:00.0 0000:cc:00.1
./usertools/dpdk-devbind.py --status-dev dma
./usertools/dpdk-devbind.py --force --bind=vfio-pci 0000:80:01.0 0000:80:01.1
0000:80:01.2 0000:80:01.3

3, Launch vhost-user and virito-user0 and virtio-uer1

vhost-user:  rm -rf vhost-net*
vhost-user:  x86_64-native-linuxapp-gcc/examples/dpdk-vhost  -l 40-41 -n 4  -a
0000:cc:00.0 -a 0000:80:01.0 -a 0000:80:01.1 -a 0000:80:01.2 -a 0000:80:01.3 --
-p 0x1 --mergeable 1 --vm2vm 1 --stats 1 --socket-file ./vhost-net0
--socket-file ./vhost-net1 --dmas
[txd0@0000:80:01.0,rxd0@0000:80:01.1,txd1@0000:80:01.2,rxd1@0000:80:01.3]
--total-num-mbufs 600000 --client

virtio-user0: x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 42-43 -n 4 
--file-prefix=virtio-user0 --no-pci  
--vdev=net_virtio_user0,mac=00:11:22:33:44:10,path=./vhost-net0,queues=1,server=1,mrg_rxbuf=1,in_order=0,packed_vq=1
-- -i --rxq=1 --txq=1 --txd=1024 --rxd=1024 --nb-cores=1

virtio-user1: x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 44-45 -n 4 
--file-prefix=virtio-user1 --no-pci  
--vdev=net_virtio_user0,mac=00:11:22:33:44:11,path=./vhost-net1,queues=1,server=1,mrg_rxbuf=1,in_order=1,vectorized=1
-- -i --rxq=1 --txq=1 --txd=1024 --rxd=1024 --nb-cores=1

4, quit vhost-user with CTRL+C, no response at all

vhost-user: ^C

--------------------------------------------------------------------------------
Expected Result:

quit successfully

--------------------------------------------------------------------------------
Is this issue a regression: (Y/N) Y

Version the regression was introduced: 

commit 5ffa8fafcbd370779391d418beef0235f8f0840b
Author: Stephen Hemminger <[email protected]>
Date:   Mon Sep 7 10:03:24 2026 -0700

    examples/vhost: make signal handler safe

    The SIGINT handler unregistered the vhost drivers and called exit(),
    neither of which is async-signal-safe.

    Set a flag, let switch_worker() return, and unregister the drivers in
    main() after joining the lcores.

    Signed-off-by: Stephen Hemminger <[email protected]>
    Acked-by: Bruce Richardson <[email protected]>

-- 
You are receiving this mail because:
You are the assignee for the bug.

Reply via email to