net/vmxnet3: Don't enable rx queue interrupts on FreeBSD

Message ID 20240320130255.1526-1-thj@freebsd.org (mailing list archive)
State Superseded, archived
Delegated to: Ferruh Yigit
Headers
Series net/vmxnet3: Don't enable rx queue interrupts on FreeBSD |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/loongarch-compilation success Compilation OK
ci/loongarch-unit-testing success Unit Testing PASS
ci/Intel-compilation fail Compilation issues
ci/intel-Testing success Testing PASS
ci/intel-Functional success Functional PASS
ci/iol-mellanox-Performance success Performance Testing PASS
ci/iol-intel-Performance success Performance Testing PASS
ci/iol-abi-testing success Testing PASS
ci/iol-intel-Functional success Functional Testing PASS
ci/iol-compile-amd64-testing fail Testing issues
ci/iol-unit-arm64-testing success Testing PASS
ci/iol-compile-arm64-testing success Testing PASS
ci/iol-unit-amd64-testing success Testing PASS
ci/iol-sample-apps-testing success Testing PASS
ci/iol-broadcom-Performance success Performance Testing PASS
ci/iol-broadcom-Functional success Functional Testing PASS

Commit Message

Tom Jones March 20, 2024, 1:02 p.m. UTC
  Commit 29a1c9107bb disabled interrupts on FreeBSD for the vmxnet3 driver
as they are not supported. Rx queue interrupts were missed by this
change, don't attempt to enable them on FreeBSD.

Without this change applications enabling interrupts encounter an
immediate abort on FreeBSD.

Signed-off-by: Tom Jones <thj@freebsd.org>
---
 drivers/net/vmxnet3/vmxnet3_ethdev.c | 2 ++
 1 file changed, 2 insertions(+)
  

Patch

diff --git a/drivers/net/vmxnet3/vmxnet3_ethdev.c b/drivers/net/vmxnet3/vmxnet3_ethdev.c
index 2707b25148..8b12967fa2 100644
--- a/drivers/net/vmxnet3/vmxnet3_ethdev.c
+++ b/drivers/net/vmxnet3/vmxnet3_ethdev.c
@@ -1938,9 +1938,11 @@  vmxnet3_dev_rx_queue_intr_enable(struct rte_eth_dev *dev, uint16_t queue_id)
 {
 	struct vmxnet3_hw *hw = dev->data->dev_private;
 
+#ifndef RTE_EXEC_ENV_FREEBSD
 	vmxnet3_enable_intr(hw,
 			    rte_intr_vec_list_index_get(dev->intr_handle,
 							       queue_id));
+#endif
 
 	return 0;
 }