From patchwork Mon Dec 20 13:03:15 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dan Carpenter X-Patchwork-Id: 76205 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id D2808B6F14 for ; Tue, 21 Dec 2010 00:03:42 +1100 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757544Ab0LTND2 (ORCPT ); Mon, 20 Dec 2010 08:03:28 -0500 Received: from mail-wy0-f174.google.com ([74.125.82.174]:33904 "EHLO mail-wy0-f174.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753319Ab0LTND0 (ORCPT ); Mon, 20 Dec 2010 08:03:26 -0500 Received: by wyb28 with SMTP id 28so2816653wyb.19 for ; Mon, 20 Dec 2010 05:03:25 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:date:from:to:cc:subject :message-id:mime-version:content-type:content-disposition:user-agent; bh=ZF95E5+1/x25oHZ9GRrrIWaT1EixikRkWViqWaBktg8=; b=Da8Z39/UH8sw4fCs8E7CzoD5U1btFRMOQyK+befhSwt95roPuuGoTpjg9x3z3K5FJ1 n/ITdAuZJCtEkRQ0vk2FyLsWGcZC0WL7ie5/B0AsKwiSlS+WQ12BMTNkQ95252syzQ78 6L6b/YNw3lJa8hLd6sVAAXO6fZefMJZz+wanM= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=date:from:to:cc:subject:message-id:mime-version:content-type :content-disposition:user-agent; b=dQeZJ5d5ZuUXdlOHZOnxhdE7jGnK7sBBws/kX1g8AIs8VkcEGJE3Qp8I24wzCm+nNq 7jHxfUg4V4c9WHP8ul1nB+mQk07vkkflusxf/aUIUywR//ARO3RLrnXynveJhdHTmnAo tml3/c4D7TSih8chx0uFWgn8ryitsIf/YjURI= Received: by 10.216.35.83 with SMTP id t61mr4394308wea.1.1292850205058; Mon, 20 Dec 2010 05:03:25 -0800 (PST) Received: from bicker ([41.202.225.144]) by mx.google.com with ESMTPS id f52sm1837234wes.35.2010.12.20.05.03.22 (version=TLSv1/SSLv3 cipher=RC4-MD5); Mon, 20 Dec 2010 05:03:24 -0800 (PST) Date: Mon, 20 Dec 2010 16:03:15 +0300 From: Dan Carpenter To: Shreyas Bhatewara Cc: "VMware, Inc." , netdev@vger.kernel.org, kernel-janitors@vger.kernel.org Subject: [patch -next] vmxnet3: locking problems in xmit Message-ID: <20101220130315.GY1936@bicker> MIME-Version: 1.0 Content-Disposition: inline User-Agent: Mutt/1.5.20 (2009-06-14) Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org There were several paths that didn't release their locks. Signed-off-by: Dan Carpenter Signed-off-by: Bhavesh Davda --- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html diff --git a/drivers/net/vmxnet3/vmxnet3_drv.c b/drivers/net/vmxnet3/vmxnet3_drv.c index 23154cf..939e546 100644 --- a/drivers/net/vmxnet3/vmxnet3_drv.c +++ b/drivers/net/vmxnet3/vmxnet3_drv.c @@ -980,7 +980,7 @@ vmxnet3_tq_xmit(struct sk_buff *skb, struct vmxnet3_tx_queue *tq, } } else { tq->stats.drop_hdr_inspect_err++; - goto drop_pkt; + goto unlock_drop_pkt; } /* fill tx descs related to addr & len */ @@ -1052,6 +1052,8 @@ vmxnet3_tq_xmit(struct sk_buff *skb, struct vmxnet3_tx_queue *tq, hdr_too_big: tq->stats.drop_oversized_hdr++; +unlock_drop_pkt: + spin_unlock_irqrestore(&tq->tx_lock, flags); drop_pkt: tq->stats.drop_total++; dev_kfree_skb(skb);