From: Wang Chen <wangchen@cn.fujitsu.com>
To: "David S. Miller" <davem@davemloft.net>
Cc: Jeff Garzik <jgarzik@pobox.com>, NETDEV <netdev@vger.kernel.org>
Subject: [V#2 PATCH 0/18] netdevice: Fix directly reference of netdev->priv
Date: Fri, 05 Sep 2008 11:06:01 +0800 [thread overview]
Message-ID: <48C0A219.2030004@cn.fujitsu.com> (raw)
We have some reasons to kill netdev->priv:
1. netdev->priv is equal to netdev_priv().
2. netdev_priv() wraps the calculation of netdev->priv's offset, obviously
netdev_priv() is more flexible than netdev->priv.
But we cann't kill netdev->priv now, because so many drivers reference to it
directly.
OK, becasue Dave S. Miller said, "every direct netdev->priv usage is a bug",
and I want to kill netdev->priv later, I decided to convert all the direct
reference of netdev->priv first.
- Patch 1-4 are the safe convert which I believe will not make "after converted " worse
than "before converted".
Originally, I put this kind of convert in one mail, but it's too big for vger.
So I split it to 4 parts and make every part smaller than 100,000 bytes,
which is max size allowed by vger.
- Patches 5-18 need comments. Since the value of netdev->priv is changed in drivers
and I use netdev->ml_priv to replace netdev->priv.
Below is diffstat:
---
drivers/net/3c501.c | 2
drivers/net/3c505.c | 45 +++----
drivers/net/3c523.c | 29 ++--
drivers/net/3c59x.c | 4
drivers/net/82596.c | 29 ++--
drivers/net/acenic.c | 2
drivers/net/appletalk/ipddp.c | 6 -
drivers/net/appletalk/ltpc.c | 12 +-
drivers/net/arcnet/arc-rawmode.c | 4
drivers/net/arcnet/arc-rimi.c | 16 +-
drivers/net/arcnet/arcnet.c | 32 ++---
drivers/net/arcnet/capmode.c | 6 -
drivers/net/arcnet/com20020-isa.c | 4
drivers/net/arcnet/com20020-pci.c | 2
drivers/net/arcnet/com20020.c | 10 -
drivers/net/arcnet/com90io.c | 4
drivers/net/arcnet/com90xx.c | 10 -
drivers/net/arcnet/rfc1051.c | 8 -
drivers/net/arcnet/rfc1201.c | 12 +-
drivers/net/atarilance.c | 34 ++---
drivers/net/atl1e/atl1e_main.c | 6 -
drivers/net/atp.c | 3
drivers/net/au1000_eth.c | 48 ++++----
drivers/net/bonding/bond_3ad.c | 7 -
drivers/net/bonding/bond_alb.c | 6 -
drivers/net/bonding/bond_main.c | 58 ++++-----
drivers/net/bonding/bond_sysfs.c | 2
drivers/net/bonding/bonding.h | 4
drivers/net/chelsio/cxgb2.c | 60 +++++-----
drivers/net/chelsio/sge.c | 3
drivers/net/declance.c | 2
drivers/net/depca.c | 40 +++---
drivers/net/dm9000.c | 32 ++---
drivers/net/e1000/e1000_main.c | 9 -
drivers/net/e1000e/netdev.c | 3
drivers/net/eepro.c | 4
drivers/net/epic100.c | 42 +++----
drivers/net/eth16i.c | 2
drivers/net/fec.c | 2
drivers/net/hamradio/dmascc.c | 12 +-
drivers/net/hamradio/scc.c | 13 +-
drivers/net/ibmveth.c | 34 ++---
drivers/net/igb/igb_ethtool.c | 4
drivers/net/irda/ali-ircc.c | 16 +-
drivers/net/irda/donauboe.c | 8 -
drivers/net/irda/irda-usb.c | 14 +-
drivers/net/irda/nsc-ircc.c | 16 +-
drivers/net/irda/sa1100_ir.c | 26 ++--
drivers/net/irda/sir_dev.c | 12 +-
drivers/net/irda/via-ircc.c | 16 +-
drivers/net/irda/vlsi_ir.c | 36 +++---
drivers/net/irda/w83977af_ir.c | 14 +-
drivers/net/iseries_veth.c | 14 +-
drivers/net/ixgbe/ixgbe_ethtool.c | 6 -
drivers/net/ixgbe/ixgbe_main.c | 6 -
drivers/net/lance.c | 27 ++--
drivers/net/lp486e.c | 28 ++--
drivers/net/mace.c | 29 ++--
drivers/net/mv643xx_eth.c | 2
drivers/net/mvme147.c | 4
drivers/net/myri_sbus.c | 12 +-
drivers/net/ne2k-pci.c | 2
drivers/net/netxen/netxen_nic_hw.c | 2
drivers/net/netxen/netxen_nic_main.c | 4
drivers/net/ni5010.c | 2
drivers/net/ni52.c | 36 +++---
drivers/net/ni65.c | 33 ++---
drivers/net/pasemi_mac_ethtool.c | 4
drivers/net/pcmcia/com20020_cs.c | 6 -
drivers/net/plip.c | 8 -
drivers/net/ppp_generic.c | 7 -
drivers/net/rionet.c | 26 ++--
drivers/net/s2io.c | 79 ++++++-------
drivers/net/sgiseeq.c | 2
drivers/net/sis900.c | 64 +++++-----
drivers/net/smc9194.c | 6 -
drivers/net/sonic.h | 20 +--
drivers/net/spider_net_ethtool.c | 8 -
drivers/net/sun3_82586.c | 38 +++---
drivers/net/sunbmac.c | 18 +--
drivers/net/sungem.c | 52 ++++----
drivers/net/sunhme.c | 26 ++--
drivers/net/sunqe.c | 14 +-
drivers/net/tehuti.c | 38 +++---
drivers/net/tokenring/tms380tr.c | 14 +-
drivers/net/tulip/de2104x.c | 44 +++----
drivers/net/tulip/eeprom.c | 2
drivers/net/tulip/uli526x.c | 2
drivers/net/typhoon.c | 2
drivers/net/usb/mcs7830.c | 4
drivers/net/virtio_net.c | 3
drivers/net/wan/cycx_x25.c | 43 +++----
drivers/net/wan/dlci.c | 36 +++---
drivers/net/wan/hdlc_fr.c | 10 -
drivers/net/wan/pc300_drv.c | 18 +--
drivers/net/wan/sbni.c | 100 ++++++++--------
drivers/net/wan/sdla.c | 48 ++++----
drivers/net/wan/x25_asy.c | 28 ++--
drivers/net/wireless/airo.c | 172 ++++++++++++++---------------
drivers/net/wireless/libertas/ethtool.c | 12 +-
drivers/net/wireless/libertas/main.c | 37 +++---
drivers/net/wireless/libertas/persistcfg.c | 16 +-
drivers/net/wireless/libertas/scan.c | 4
drivers/net/wireless/libertas/tx.c | 3
drivers/net/wireless/libertas/wext.c | 72 ++++++------
drivers/net/wireless/rndis_wlan.c | 62 +++++-----
drivers/net/wireless/wavelan.c | 88 +++++++-------
drivers/net/wireless/zd1201.c | 65 +++++-----
drivers/net/znet.c | 22 +--
include/linux/hdlc.h | 3
net/appletalk/ddp.c | 2
net/atm/br2684.c | 2
net/atm/lec.c | 34 +++--
net/atm/mpc.c | 10 -
net/bluetooth/bnep/core.c | 2
net/bluetooth/bnep/netdev.c | 6 -
net/bridge/br_if.c | 2
net/bridge/br_sysfs_br.c | 2
net/irda/irlan/irlan_common.c | 3
net/wanrouter/wanmain.c | 24 ++--
120 files changed, 1221 insertions(+), 1224 deletions(-)
next reply other threads:[~2008-09-05 3:08 UTC|newest]
Thread overview: 40+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-09-05 3:06 Wang Chen [this message]
2008-09-05 3:09 ` [PATCH 01/18] netdevice: safe convert to netdev_priv() #part-1 Wang Chen
2008-09-05 3:10 ` [PATCH 02/18] netdevice: safe convert to netdev_priv() #part-2 Wang Chen
2008-09-05 3:11 ` [PATCH 03/18] netdevice: safe convert to netdev_priv() #part-3 Wang Chen
2008-09-05 13:58 ` David Dillow
2008-09-05 3:11 ` [PATCH 04/18] netdevice: safe convert to netdev_priv() #part-4 Wang Chen
2008-09-05 3:14 ` [PATCH 05/18] netdevice 82596: Convert directly reference of netdev->priv to netdev->ml_priv Wang Chen
2008-09-05 3:15 ` [PATCH 06/18] netdevice chelsio: " Wang Chen
2008-09-05 3:17 ` [PATCH 07/18] netdevice hamradio: " Wang Chen
2008-09-05 3:19 ` [PATCH 08/18] netdevice lance: " Wang Chen
2008-09-05 3:20 ` [PATCH 09/18] netdevice ni65: " Wang Chen
2008-09-05 3:21 ` [PATCH 10/18] netdevice ppp: " Wang Chen
2008-09-05 3:23 ` [PATCH 11/18] netdevice cycx_x25: " Wang Chen
2008-09-05 3:24 ` [PATCH 12/18] netdevice hdlc: " Wang Chen
2008-09-05 16:38 ` Krzysztof Halasa
2008-09-05 3:25 ` [PATCH 13/18] netdevice wanrouter: " Wang Chen
2008-09-05 3:27 ` [PATCH 14/18] netdevice airo: " Wang Chen
2008-09-05 12:50 ` John W. Linville
[not found] ` <20080905125036.GA3027-2XuSBdqkA4R54TAoqtyWWQ@public.gmane.org>
2008-09-05 17:06 ` Dan Williams
[not found] ` <1220634383.6430.14.camel-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2008-09-06 9:37 ` Wang Chen
[not found] ` <48C24F66.1090803-BthXqXjhjHXQFUHtdCDX3A@public.gmane.org>
2008-09-26 8:37 ` Wang Chen
[not found] ` <48C0A219.2030004-BthXqXjhjHXQFUHtdCDX3A@public.gmane.org>
2008-09-05 3:28 ` [PATCH 15/18] netdevice libertas: Fix directly reference of netdev->priv Wang Chen
[not found] ` <48C0A76F.8090706-BthXqXjhjHXQFUHtdCDX3A@public.gmane.org>
2008-09-05 17:07 ` Dan Williams
[not found] ` <1220634465.6430.16.camel-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2008-10-31 19:17 ` John W. Linville
2008-09-05 3:29 ` [PATCH 16/18] netdevice zd1201: Convert directly reference of netdev->priv to netdev->ml_priv Wang Chen
2008-09-05 12:56 ` John W. Linville
[not found] ` <48C0A7A0.9030200-BthXqXjhjHXQFUHtdCDX3A@public.gmane.org>
2008-10-31 18:22 ` John W. Linville
[not found] ` <20081031182207.GD4310-2XuSBdqkA4R54TAoqtyWWQ@public.gmane.org>
2008-10-31 18:48 ` [PATCH] netdevice zd1201: Convert directly reference of netdev->priv to netdev_priv() John W. Linville
[not found] ` <1225478896-28987-1-git-send-email-linville-2XuSBdqkA4R54TAoqtyWWQ@public.gmane.org>
2008-10-31 19:00 ` Stephen Hemminger
2008-11-03 2:06 ` Wang Chen
2008-12-18 6:53 ` [PATCH -next] netdevice zd1201: Use after free Wang Chen
2008-12-18 13:58 ` John W. Linville
[not found] ` <4949F36B.7080707-BthXqXjhjHXQFUHtdCDX3A@public.gmane.org>
2008-12-19 3:37 ` David Miller
2008-09-05 3:30 ` [PATCH 17/18] netdevice pc300: Convert directly reference of netdev->priv to netdev->ml_priv Wang Chen
2008-09-09 13:23 ` Krzysztof Halasa
2008-09-05 3:31 ` [PATCH 18/18] netdevice sbni: Convert directly reference of netdev->priv to netdev_priv() Wang Chen
2008-09-05 3:42 ` [V#2 PATCH 0/18] netdevice: Fix directly reference of netdev->priv Wang Chen
2008-09-20 8:17 ` Wang Chen
2008-09-20 10:37 ` David Miller
2008-09-22 7:04 ` Wang Chen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=48C0A219.2030004@cn.fujitsu.com \
--to=wangchen@cn.fujitsu.com \
--cc=davem@davemloft.net \
--cc=jgarzik@pobox.com \
--cc=netdev@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).