From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755067AbbCFSSH (ORCPT ); Fri, 6 Mar 2015 13:18:07 -0500 Received: from mail-wi0-f178.google.com ([209.85.212.178]:36862 "EHLO mail-wi0-f178.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754465AbbCFSSF (ORCPT ); Fri, 6 Mar 2015 13:18:05 -0500 From: Peter Senna Tschudin To: davem@davemloft.net, hauke@hauke-m.de, w-lkml@lebenslange-mailadresse.de, zajec5@gmail.com, joe@perches.com, netdev@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Peter Senna Tschudin Subject: [PATCH] bgmac: ratelimit warning messages Date: Fri, 6 Mar 2015 19:17:54 +0100 Message-Id: <1425665874-14870-1-git-send-email-peter.senna@gmail.com> X-Mailer: git-send-email 2.1.0 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On my test environment the troughput of a file transfer drops from 4.4Mbps to 116Kbps due the number of repeated warning messages. Adding printk_ratelimit() solves the issue without removing the warning message. Signed-off-by: Peter Senna Tschudin --- drivers/net/ethernet/broadcom/bgmac.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/net/ethernet/broadcom/bgmac.c b/drivers/net/ethernet/broadcom/bgmac.c index 676ffe0..d1a259b 100644 --- a/drivers/net/ethernet/broadcom/bgmac.c +++ b/drivers/net/ethernet/broadcom/bgmac.c @@ -302,7 +302,7 @@ static int bgmac_dma_rx_skb_for_slot(struct bgmac *bgmac, slot->skb = skb; slot->dma_addr = dma_addr; - if (slot->dma_addr & 0xC0000000) + if ((slot->dma_addr & 0xC0000000) && printk_ratelimit()) bgmac_warn(bgmac, "DMA address using 0xC0000000 bit(s), it may need translation trick\n"); return 0; @@ -505,7 +505,7 @@ static int bgmac_dma_alloc(struct bgmac *bgmac) ring->mmio_base); goto err_dma_free; } - if (ring->dma_base & 0xC0000000) + if ((ring->dma_base & 0xC0000000) && printk_ratelimit()) bgmac_warn(bgmac, "DMA address using 0xC0000000 bit(s), it may need translation trick\n"); ring->unaligned = bgmac_dma_unaligned(bgmac, ring, @@ -536,7 +536,7 @@ static int bgmac_dma_alloc(struct bgmac *bgmac) err = -ENOMEM; goto err_dma_free; } - if (ring->dma_base & 0xC0000000) + if ((ring->dma_base & 0xC0000000) && printk_ratelimit()) bgmac_warn(bgmac, "DMA address using 0xC0000000 bit(s), it may need translation trick\n"); ring->unaligned = bgmac_dma_unaligned(bgmac, ring, -- 2.1.0