netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
To: davem@davemloft.net
Cc: Stefan Assmann <sassmann@kpanic.de>,
	netdev@vger.kernel.org, nhorman@redhat.com, sassmann@redhat.com,
	jogreene@redhat.com, Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Subject: [net-next 12/15] igbvf: clear buffer_info->dma after dma_unmap_single()
Date: Tue, 18 Aug 2015 14:09:19 -0700	[thread overview]
Message-ID: <1439932162-1995-13-git-send-email-jeffrey.t.kirsher@intel.com> (raw)
In-Reply-To: <1439932162-1995-1-git-send-email-jeffrey.t.kirsher@intel.com>

From: Stefan Assmann <sassmann@kpanic.de>

The driver doesn't clear buffer_info->dma after calling
dma_unmap_single() in all cases. This has been discovered by changing
the mtu twice, which caused the following backtrace.

[   68.569280] WARNING: CPU: 2 PID: 1860 at drivers/iommu/intel-iommu.c:3517 intel_unmap+0x20c/0x220()
[   68.579392] Driver unmaps unmatched page at PFN fffc2a40
[   68.585322] Modules linked in: igbvf ipt_MASQUERADE nf_nat_masquerade_ipv4 iptable_nat nf_nat_ipv4 nf_nat kvm_intel kvm igb megs
[   68.599163] CPU: 2 PID: 1860 Comm: ifconfig Not tainted 4.2.0-rc4+ #147
[   68.606543] Hardware name: IBM  -[546025Z]-/00Y7630, BIOS -[VVE134TUS-1.51]- 10/17/2013
[   68.615473]  0000000000000dbd ffff88046441bb08 ffffffff81a5ad0b ffffffff81e2f9ea
[   68.623775]  ffff88046441bb58 ffff88046441bb48 ffffffff81056b55 ffff88047fc583c0
[   68.632075]  0000000000000000 ffff880469a8e600 00000000fffc2a40 ffff880465b32098
[   68.640375] Call Trace:
[   68.643109]  [<ffffffff81a5ad0b>] dump_stack+0x48/0x5d
[   68.648844]  [<ffffffff81056b55>] warn_slowpath_common+0x95/0xe0
[   68.655549]  [<ffffffff81056c56>] warn_slowpath_fmt+0x46/0x70
[   68.661960]  [<ffffffff8158a614>] ? find_iova+0x54/0x90
[   68.667791]  [<ffffffff815988dc>] intel_unmap+0x20c/0x220
[   68.673815]  [<ffffffff8159891e>] intel_unmap_page+0xe/0x10
[   68.680038]  [<ffffffffa0067536>] igbvf_clean_rx_ring+0x96/0x370 [igbvf]
[   68.687516]  [<ffffffffa0067915>] igbvf_down+0x105/0x110 [igbvf]
[   68.694219]  [<ffffffffa0067beb>] igbvf_change_mtu+0x16b/0x180 [igbvf]
[...]

Signed-off-by: Stefan Assmann <sassmann@kpanic.de>
Acked-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Tested-by: Aaron Brown <aaron.f.brown@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
---
 drivers/net/ethernet/intel/igbvf/netdev.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/net/ethernet/intel/igbvf/netdev.c b/drivers/net/ethernet/intel/igbvf/netdev.c
index 95af14e..686fa71 100644
--- a/drivers/net/ethernet/intel/igbvf/netdev.c
+++ b/drivers/net/ethernet/intel/igbvf/netdev.c
@@ -319,6 +319,7 @@ static bool igbvf_clean_rx_irq(struct igbvf_adapter *adapter,
 			dma_unmap_single(&pdev->dev, buffer_info->dma,
 					 adapter->rx_ps_hdr_size,
 					 DMA_FROM_DEVICE);
+			buffer_info->dma = 0;
 			skb_put(skb, hlen);
 		}
 
-- 
2.4.3

  parent reply	other threads:[~2015-08-18 21:09 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-08-18 21:09 [net-next 00/15][pull request] Intel Wired LAN Driver Updates 2015-08-18 Jeff Kirsher
2015-08-18 21:09 ` [net-next 01/15] igb: Fix oops caused by missing queue pairing Jeff Kirsher
2015-08-18 21:09 ` [net-next 02/15] igb: missing rtnl_unlock in igb_sriov_reinit() Jeff Kirsher
2015-08-18 21:09 ` [net-next 03/15] igb: do not re-init SR-IOV during probe Jeff Kirsher
2015-08-18 21:09 ` [net-next 04/15] igb: implement high frequency periodic output signals Jeff Kirsher
2015-08-18 21:09 ` [net-next 05/15] igb: add support for 1512 PHY Jeff Kirsher
2015-08-18 21:09 ` [net-next 06/15] igb: Teardown SR-IOV before unregister_netdev() Jeff Kirsher
2015-08-18 21:09 ` [net-next 07/15] e100: Add a check after pci_pool_create to avoid null pointer dereference Jeff Kirsher
2015-08-18 21:09 ` [net-next 08/15] e100: Release skb when DMA mapping is failed in e100_xmit_prepare Jeff Kirsher
2015-08-18 21:09 ` [net-next 09/15] igb: Fix a deadlock in igb_sriov_reinit Jeff Kirsher
2015-08-18 21:09 ` [net-next 10/15] e1000e: Modify Tx/Rx configurations to avoid null pointer dereferences in e1000_open Jeff Kirsher
2015-08-18 21:09 ` [net-next 11/15] igb: Fix a memory leak in igb_probe Jeff Kirsher
2015-08-18 21:09 ` Jeff Kirsher [this message]
2015-08-18 21:09 ` [net-next 13/15] igb: make sure SR-IOV init uses the right number of queues Jeff Kirsher
2015-08-18 21:09 ` [net-next 14/15] ixgbe: Simplify port-specific macros Jeff Kirsher
2015-08-18 21:09 ` [net-next 15/15] ixgbe: TRIVIAL fix up double 'the' and comment style Jeff Kirsher
2015-08-19  3:21 ` [net-next 00/15][pull request] Intel Wired LAN Driver Updates 2015-08-18 David Miller

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=1439932162-1995-13-git-send-email-jeffrey.t.kirsher@intel.com \
    --to=jeffrey.t.kirsher@intel.com \
    --cc=davem@davemloft.net \
    --cc=jogreene@redhat.com \
    --cc=netdev@vger.kernel.org \
    --cc=nhorman@redhat.com \
    --cc=sassmann@kpanic.de \
    --cc=sassmann@redhat.com \
    /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;
as well as URLs for NNTP newsgroup(s).