Looks like I have a somewhat similar issue while running basicfwd, not sure why. The code is just trying to enable MSI-X interrupts, but perror() says 'Invalid argument'. Any thoughts? fio_enable_msix(), ../lib/eal/linux/eal_interrupts.c:306, ret -1 Invalid argument EAL: Error enabling MSI-X interrupts for fd 19 Port 0 MAC: 08 00 27 0d 34 ff Verghis On Fri, Apr 21, 2023 at 2:12 PM Igor de Paula wrote: > I am enabling lsc interrupts. > I don't explicitly start/stop the queues. > Should I call link up/down before the start/stop? From the doc I saw it > shuts down the queues. > From what I saw it calls the msix disable function in the start and the > stop functions. In the second time it seem to cause the error. > > > On Fri, Apr 21, 2023, 22:06 Stephen Hemminger > wrote: > >> On Fri, 21 Apr 2023 13:39:18 +0100 >> Igor de Paula wrote: >> > From what I can tell, dpdk calles the function vfio_disable_msix in >> the >> > stop and start function. The reason it does not happen in start up is >> that >> > I don't call stop before. >> > Calling stop and then start calls the function twice. Which maybe >> shouldn't >> > happen... Is it a bug? >> > >> > On Thu, Apr 20, 2023 at 12:33 PM Igor de Paula >> wrote: >> > >> > > Hi, >> > > I am having trouble with restarting a HW port allocated to DPDK. >> > > I am running the DPDK version: 21.08.0 and Ubuntu 20.04.3 LTS. >> > > The driver is : net_e100igb >> > > After I start the port with no issues I try to call rte_eth_dev_stop >> to >> > > stop it. >> > > When I am ready I call rte_eth_dev_start to start it again an I get >> the >> > > following message: >> > > EAL: Error disabling MSI-X interrupts for fd 46. >> > > I am not sure what this error is coming from and what it causes. >> > > I found little information online. If someone could explain, I would >> > > really appreciate it. >> > > This is a copy print on setup with no issues: >> > > 2023-04-20 11:09:51.703542: Driver: net_e1000_igb >> > > 2023-04-20 11:09:51.703546: Bus Id: 0000:01:00.0 >> > > 2023-04-20 11:09:51.703551: rx offload cap: 280e (92e0f) >> > > 2023-04-20 11:09:51.703555: tx offload cap: 8002 (803f) >> > > 2023-04-20 11:09:51.703559: NUMA Socket: 0 >> > > 2023-04-20 11:09:51.703563: MAC Address: b4:96:91:63:62:40 >> > > 2023-04-20 11:09:51.703568: Max Rx Queue: 8 >> > > 2023-04-20 11:09:51.703572: Max Tx Queue: 8 >> > > 2023-04-20 11:09:51.703577: Max Rx Descriptors: 4096 >> > > 2023-04-20 11:09:51.703581: Max Tx Descriptors: 4096 >> > > 2023-04-20 11:09:51.703585: Max Rx Packet Length: 16383 >> > > 2023-04-20 11:09:51.703589: Available Link Speeds: 10Mb/s 100Mb/s >> 1Gb/s >> > > 2023-04-20 11:09:51.703608: Fixed Link Speed: Auto >> > > 2023-04-20 11:09:51.703616: Fixed Duplex: Auto >> > > 2023-04-20 11:09:51.703623: MTU Set to: 16383 >> > > 2023-04-20 11:09:51.703632: Actual Rx Descriptors: 4096 >> > > 2023-04-20 11:09:51.703636: Actual Tx Descriptors: 4096 >> > > 2023-04-20 11:09:51.703695: Set up 1 send queues >> > > 2023-04-20 11:09:51.703700: Actual MTU: 16383 >> > > 2023-04-20 11:09:51.703704: Actual Linkspeed: 0 >> > > 2023-04-20 11:09:51.703708: Actual duplex: 0 >> > > 2023-04-20 11:09:51.703713: Successfully set port interrupt event >> > > 2023-04-20 11:09:51.818085: Flow control turned off for Port 0 >> > > 2023-04-20 11:09:51.844179: Port 0 up and running >> > > 2023-04-20 11:09:51.844303: Event type: LSC interrupt >> > > 2023-04-20 11:09:51.844382: Port 0 Link Down >> > > >> > > And after I stop and start: >> > > 2023-04-20 11:11:00.492428: Driver: net_e1000_igb >> > > 2023-04-20 11:11:00.492476: Bus Id: 0000:01:00.0 >> > > 2023-04-20 11:11:00.492526: rx offload cap: 280e (92e0f) >> > > 2023-04-20 11:11:00.492576: tx offload cap: 8002 (803f) >> > > 2023-04-20 11:11:00.492624: NUMA Socket: 0 >> > > 2023-04-20 11:11:00.492672: MAC Address: b4:96:91:63:62:40 >> > > 2023-04-20 11:11:00.492721: Max Rx Queue: 8 >> > > 2023-04-20 11:11:00.492770: Max Tx Queue: 8 >> > > 2023-04-20 11:11:00.492813: Max Rx Descriptors: 4096 >> > > 2023-04-20 11:11:00.492851: Max Tx Descriptors: 4096 >> > > 2023-04-20 11:11:00.492889: Max Rx Packet Length: 16383 >> > > 2023-04-20 11:11:00.492958: Available Link Speeds: 10Mb/s 100Mb/s >> 1Gb/s >> > > 2023-04-20 11:11:00.493207: Fixed Link Speed: Auto >> > > 2023-04-20 11:11:00.493301: Fixed Duplex: Full >> > > 2023-04-20 11:11:00.493822: MTU Set to: 16383 >> > > 2023-04-20 11:11:00.493889: Actual Rx Descriptors: 4096 >> > > 2023-04-20 11:11:00.493936: Actual Tx Descriptors: 4096 >> > > 2023-04-20 11:11:00.494190: Actual MTU: 16383 >> > > 2023-04-20 11:11:00.494229: Actual Linkspeed: 0 >> > > 2023-04-20 11:11:00.494266: Actual duplex: 1 >> > > 2023-04-20 11:11:00.494305: Successfully set port interrupt event >> > > *EAL: Error disabling MSI-X interrupts for fd 46* >> > > 2023-04-20 11:11:00.603181: Flow control turned off for Port 0 >> > > 2023-04-20 11:11:00.629151: Port 0 up and running >> > > 2023-04-20 11:11:00.629222: Event type: LSC interrupt >> > > 2023-04-20 11:11:00.629273: Port 0 Link Down >> > > >> > > >> > > Thanks, >> > > Igor >> >> Are you using Link State (LSC) or receive interrupts? >> Did you start/stop the tx and rx queues. Could be a device bug where >> it assumes all queues were stopped. >> >> Also check kernel dmesg output; VFIO might print an error message there. >> >