Skip to content

Executing any of tools (ifconfig, netstat, ipfw) breaks running primary process #860

@blaa

Description

@blaa

Hello,
I'm chasing a issue as in the title.

Reproduction steps:

  1. Build f-stack 1.24 on Debian Bookworm VM using VirtIO network drivers and DPDK from packages (22.11.7)
  2. Build nginx app, run the app.
  3. Curl can correctly connect to the nginx.
  4. Execute ff_ifconfig --help (so it doesn't really do anything at all. Only ff_ipc_init and rte_eal_init)
  5. nginx stops accepting connections.

ifconfig output:

/data/f-stack # ff_ifconfig --help
Device 0000:00:12.0 is not driven by the primary process
EAL: Requested device 0000:00:12.0 cannot be used
ff_ifconfig: illegal option -- -
usage: ifconfig -p <f-stack proc_id> [-f type:format] [-g groupname] [-C] [-L] interface address_family
                [address [dest_address]] [parameters]
       ifconfig -p <f-stack proc_id> interface create
       ifconfig -p <f-stack proc_id> -a [-g groupname] [-C] [-L] [-d] [-m] [-u] [-v] [address_family]
       ifconfig -p <f-stack proc_id> -l [-d] [-u] [address_family]
       ifconfig -p <f-stack proc_id> [-g groupname] [-C] [-L] [-d] [-m] [-u] [-v]

Devbind:

Network devices using DPDK-compatible driver
============================================
0000:00:13.0 'Virtio network device 1000' drv=uio_pci_generic unused=virtio_pci
0000:00:14.0 'Virtio network device 1000' drv=uio_pci_generic unused=virtio_pci

Network devices using kernel driver
===================================
0000:00:12.0 'Virtio network device 1000' if=ens18 drv=virtio-pci unused=virtio_pci,uio_pci_generic *Active*

The same happens on our own code that we were trying to use TRANSPARENT IP sockets - using ipfw.
Both codes use kqueue and loop keeps executing, just there are no incoming events on new connections.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions