From: Alexander Duyck <aduyck@mirantis.com>
To: intel-wired-lan@osuosl.org
Subject: [Intel-wired-lan] [next PATCH 2/5] fm10k: Cleanup exception handling for mailbox interrupt
Date: Tue, 27 Oct 2015 16:59:18 -0700 [thread overview]
Message-ID: <20151027235918.30048.41769.stgit@localhost.localdomain> (raw)
In-Reply-To: <20151027235341.30048.46286.stgit@localhost.localdomain>
This patch addresses two issues.
First is the fact that the fm10k_mbx_free_irq was assuming msix_entries was
valid and that will not always be the case. As such we need to add a check
for if it is NULL.
Second is the fact that we weren't freeing the IRQ if the mailbox API
returned an error on trying to connect.
Signed-off-by: Alexander Duyck <aduyck@mirantis.com>
---
drivers/net/ethernet/intel/fm10k/fm10k_pci.c | 13 +++++++++++--
1 file changed, 11 insertions(+), 2 deletions(-)
diff --git a/drivers/net/ethernet/intel/fm10k/fm10k_pci.c b/drivers/net/ethernet/intel/fm10k/fm10k_pci.c
index 15e67a383d27..15327d274d72 100644
--- a/drivers/net/ethernet/intel/fm10k/fm10k_pci.c
+++ b/drivers/net/ethernet/intel/fm10k/fm10k_pci.c
@@ -1131,6 +1131,10 @@ void fm10k_mbx_free_irq(struct fm10k_intfc *interface)
struct fm10k_hw *hw = &interface->hw;
int itr_reg;
+ /* no mailbox IRQ to free if MSI-X is not enabled */
+ if (!interface->msix_entries)
+ return;
+
/* disconnect the mailbox */
hw->mbx.ops.disconnect(hw, &hw->mbx);
@@ -1453,10 +1457,15 @@ int fm10k_mbx_request_irq(struct fm10k_intfc *interface)
err = fm10k_mbx_request_irq_pf(interface);
else
err = fm10k_mbx_request_irq_vf(interface);
+ if (err)
+ return err;
/* connect mailbox */
- if (!err)
- err = hw->mbx.ops.connect(hw, &hw->mbx);
+ err = hw->mbx.ops.connect(hw, &hw->mbx);
+
+ /* if the mailbox failed to connect, then free IRQ */
+ if (err)
+ fm10k_mbx_free_irq(interface);
return err;
}
next prev parent reply other threads:[~2015-10-27 23:59 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-10-27 23:59 [Intel-wired-lan] [next PATCH 0/5] Misc Intel driver cleanups Alexander Duyck
2015-10-27 23:59 ` [Intel-wired-lan] [next PATCH 1/5] fm10k: Cleanup MSI-X interrupts in case of failure Alexander Duyck
2015-10-28 16:11 ` Allan, Bruce W
2015-11-03 20:45 ` Singh, Krishneil K
2015-10-27 23:59 ` Alexander Duyck [this message]
2015-10-28 16:11 ` [Intel-wired-lan] [next PATCH 2/5] fm10k: Cleanup exception handling for mailbox interrupt Allan, Bruce W
2015-11-03 20:47 ` Singh, Krishneil K
2015-10-27 23:59 ` [Intel-wired-lan] [next PATCH 3/5] fm10k: Cleanup exception handling for changing queues Alexander Duyck
2015-10-28 16:11 ` Allan, Bruce W
2015-10-29 19:12 ` Allan, Bruce W
2015-10-29 19:39 ` Alexander Duyck
2015-11-03 23:20 ` Allan, Bruce W
2015-11-10 16:46 ` Allan, Bruce W
2015-11-10 17:30 ` Jeff Kirsher
2015-11-03 20:48 ` Singh, Krishneil K
2015-10-27 23:59 ` [Intel-wired-lan] [next PATCH 4/5] e1000e: Switch e1000e_up to void, drop code checking for error result Alexander Duyck
2015-11-20 4:48 ` Brown, Aaron F
2015-10-27 23:59 ` [Intel-wired-lan] [next PATCH 5/5] igb: Fix unused variable warning Alexander Duyck
2015-11-20 4:50 ` Brown, Aaron F
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20151027235918.30048.41769.stgit@localhost.localdomain \
--to=aduyck@mirantis.com \
--cc=intel-wired-lan@osuosl.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox