]> git.ipfire.org Git - thirdparty/ipxe.git/commit
[intelxl] Explicitly request a single queue pair for virtual functions
authorMichael Brown <mcb30@ipxe.org>
Tue, 16 Aug 2022 14:53:41 +0000 (15:53 +0100)
committerMichael Brown <mcb30@ipxe.org>
Tue, 16 Aug 2022 18:31:06 +0000 (19:31 +0100)
commitc5af41a6f5b5f4a420b3e539f9e3a8dc9f8dd03e
tree0b454143bb57b64502f9bdfbedc2ef1944aa4633
parent04879352c4f5fbb4f1aeaf9b644c2b8408847894
[intelxl] Explicitly request a single queue pair for virtual functions

Current versions of the E810 PF driver fail to set the number of
in-use queue pairs in response to the CONFIG_VSI_QUEUES message.  When
the number of in-use queue pairs is less than the number of available
queue pairs, this results in some packets being directed to
nonexistent receive queues and hence silently dropped.

Work around this PF driver bug by explicitly configuring the number of
available queue pairs via the REQUEST_QUEUES message.  This message
triggers a VF reset that, in turn, requires us to reopen the admin
queue and issue an additional GET_RESOURCES message to restore the VF
to a functional state.

Signed-off-by: Michael Brown <mcb30@ipxe.org>
src/drivers/net/intelxlvf.c
src/drivers/net/intelxlvf.h