Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932212AbdDQTRu (ORCPT ); Mon, 17 Apr 2017 15:17:50 -0400 Received: from shards.monkeyblade.net ([184.105.139.130]:57182 "EHLO shards.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755280AbdDQTRp (ORCPT ); Mon, 17 Apr 2017 15:17:45 -0400 Date: Mon, 17 Apr 2017 15:17:43 -0400 (EDT) Message-Id: <20170417.151743.1779341653983811894.davem@davemloft.net> To: khoroshilov@ispras.ru Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, ldv-project@linuxtesting.org Subject: Re: [PATCH] net: natsemi: ns83820: add checks for dma mapping error From: David Miller In-Reply-To: <1492210250-17200-1-git-send-email-khoroshilov@ispras.ru> References: <1492210250-17200-1-git-send-email-khoroshilov@ispras.ru> X-Mailer: Mew version 6.7 on Emacs 25.1 / Mule 6.0 (HANACHIRUSATO) Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.5.12 (shards.monkeyblade.net [149.20.54.216]); Mon, 17 Apr 2017 11:36:23 -0700 (PDT) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 616 Lines: 17 From: Alexey Khoroshilov Date: Sat, 15 Apr 2017 01:50:50 +0300 > @@ -1136,6 +1141,10 @@ static netdev_tx_t ns83820_hard_start_xmit(struct sk_buff *skb, > if (nr_frags) > len -= skb->data_len; > buf = pci_map_single(dev->pci_dev, skb->data, len, PCI_DMA_TODEVICE); > + if (pci_dma_mapping_error(dev->pci_dev, buf)) { > + dev_kfree_skb_any(skb); > + return NETDEV_TX_OK; > + } > > first_desc = dev->tx_descs + (free_idx * DESC_SIZE); > You need to also add this check for the skb_map_dma_frag() calls below this line, and therefore you'll need to add unwind on such a failure.