From patchwork Sun May 22 21:02:08 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Paul Gortmaker X-Patchwork-Id: 96778 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 2F09BB6FB6 for ; Mon, 23 May 2011 07:02:17 +1000 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754564Ab1EVVCM (ORCPT ); Sun, 22 May 2011 17:02:12 -0400 Received: from mail-fx0-f46.google.com ([209.85.161.46]:50542 "EHLO mail-fx0-f46.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753788Ab1EVVCJ (ORCPT ); Sun, 22 May 2011 17:02:09 -0400 Received: by fxm17 with SMTP id 17so3549371fxm.19 for ; Sun, 22 May 2011 14:02:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=Y03z90yyyQsEiaroUcfspTrVbICjIKwoe+T1w+5uBHY=; b=f7U83n9tGpaVHfP4NBMrTGDiiUR9OZIeXEjEfG2i9zaV1S342YEAq36aSJGujv6m8F 2HeJlFzylv0pg2oztfYpEz81VBbYzy+4VgEG+bySHNTHNLrWj0VXBnkUY/X7UdfTMJfI UeawDpT/z3vnxKrwZef1b9jXS38fZWtR9WRFw= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; b=a5PzQmJ3LYx6MFP2CoXRwetPklsbmFfCDvsq2BCNrmtNCiXN61KIkT4JkAMqvPHyCy avbS+P1rHCHmnlq3GBuYRrgiUwOObviaBidONUuvnaJIfGU5kQU9N3NZ5N9zGx7LqO/3 rGGiqWaV/uHk0ZNhhWOnpi9najcNZEIIANkUs= MIME-Version: 1.0 Received: by 10.223.32.142 with SMTP id c14mr1680975fad.59.1306098128277; Sun, 22 May 2011 14:02:08 -0700 (PDT) Received: by 10.223.14.3 with HTTP; Sun, 22 May 2011 14:02:08 -0700 (PDT) In-Reply-To: References: <1306088626.12435.27.camel@edumazet-laptop> Date: Sun, 22 May 2011 17:02:08 -0400 Message-ID: Subject: Re: More prefetch fall-out From: Paul Gortmaker To: Linus Torvalds Cc: Eric Dumazet , David Miller , Network Development Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org On Sun, May 22, 2011 at 2:38 PM, Linus Torvalds wrote: > On Sun, May 22, 2011 at 11:23 AM, Eric Dumazet wrote: >> >> Taking a look at various skb_queue_walk* call sites, I think prefetches >> are not a clear win, I would just remove them all from skbuff.h > > Hmm. > > I did that, and it turns out that we also have: > >  - *lots* of network drivers that use "prefetch" (without including prefetch.h) >  - net/netlabel/netlabel_addrlist.h doing the same. > > and fixing that up is annoying "grunt work". I just did a cheezy script (embedded in the attached commit) that should help make the grunt work less annoying by doing a mechanical 1st pass on fixing the drivers/net ones. Script is tested -- compile isn't (I'm not currently somewhere that I can do a yesconfig/compile without growing old waiting for it). Feel free to use the script and scrap the commit, or whatever makes things easiest for people. Paul. > > So for now, I think I'll just do the "add the to > " thing, and leave networking alone. That makes > everything compile ("allyesconfig") even with my "you *have* to > include " test-patch. > >                                 Linus From e7e542046f621ecc32e4e4f3c3cd3082571bf38f Mon Sep 17 00:00:00 2001 From: Paul Gortmaker Date: Sun, 22 May 2011 16:47:17 -0400 Subject: [PATCH] drivers/net: add prefetch header for prefetch users After discovering that wide use of prefetch on modern CPUs could be a net loss instead of a win, net drivers which were relying on the implicit inclusion of prefetch.h via the list headers showed up in the resulting cleanup fallout. Give them an explicit include via the following $0.02 script. ========================================= #!/bin/bash MANUAL="" for i in `git grep -l 'prefetch(.*)' .` ; do grep -q '' $i if [ $? = 0 ] ; then continue fi ( echo '?^#include ' echo . echo w echo q ) | ed -s $i > /dev/null 2>&1 if [ $? != 0 ]; then echo $i needs manual fixup MANUAL="$i $MANUAL" fi done echo ------------------- 8\<---------------------- echo vi $MANUAL ========================================= Signed-off-by: Paul diff --git a/drivers/net/benet/be_main.c b/drivers/net/benet/be_main.c index 4b5e0ed..a485f7f 100644 --- a/drivers/net/benet/be_main.c +++ b/drivers/net/benet/be_main.c @@ -15,6 +15,7 @@ * Costa Mesa, CA 92626 */ +#include #include "be.h" #include "be_cmds.h" #include diff --git a/drivers/net/bna/bnad.c b/drivers/net/bna/bnad.c index e588511..7d25a97 100644 --- a/drivers/net/bna/bnad.c +++ b/drivers/net/bna/bnad.c @@ -23,6 +23,7 @@ #include #include #include +#include #include "bnad.h" #include "bna.h" diff --git a/drivers/net/bnx2x/bnx2x_cmn.c b/drivers/net/bnx2x/bnx2x_cmn.c index ca2bbc0..64d01e7 100644 --- a/drivers/net/bnx2x/bnx2x_cmn.c +++ b/drivers/net/bnx2x/bnx2x_cmn.c @@ -21,6 +21,7 @@ #include #include #include +#include #include "bnx2x_cmn.h" #include "bnx2x_init.h" diff --git a/drivers/net/chelsio/sge.c b/drivers/net/chelsio/sge.c index b948ea7..58380d2 100644 --- a/drivers/net/chelsio/sge.c +++ b/drivers/net/chelsio/sge.c @@ -54,6 +54,7 @@ #include #include #include +#include #include "cpl5_cmd.h" #include "sge.h" diff --git a/drivers/net/cnic.c b/drivers/net/cnic.c index cde59b4..11a92af 100644 --- a/drivers/net/cnic.c +++ b/drivers/net/cnic.c @@ -27,6 +27,7 @@ #include #include #include +#include #if defined(CONFIG_VLAN_8021Q) || defined(CONFIG_VLAN_8021Q_MODULE) #define BCM_VLAN 1 #endif diff --git a/drivers/net/cxgb3/sge.c b/drivers/net/cxgb3/sge.c index cba1401..3f562ba 100644 --- a/drivers/net/cxgb3/sge.c +++ b/drivers/net/cxgb3/sge.c @@ -37,6 +37,7 @@ #include #include #include +#include #include #include "common.h" #include "regs.h" diff --git a/drivers/net/cxgb4/sge.c b/drivers/net/cxgb4/sge.c index 75a4b0f..56adf44 100644 --- a/drivers/net/cxgb4/sge.c +++ b/drivers/net/cxgb4/sge.c @@ -39,6 +39,7 @@ #include #include #include +#include #include #include #include "cxgb4.h" diff --git a/drivers/net/cxgb4vf/sge.c b/drivers/net/cxgb4vf/sge.c index 5182960..5fd75fd 100644 --- a/drivers/net/cxgb4vf/sge.c +++ b/drivers/net/cxgb4vf/sge.c @@ -41,6 +41,7 @@ #include #include #include +#include #include "t4vf_common.h" #include "t4vf_defs.h" diff --git a/drivers/net/e1000/e1000_main.c b/drivers/net/e1000/e1000_main.c index c18cb8e..76e8af0 100644 --- a/drivers/net/e1000/e1000_main.c +++ b/drivers/net/e1000/e1000_main.c @@ -29,6 +29,7 @@ #include "e1000.h" #include #include +#include /* Intel Media SOC GbE MDIO physical base address */ static unsigned long ce4100_gbe_mdio_base_phy; diff --git a/drivers/net/e1000e/netdev.c b/drivers/net/e1000e/netdev.c index 0939040..d960056 100644 --- a/drivers/net/e1000e/netdev.c +++ b/drivers/net/e1000e/netdev.c @@ -49,6 +49,7 @@ #include #include #include +#include #include "e1000.h" diff --git a/drivers/net/ehea/ehea_qmr.h b/drivers/net/ehea/ehea_qmr.h index 3810473..fddff8e 100644 --- a/drivers/net/ehea/ehea_qmr.h +++ b/drivers/net/ehea/ehea_qmr.h @@ -29,6 +29,7 @@ #ifndef __EHEA_QMR_H__ #define __EHEA_QMR_H__ +#include #include "ehea.h" #include "ehea_hw.h" diff --git a/drivers/net/enic/enic_main.c b/drivers/net/enic/enic_main.c index 3d99b0f..2f433fb 100644 --- a/drivers/net/enic/enic_main.c +++ b/drivers/net/enic/enic_main.c @@ -35,6 +35,7 @@ #include #include #include +#include #include #include "cq_enet_desc.h" diff --git a/drivers/net/forcedeth.c b/drivers/net/forcedeth.c index d09e8b0..537b695 100644 --- a/drivers/net/forcedeth.c +++ b/drivers/net/forcedeth.c @@ -64,6 +64,7 @@ #include #include #include +#include #include #include diff --git a/drivers/net/igb/igb_main.c b/drivers/net/igb/igb_main.c index ce7838e..0ae9352 100644 --- a/drivers/net/igb/igb_main.c +++ b/drivers/net/igb/igb_main.c @@ -47,6 +47,7 @@ #include #ifdef CONFIG_IGB_DCA #include +#include #endif #include "igb.h" diff --git a/drivers/net/igbvf/netdev.c b/drivers/net/igbvf/netdev.c index 1d04ca6..1c77fb3 100644 --- a/drivers/net/igbvf/netdev.c +++ b/drivers/net/igbvf/netdev.c @@ -41,6 +41,7 @@ #include #include #include +#include #include "igbvf.h" diff --git a/drivers/net/ixgb/ixgb_main.c b/drivers/net/ixgb/ixgb_main.c index 0f681ac..6a130eb 100644 --- a/drivers/net/ixgb/ixgb_main.c +++ b/drivers/net/ixgb/ixgb_main.c @@ -28,6 +28,7 @@ #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt +#include #include "ixgb.h" char ixgb_driver_name[] = "ixgb"; diff --git a/drivers/net/ixgbe/ixgbe_main.c b/drivers/net/ixgbe/ixgbe_main.c index fa01b0b..08e8e25 100644 --- a/drivers/net/ixgbe/ixgbe_main.c +++ b/drivers/net/ixgbe/ixgbe_main.c @@ -41,6 +41,7 @@ #include #include #include +#include #include #include "ixgbe.h" diff --git a/drivers/net/ixgbevf/ixgbevf_main.c b/drivers/net/ixgbevf/ixgbevf_main.c index d7ab202..28d3cb2 100644 --- a/drivers/net/ixgbevf/ixgbevf_main.c +++ b/drivers/net/ixgbevf/ixgbevf_main.c @@ -44,6 +44,7 @@ #include #include #include +#include #include "ixgbevf.h" diff --git a/drivers/net/myri10ge/myri10ge.c b/drivers/net/myri10ge/myri10ge.c index b1358f7..bf84849 100644 --- a/drivers/net/myri10ge/myri10ge.c +++ b/drivers/net/myri10ge/myri10ge.c @@ -65,6 +65,7 @@ #include #include #include +#include #include #include #include diff --git a/drivers/net/pasemi_mac.c b/drivers/net/pasemi_mac.c index 828e97c..9ec112c 100644 --- a/drivers/net/pasemi_mac.c +++ b/drivers/net/pasemi_mac.c @@ -35,6 +35,7 @@ #include #include #include +#include #include #include diff --git a/drivers/net/pch_gbe/pch_gbe_main.c b/drivers/net/pch_gbe/pch_gbe_main.c index c2476fd..eac3c5c 100644 --- a/drivers/net/pch_gbe/pch_gbe_main.c +++ b/drivers/net/pch_gbe/pch_gbe_main.c @@ -20,6 +20,7 @@ #include "pch_gbe.h" #include "pch_gbe_api.h" +#include #define DRV_VERSION "1.00" const char pch_driver_version[] = DRV_VERSION; diff --git a/drivers/net/qla3xxx.c b/drivers/net/qla3xxx.c index d495a68..771bb61 100644 --- a/drivers/net/qla3xxx.c +++ b/drivers/net/qla3xxx.c @@ -35,6 +35,7 @@ #include #include #include +#include #include "qla3xxx.h" diff --git a/drivers/net/qlge/qlge_main.c b/drivers/net/qlge/qlge_main.c index 6c9d124..930ae45 100644 --- a/drivers/net/qlge/qlge_main.c +++ b/drivers/net/qlge/qlge_main.c @@ -38,6 +38,7 @@ #include #include #include +#include #include #include "qlge.h" diff --git a/drivers/net/r8169.c b/drivers/net/r8169.c index 04f4e60..ef1ce2e 100644 --- a/drivers/net/r8169.c +++ b/drivers/net/r8169.c @@ -26,6 +26,7 @@ #include #include #include +#include #include #include diff --git a/drivers/net/s2io.c b/drivers/net/s2io.c index 89cfee7..a9a5f5e 100644 --- a/drivers/net/s2io.c +++ b/drivers/net/s2io.c @@ -78,6 +78,7 @@ #include #include #include +#include #include #include diff --git a/drivers/net/sb1250-mac.c b/drivers/net/sb1250-mac.c index d96d2f7..68d5042 100644 --- a/drivers/net/sb1250-mac.c +++ b/drivers/net/sb1250-mac.c @@ -43,6 +43,7 @@ #include #include #include +#include #include #include diff --git a/drivers/net/sfc/rx.c b/drivers/net/sfc/rx.c index b7dc891..62e4364 100644 --- a/drivers/net/sfc/rx.c +++ b/drivers/net/sfc/rx.c @@ -14,6 +14,7 @@ #include #include #include +#include #include #include #include "net_driver.h" diff --git a/drivers/net/skge.c b/drivers/net/skge.c index 52a48cb..f4be5c7 100644 --- a/drivers/net/skge.c +++ b/drivers/net/skge.c @@ -44,6 +44,7 @@ #include #include #include +#include #include #include "skge.h" diff --git a/drivers/net/stmmac/stmmac_main.c b/drivers/net/stmmac/stmmac_main.c index e15c4a0..e25e44a 100644 --- a/drivers/net/stmmac/stmmac_main.c +++ b/drivers/net/stmmac/stmmac_main.c @@ -45,6 +45,7 @@ #include #include #include +#include #include "stmmac.h" #define STMMAC_RESOURCE_NAME "stmmaceth" diff --git a/drivers/net/tc35815.c b/drivers/net/tc35815.c index 7ca51ce..4a55a16 100644 --- a/drivers/net/tc35815.c +++ b/drivers/net/tc35815.c @@ -47,6 +47,7 @@ static const char *version = "tc35815.c:v" DRV_VERSION "\n"; #include #include #include +#include #include #include diff --git a/drivers/net/vxge/vxge-main.c b/drivers/net/vxge/vxge-main.c index fc837cf..8ab870a 100644 --- a/drivers/net/vxge/vxge-main.c +++ b/drivers/net/vxge/vxge-main.c @@ -52,6 +52,7 @@ #include #include #include +#include #include "vxge-main.h" #include "vxge-reg.h" diff --git a/drivers/net/vxge/vxge-traffic.c b/drivers/net/vxge/vxge-traffic.c index 2638b8d..f935170 100644 --- a/drivers/net/vxge/vxge-traffic.c +++ b/drivers/net/vxge/vxge-traffic.c @@ -12,6 +12,7 @@ * Copyright(c) 2002-2010 Exar Corp. ******************************************************************************/ #include +#include #include "vxge-traffic.h" #include "vxge-config.h" -- 1.7.4.5