Message ID | 20240909202737.93852-4-michael.chan@broadcom.com (mailing list archive) |
---|---|
State | Accepted |
Commit | f77cdee5db06c6e4c30573889964c4cf1e3042a3 |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | bnxt_en: MSIX improvements | expand |
On Mon, Sep 09, 2024 at 01:27:37PM -0700, Michael Chan wrote: > From: Edwin Peer <edwin.peer@broadcom.com> > > The name field of struct bnxt_irq is written using snprintf in > bnxt_setup_msix(). Make the field large enough to fit the maximal > formatted string to prevent truncation. Truncated IRQ names are > less meaningful to the user. For example, "enp4s0f0np0-TxRx-0" > gets truncated to "enp4s0f0np0-TxRx-" with the existing code. > > Make sure we have space for the extra characters added to the IRQ > names: > > - the characters introduced by the static format string: hyphens > - the maximal static substituted ring type string: "TxRx" > - the maximum length of an integer formatted as a string, even > though reasonable ring numbers would never be as long as this. > > Signed-off-by: Edwin Peer <edwin.peer@broadcom.com> > Signed-off-by: Michael Chan <michael.chan@broadcom.com> Reviewed-by: Simon Horman <horms@kernel.org>
diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.h b/drivers/net/ethernet/broadcom/bnxt/bnxt.h index 3b805ed433ed..69231e85140b 100644 --- a/drivers/net/ethernet/broadcom/bnxt/bnxt.h +++ b/drivers/net/ethernet/broadcom/bnxt/bnxt.h @@ -1217,12 +1217,15 @@ struct bnxt_napi { bool in_reset; }; +/* "TxRx", 2 hypens, plus maximum integer */ +#define BNXT_IRQ_NAME_EXTRA 17 + struct bnxt_irq { irq_handler_t handler; unsigned int vector; u8 requested:1; u8 have_cpumask:1; - char name[IFNAMSIZ + 2]; + char name[IFNAMSIZ + BNXT_IRQ_NAME_EXTRA]; cpumask_var_t cpu_mask; };