Linux Documentation
 help / color / mirror / Atom feed
* [PATCH net-next v2 0/3] ionic: make the device command timeout configurable
@ 2026-11-05 22:43 Nikhil P. Rao
  2026-11-05 22:43 ` [PATCH net-next v2 1/3] ionic: make the command timeout per device Nikhil P. Rao
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Nikhil P. Rao @ 2026-11-05 22:43 UTC (permalink / raw)
  To: Brett Creeley, Andrew Lunn, David S. Miller, Eric Dumazet,
	Jakub Kicinski, Paolo Abeni, Abhijit Gangurde, Allen Hubbe,
	Jason Gunthorpe, Leon Romanovsky, Jiri Pirko, Simon Horman,
	Jonathan Corbet, Shuah Khan, Randy Dunlap
  Cc: netdev, linux-kernel, linux-rdma, linux-doc, Eric Joyner,
	Arun Kumar Prakash, Nikhil P. Rao

ionic waits a fixed 5 seconds for device and admin queue commands, and
the RDMA driver gives its admin queue 2 seconds. Some commands can take
the firmware longer than that, for example while a PFC configuration
change flaps the links. The firmware is alive but slow, yet the
timed-out command and everything queued behind it fail, and an RDMA
admin queue timeout resets the RDMA LIF so that later verbs fail with
-ENODEV.

Patch 1 makes the timeout a per-device value without changing it.
Patch 2 has the RDMA admin queue use the ionic command timeout instead
of its own 2 seconds.
Patch 3 adds a permanent devlink parameter, cmd_timeout, stored in
device NVM, that lengthens the timeout on firmware that supports it.

Tested on an AMD Pensando adapter under KASAN and lockdep, including
repeated PCI resets with concurrent parameter reads.

This series was developed with the help of an LLM-based coding
assistant (Claude).

---
Changes in v2:
- patch 3:
  - comment in ionic_dl_cmd_timeout_get() on why it has no FW_RESET check
  - changelog "after probe or reset" -> "after probe or PCI reset"
- Link to v1: https://patch.msgid.link/20261102-b4-ionic-cmd-timeout-v1-0-2f75c2d0a0c7@amd.com

---
Arun Kumar Prakash (3):
      ionic: make the command timeout per device
      RDMA/ionic: Use the ionic command timeout for the admin queue
      ionic: add devlink param for command timeout

 Documentation/networking/devlink/ionic.rst         | 29 +++++++
 drivers/infiniband/hw/ionic/ionic_admin.c          |  9 ++-
 drivers/net/ethernet/pensando/ionic/ionic.h        | 15 +++-
 drivers/net/ethernet/pensando/ionic/ionic_api.h    |  8 ++
 drivers/net/ethernet/pensando/ionic/ionic_aux.c    |  8 +-
 .../net/ethernet/pensando/ionic/ionic_bus_pci.c    |  4 +
 drivers/net/ethernet/pensando/ionic/ionic_dev.c    | 90 ++++++++++++++++++++--
 drivers/net/ethernet/pensando/ionic/ionic_dev.h    |  3 +
 .../net/ethernet/pensando/ionic/ionic_devlink.c    | 90 ++++++++++++++++++++++
 .../net/ethernet/pensando/ionic/ionic_devlink.h    |  2 +
 .../net/ethernet/pensando/ionic/ionic_ethtool.c    | 12 +--
 drivers/net/ethernet/pensando/ionic/ionic_fw.c     |  8 +-
 drivers/net/ethernet/pensando/ionic/ionic_if.h     |  8 ++
 drivers/net/ethernet/pensando/ionic/ionic_lif.c    | 13 ++--
 drivers/net/ethernet/pensando/ionic/ionic_main.c   | 17 ++--
 15 files changed, 282 insertions(+), 34 deletions(-)
---
base-commit: 4dd16e31135ea8437a720222df34e8745f385d6d
change-id: 20261102-b4-ionic-cmd-timeout-c704d5304b4f

Best regards,
--  
Nikhil P. Rao <nikhil.rao@amd.com>


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2026-11-05 22:43 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-11-05 22:43 [PATCH net-next v2 0/3] ionic: make the device command timeout configurable Nikhil P. Rao
2026-11-05 22:43 ` [PATCH net-next v2 1/3] ionic: make the command timeout per device Nikhil P. Rao
2026-11-05 22:43 ` [PATCH net-next v2 2/3] RDMA/ionic: Use the ionic command timeout for the admin queue Nikhil P. Rao
2026-11-05 22:43 ` [PATCH net-next v2 3/3] ionic: add devlink param for command timeout Nikhil P. Rao

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox