From patchwork Thu Jul 7 09:20:39 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Eric Dumazet X-Patchwork-Id: 103623 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 3AB181007D7 for ; Thu, 7 Jul 2011 19:20:59 +1000 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753228Ab1GGJUy (ORCPT ); Thu, 7 Jul 2011 05:20:54 -0400 Received: from mail-ww0-f44.google.com ([74.125.82.44]:50970 "EHLO mail-ww0-f44.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752000Ab1GGJUx (ORCPT ); Thu, 7 Jul 2011 05:20:53 -0400 Received: by wwe5 with SMTP id 5so749702wwe.1 for ; Thu, 07 Jul 2011 02:20:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=subject:from:to:cc:in-reply-to:references:content-type:date :message-id:mime-version:x-mailer:content-transfer-encoding; bh=AsPauLTYC6IsFvp7uiKNSQy+5FmSy6ImftRpUAjx++Y=; b=SFqpOOTw864WPtEnFPvpeT05pJybKrf23ZNq24zd1Xe7qe1/YdgGy1/oEVpri4Mz6k 6wUeX4AgYJ9EO+/OvTBeqtT73T7v6Ejo7SpSAGFHWThyQC2Q/8KOxJD9EglvukzHa0nQ bM4Xv9+XoUH+cCsr/9cQVaKuh5Nge1/zSWjR8= Received: by 10.227.198.197 with SMTP id ep5mr521466wbb.33.1310030451681; Thu, 07 Jul 2011 02:20:51 -0700 (PDT) Received: from [10.150.51.221] (gw0.net.jmsp.net [212.23.165.14]) by mx.google.com with ESMTPS id gd1sm2049466wbb.27.2011.07.07.02.20.49 (version=SSLv3 cipher=OTHER); Thu, 07 Jul 2011 02:20:50 -0700 (PDT) Subject: Re: [Bugme-new] [Bug 38102] New: BUG kmalloc-2048: Poison overwritten From: Eric Dumazet To: Alexey Zaytsev Cc: Michael =?ISO-8859-1?Q?B=FCsch?= , Neil Horman , Andrew Morton , netdev@vger.kernel.org, Gary Zambrano , bugme-daemon@bugzilla.kernel.org, "David S. Miller" , Pekka Pietikainen , Florian Schirmer , Felix Fietkau , Michael Buesch In-Reply-To: References: <1309882352.2271.19.camel@edumazet-HP-Compaq-6005-Pro-SFF-PC> <20110705164202.GD2959@hmsreliant.think-freely.org> <1309884441.2271.34.camel@edumazet-HP-Compaq-6005-Pro-SFF-PC> <20110705180650.GF2959@hmsreliant.think-freely.org> <1309889634.2545.2.camel@edumazet-laptop> <1309890775.2545.17.camel@edumazet-laptop> <1309891516.2545.23.camel@edumazet-laptop> <20110705195353.GG2959@hmsreliant.think-freely.org> <1309896147.2545.28.camel@edumazet-laptop> <1309896940.2545.34.camel@edumazet-laptop> <20110705220644.GB12118@hmsreliant.think-freely.org> <20110706173243.404d8599@maggie> <1309971379.2292.64.camel@edumazet-HP-Compaq-6005-Pro-SFF-PC> <1310021286.2481.36.camel@edumazet-laptop> Date: Thu, 07 Jul 2011 11:20:39 +0200 Message-ID: <1310030439.2127.4.camel@edumazet-HP-Compaq-6005-Pro-SFF-PC> Mime-Version: 1.0 X-Mailer: Evolution 2.32.2 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org Le jeudi 07 juillet 2011 à 11:45 +0400, Alexey Zaytsev a écrit : > On Thu, Jul 7, 2011 at 10:48, Eric Dumazet wrote: > > Le jeudi 07 juillet 2011 à 10:32 +0400, Alexey Zaytsev a écrit : > >> Sorry, been busy for the last couple days. Any patches I should test? > > > > Please try : > > > > Thanks. Seems to fail to initialize, getting this in dmesg: > > [ 103.421577] b44 0000:02:0e.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16 > [ 103.440139] ssb: Core 0 found: Fast Ethernet (cc 0x806, rev 0x07, > vendor 0x4243) > [ 103.440159] ssb: Core 1 found: V90 (cc 0x807, rev 0x03, vendor 0x4243) > [ 103.440177] ssb: Core 2 found: PCI (cc 0x804, rev 0x0A, vendor 0x4243) > [ 103.481128] ssb: Sonics Silicon Backplane found on PCI device 0000:02:0e.0 > [ 103.481532] b44: b44.c:v2.0 > [ 103.502185] b44 ssb1:0: eth0: Broadcom 44xx/47xx 10/100BaseT > Ethernet 00:17:a4:dd:4e:93 > [ 109.405071] b44 ssb1:0: eth0: powering down PHY > [ 112.816456] b44 ssb1:0: eth0: Link is up at 100 Mbps, full duplex > [ 112.816470] b44 ssb1:0: eth0: Flow control is off for TX and off for RX > [ 112.952073] b44 ssb1:0: eth0: powering down PHY > [ 113.816148] b44 ssb1:0: eth0: Link is down > [ 114.953717] b44 ssb1:0: eth0: powering down PHY > [ 117.816246] b44 ssb1:0: eth0: Link is up at 100 Mbps, full duplex > [ 117.816260] b44 ssb1:0: eth0: Flow control is off for TX and off for RX > [ 117.963238] b44 ssb1:0: eth0: powering down PHY > [ 118.816128] b44 ssb1:0: eth0: Link is down > [ 119.962817] b44 ssb1:0: eth0: powering down PHY Maybe this is the b44_init_hw() change : bw32(bp, B44_DMARX_PTR, 0); So please change this part Updated patch : --- 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/b44.c b/drivers/net/b44.c index 6c4ef96..555a8ce 100644 --- a/drivers/net/b44.c +++ b/drivers/net/b44.c @@ -688,8 +688,8 @@ static int b44_alloc_rx_skb(struct b44 *bp, int src_idx, u32 dest_idx_unmasked) ctrl |= DESC_CTRL_EOT; dp = &bp->rx_ring[dest_idx]; - dp->ctrl = cpu_to_le32(ctrl); dp->addr = cpu_to_le32((u32) mapping + bp->dma_offset); + dp->ctrl = cpu_to_le32(ctrl); if (bp->flags & B44_FLAG_RX_RING_HACK) b44_sync_dma_desc_for_device(bp->sdev, bp->rx_ring_dma, @@ -725,13 +725,15 @@ static void b44_recycle_rx(struct b44 *bp, int src_idx, u32 dest_idx_unmasked) DMA_BIDIRECTIONAL); ctrl = src_desc->ctrl; + src_desc->ctrl = (ctrl & cpu_to_le32(DESC_CTRL_EOT)); if (dest_idx == (B44_RX_RING_SIZE - 1)) ctrl |= cpu_to_le32(DESC_CTRL_EOT); else ctrl &= cpu_to_le32(~DESC_CTRL_EOT); - dest_desc->ctrl = ctrl; dest_desc->addr = src_desc->addr; + dest_desc->ctrl = ctrl; + src_desc->addr = 0; src_map->skb = NULL; @@ -1118,6 +1120,7 @@ static void b44_init_rings(struct b44 *bp) if (b44_alloc_rx_skb(bp, -1, i) < 0) break; } + bp->rx_prod = i; } /* @@ -1406,7 +1409,6 @@ static void b44_init_hw(struct b44 *bp, int reset_kind) bw32(bp, B44_DMARX_ADDR, bp->rx_ring_dma + bp->dma_offset); bw32(bp, B44_DMARX_PTR, bp->rx_pending); - bp->rx_prod = bp->rx_pending; bw32(bp, B44_MIB_CTRL, MIB_CTRL_CLR_ON_READ); }