James Chapman
739840d529
ppp: fix segfaults introduced by netdev_priv changes
...
This patch fixes a segfault in ppp_shutdown_interface() and
ppp_destroy_interface() when a PPP connection is closed. I bisected
the problem to the following commit:
commit c8019bf3af
Author: Wang Chen <wangchen@cn.fujitsu.com>
Date: Thu Nov 20 04:24:17 2008 -0800
netdevice ppp: Convert directly reference of netdev->priv
1. Use netdev_priv(dev) to replace dev->priv.
2. Alloc netdev's private data by alloc_netdev().
Signed-off-by: Wang Chen <wangchen@cn.fujitsu.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
The original ppp_generic code treated the netdev and struct ppp as
independent data structures which were freed separately. In moving the
ppp struct into the netdev, it is now possible for the private data to
be freed before the call to ppp_shutdown_interface(), which is bad.
The kfree(ppp) in ppp_destroy_interface() is also wrong; presumably
ppp hasn't worked since the above commit.
The following patch fixes both problems.
Signed-off-by: James Chapman <jchapman@katalix.com>
Reviewed-by: Wang Chen <wangchen@cn.fujitsu.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2008-12-18 19:41:42 -08:00
..
appletalk
net: Rationalise email address: Network Specific Parts
2008-10-13 19:01:08 -07:00
arcnet
drivers/net: replace __FUNCTION__ with __func__
2008-09-24 18:59:00 -04:00
arm
at91_ether: request/free GPIO for PHY interrupt
2008-10-31 00:47:56 -04:00
atl1e
atl1e: fix broken multicast by removing unnecessary crc inversion
2008-11-14 18:18:55 -05:00
atlx
atl2: don't request irq on resume if netif running
2008-11-20 04:18:25 -08:00
bonding
bonding: fix panic when taking bond interface down before removing module
2008-10-31 00:46:12 -04:00
can
chelsio
drivers/net/chelsio/sge.c: remove redundant argument comments
2008-11-23 15:47:24 -08:00
cris
[CRIS] Move header files from include to arch/cris/include.
2008-10-29 17:29:44 +01:00
cxgb3
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband
2008-11-12 10:56:31 -08:00
e1000
e1000: Use device_set_wakeup_enable
2008-11-16 01:35:56 -08:00
e1000e
e1000e: fix double release of mutex
2008-12-11 21:28:11 -08:00
ehea
ehea: Detect 16GB hugepages for firmware restriction
2008-10-27 14:49:55 -04:00
enic
net: fix driver build errors due to missing net/ip6_checksum.h include
2008-10-13 18:41:01 -07:00
fs_enet
fs_enet: fix polling
2008-11-03 15:23:02 -05:00
hamradio
drivers/net: use nr_irqs
2008-10-16 16:52:05 +02:00
ibm_newemac
ibm_newemac: Fix typo in flow control config option
2008-10-27 14:49:58 -04:00
igb
driver/net/*: remove redundant argument comments
2008-11-23 15:46:55 -08:00
irda
IRDA: remove double inclusion of module.h
2008-11-01 21:30:50 -07:00
ixgb
ixgb: fix bug when freeing resources
2008-10-08 16:53:40 -07:00
ixgbe
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
2008-12-02 15:55:05 -08:00
ixp2000
[ARM] Move include/asm-arm/arch-* to arch/arm/*/include/mach
2008-08-07 09:55:48 +01:00
mlx4
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband
2008-12-01 11:01:54 -08:00
myri10ge
myri10ge: fix stop/go ordering even more
2008-11-11 03:49:53 -05:00
netxen
netxen: enable msi-x for quad-gig boards
2008-09-24 18:59:01 -04:00
pcmcia
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
2008-12-02 15:55:05 -08:00
phy
net: kernel BUG at drivers/net/phy/mdio_bus.c:165!
2008-12-17 00:24:13 -08:00
qlge
qlge: Fix MSI/legacy single interrupt bug.
2008-10-22 07:00:49 -04:00
sfc
sfc: Correct address of gPXE boot configuration in EEPROM
2008-11-07 03:33:45 -05:00
skfp
drivers/net/skfp/pmf.c: Use offsetof() macro
2008-09-24 18:48:56 -04:00
tokenring
net: Rationalise email address: Network Specific Parts
2008-10-13 19:01:08 -07:00
tulip
dmfe: check pci_alloc_consistent errors
2008-10-27 14:49:02 -04:00
usb
asix: Fix asix-based cards connecting to 10/100Mbs LAN.
2008-11-20 01:48:46 -08:00
wan
net: delete excess kernel-doc notation
2008-10-30 23:54:35 -07:00
wireless
zd1211rw: use unaligned safe memcmp() in-place of compare_ether_addr()
2008-12-05 09:18:35 -05:00
3c59x.c
drivers/net: use nr_irqs
2008-10-16 16:52:05 +02:00
3c501.c
net: Rationalise email address: Network Specific Parts
2008-10-13 19:01:08 -07:00
3c501.h
3c503.c
3c503.h
3c505.c
drivers/net: replace __FUNCTION__ with __func__
2008-09-24 18:59:00 -04:00
3c505.h
3c507.c
3c509.c
el3_common_init() should be __devinit, not __init
2008-11-07 03:33:44 -05:00
3c515.c
net: Rationalise email address: Network Specific Parts
2008-10-13 19:01:08 -07:00
3c523.c
[netdrvr] Drivers should not set IFF_* flag themselves
2008-08-07 02:23:19 -04:00
3c523.h
3c527.c
[netdrvr] Drivers should not set IFF_* flag themselves
2008-08-07 02:23:19 -04:00
3c527.h
7990.c
7990.h
8139cp.c
8139x: reduce message severity on driver overlap
2008-10-22 07:00:28 -04:00
8139too.c
8139x: reduce message severity on driver overlap
2008-10-22 07:00:28 -04:00
8390.c
drivers/net: coding styles fixes to drivers/net/8390.c
2008-08-07 02:21:05 -04:00
8390.h
8390p.c
drivers/net: coding styles fixes to drivers/net/8390p.c
2008-08-07 02:21:03 -04:00
82596.c
a2065.c
a2065.h
ac3200.c
acenic.c
[netdrvr] remove unnecessary #include
2008-08-14 04:26:38 -04:00
acenic.h
acenic_firmware.h
amd8111e.c
amd8111e: fix dma_free_coherent context
2008-10-31 00:47:43 -04:00
amd8111e.h
apne.c
ariadne.c
ariadne.h
at1700.c
atarilance.c
atp.c
[netdrvr] Drivers should not set IFF_* flag themselves
2008-08-07 02:23:19 -04:00
atp.h
au1000_eth.c
net/au1000_eth.c MDIO namespace fixes
2008-10-12 21:02:19 -07:00
au1000_eth.h
phylib: move to dynamic allocation of struct mii_bus
2008-10-08 16:29:57 -07:00
ax88796.c
AX88796: ax_probe() fix irq assignment
2008-10-22 06:22:08 -04:00
b44.c
b44.h
bfin_mac.c
net/bfin_mac.c MDIO namespace fixes
2008-10-12 21:15:17 -07:00
bfin_mac.h
phylib: move to dynamic allocation of struct mii_bus
2008-10-08 16:29:57 -07:00
bmac.c
bmac.h
bnx2.c
bnx2: Fix bug in bnx2_free_rx_mem().
2008-12-17 19:06:08 -08:00
bnx2.h
bnx2: Add workaround to handle missed MSI.
2008-12-03 00:36:15 -08:00
bnx2_fw.h
bnx2: Update 5706/5708 firmware.
2008-10-09 12:22:38 -07:00
bnx2_fw2.h
bnx2x.h
bnx2x: Accessing un-mapped page
2008-09-03 14:38:00 -07:00
bnx2x_fw_defs.h
bnx2x: Checkpatch compliance
2008-08-13 16:05:38 -07:00
bnx2x_hsi.h
bnx2x: Spelling mistakes
2008-08-13 16:05:37 -07:00
bnx2x_init.h
bnx2x: PCI configuration bug on big-endian
2008-11-03 16:46:19 -08:00
bnx2x_init_values.h
bnx2x: FW Internal Memory structure
2008-08-13 16:01:48 -07:00
bnx2x_link.c
[netdrvr] remove unnecessary #include
2008-08-14 04:26:38 -04:00
bnx2x_link.h
bnx2x: Spelling mistakes
2008-08-13 16:05:37 -07:00
bnx2x_main.c
bnx2x: Version Update
2008-11-03 16:46:58 -08:00
bnx2x_reg.h
bnx2x: Spelling mistakes
2008-08-13 16:05:37 -07:00
bsd_comp.c
cassini.c
cassini: use request_firmware
2008-09-22 19:27:10 -07:00
cassini.h
cassini: use request_firmware
2008-09-22 19:27:10 -07:00
cpmac.c
phylib: move to dynamic allocation of struct mii_bus
2008-10-08 16:29:57 -07:00
cs89x0.c
Remove Andrew Morton's old email accounts
2008-10-16 11:21:32 -07:00
cs89x0.h
de600.c
de600.h
de620.c
[netdrvr] Drivers should not set IFF_* flag themselves
2008-08-07 02:23:19 -04:00
de620.h
declance.c
defxx.c
defxx.h
depca.c
depca.h
dl2k.c
dl2k.h
dm9000.c
netdev: DM9000: remove BLACKFIN hacking in DM9000 netdev driver
2008-10-22 06:22:15 -04:00
dm9000.h
dummy.c
e100.c
e100: fix dma error in direction for mapping
2008-11-16 01:45:24 -08:00
e2100.c
eepro.c
[netdrvr] Drivers should not set IFF_* flag themselves
2008-08-07 02:23:19 -04:00
eepro100.c
eexpress.c
net: Rationalise email address: Network Specific Parts
2008-10-13 19:01:08 -07:00
eexpress.h
enc28j60.c
enc28j60: use netif_rx_ni() to deliver RX packets
2008-12-16 01:48:29 -08:00
enc28j60_hw.h
epic100.c
eql.c
es3210.c
eth16i.c
[netdrvr] Drivers should not set IFF_* flag themselves
2008-08-07 02:23:19 -04:00
ewrk3.c
ewrk3.h
fealnx.c
netdev: uniquify the tx_timeout name
2008-10-08 17:09:54 -07:00
fec.c
fec.h
fec_mpc52xx.c
[netdrvr] fec_mpc52xx: Implement polling, to make netconsole work.
2008-10-22 07:26:49 -04:00
fec_mpc52xx.h
fec_mpc52xx_phy.c
powerpc/mpc5200: Refactor FEC mdio read/write routines
2008-10-15 11:10:00 -06:00
forcedeth.c
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
2008-10-01 06:12:56 -07:00
gianfar.c
gianfar: Fix DMA unmap invocations
2008-11-14 18:18:30 -05:00
gianfar.h
net: don't grab a mutex within a timer context in gianfar
2008-08-27 05:55:19 -04:00
gianfar_ethtool.c
gianfar_mii.c
gianfar: Fix race in TBI/SerDes configuration
2008-10-31 00:59:46 -04:00
gianfar_mii.h
gianfar: Fix race in TBI/SerDes configuration
2008-10-31 00:59:46 -04:00
gianfar_sysfs.c
[netdrvr] remove unnecessary #include
2008-08-14 04:26:38 -04:00
hamachi.c
hp-plus.c
net: hp-plus uses eip_poll
2008-11-25 21:05:51 -08:00
hp.c
hp100.c
hp100.h
hplance.c
hplance.h
hydra.c
ibmlana.c
net: Rationalise email address: Network Specific Parts
2008-10-13 19:01:08 -07:00
ibmlana.h
ibmveth.c
ibmveth: fix bad UDP checksums
2008-08-27 05:36:57 -04:00
ibmveth.h
ifb.c
ioc3-eth.c
ipg.c
net: ipg.c fix bracing on endian swapping
2008-11-19 15:54:38 -08:00
ipg.h
[netdrvr] remove unnecessary #include
2008-08-14 04:26:38 -04:00
isa-skeleton.c
iseries_veth.c
jazzsonic.c
jme.c
net: jme.c rxdesc.flags is __le16, other missing endian swaps
2008-11-19 15:50:59 -08:00
jme.h
jme: Fixed a typo
2008-12-17 00:26:37 -08:00
Kconfig
powerpc/mpc5200: fix bestcomm Kconfig dependencies
2008-11-13 22:37:27 -07:00
korina.c
lance.c
lasi_82596.c
lib8390.c
lib8390: Fix locking in ei_poll (poll controller)
2008-10-08 16:56:48 -07:00
lib82596.c
LICENSE.SRC
lne390.c
loopback.c
net: Really remove all of LOOPBACK_TSO code.
2008-10-31 00:00:33 -07:00
lp486e.c
[netdrvr] Drivers should not set IFF_* flag themselves
2008-08-07 02:23:19 -04:00
mac89x0.c
mac8390.c
macb.c
phylib: move to dynamic allocation of struct mii_bus
2008-10-08 16:29:57 -07:00
macb.h
phylib: move to dynamic allocation of struct mii_bus
2008-10-08 16:29:57 -07:00
mace.c
mace.h
macmace.c
net: Rationalise email address: Network Specific Parts
2008-10-13 19:01:08 -07:00
macsonic.c
macvlan.c
macvlan: don't broadcast PAUSE frames to macvlan devices
2008-11-26 15:30:48 -08:00
Makefile
net/hp-plus: fix link errors
2008-11-21 16:33:25 -08:00
meth.c
drivers/net: replace __FUNCTION__ with __func__
2008-09-24 18:59:00 -04:00
meth.h
mii.c
mipsnet.c
drivers/net: replace __FUNCTION__ with __func__
2008-09-24 18:59:00 -04:00
mv643xx_eth.c
mv643xx_eth: fix recycle check bound
2008-11-20 01:39:52 -08:00
mvme147.c
myri_code.h
myri_sbus.c
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6
2008-10-11 12:39:35 -07:00
myri_sbus.h
myri_sbus: Convert to pure OF driver.
2008-08-29 02:13:32 -07:00
natsemi.c
netdev: uniquify the tx_timeout name
2008-10-08 17:09:54 -07:00
ne-h8300.c
ne.c
ne.c: fix rmmod, platform driver improvements
2008-09-24 20:49:00 -04:00
ne2.c
ne2k-pci.c
ne3210.c
netconsole.c
netx-eth.c
netx-eth: initialize per device spinlock
2008-12-03 22:18:59 -08:00
ni52.c
[netdrvr] Drivers should not set IFF_* flag themselves
2008-08-07 02:23:19 -04:00
ni52.h
ni65.c
ni65.h
ni5010.c
[netdrvr] Drivers should not set IFF_* flag themselves
2008-08-07 02:23:19 -04:00
ni5010.h
niu.c
niu: Bump driver version and release date.
2008-11-14 14:47:29 -08:00
niu.h
NIU: Add Sun CP3260 ATCA blade support
2008-11-14 14:44:08 -08:00
ns83820.c
pasemi_mac.c
pasemi_mac.h
pasemi_mac_ethtool.c
pci-skeleton.c
drivers/net: replace __FUNCTION__ with __func__
2008-09-24 18:59:00 -04:00
pcnet32.c
plip.c
ppp_async.c
ppp_deflate.c
ppp_generic.c
ppp: fix segfaults introduced by netdev_priv changes
2008-12-18 19:41:42 -08:00
ppp_mppe.c
[netdrvr] remove unnecessary #include
2008-08-14 04:26:38 -04:00
ppp_mppe.h
ppp_synctty.c
pppoe.c
pppoe: Fix socket leak.
2008-10-30 23:35:02 -07:00
pppol2tp.c
pppol2tp: Add missing sock_put() in pppol2tp_release()
2008-11-28 22:12:02 -08:00
pppox.c
remove CONFIG_KMOD from drivers
2008-10-17 02:38:35 +11:00
ps3_gelic_net.c
ps3_gelic_net.h
ps3_gelic_wireless.c
ps3_gelic_wireless.h
qla3xxx.c
qla3xxx: Cleanup: Fix link print statements.
2008-11-16 01:38:18 -08:00
qla3xxx.h
r6040.c
r6040: fix wrong assignment in r6040_free_txbufs
2008-09-24 20:48:08 -04:00
r8169.c
r8169: revert "read MAC address from EEPROM on init"
2008-10-26 09:35:05 -07:00
rionet.c
rrunner.c
rrunner.h
s2io-regs.h
s2io.c
drivers/net: replace __FUNCTION__ with __func__
2008-09-24 18:59:00 -04:00
s2io.h
s2io: Fix enabling VLAN tag stripping at driver initialization
2008-09-24 18:49:04 -04:00
sb1000.c
sb1250-mac.c
phylib: move to dynamic allocation of struct mii_bus
2008-10-08 16:29:57 -07:00
sc92031.c
seeq8005.c
seeq8005.h
sgiseeq.c
sgiseeq.h
sh_eth.c
sh: sh_eth: Update to change of mii_bus
2008-11-20 01:28:30 -08:00
sh_eth.h
[netdrvr] sh_eth: Add SH7619 support
2008-08-07 02:20:57 -04:00
sis190.c
sis190: add identifier for Atheros AR8021 PHY
2008-10-22 07:00:34 -04:00
sis900.c
driver/net/*: remove redundant argument comments
2008-11-23 15:46:55 -08:00
sis900.h
skge.c
skge: Fix skge_set_ring_param() losing error return
2008-10-08 16:02:40 -07:00
skge.h
sky2.c
sky2: Fix WOL regression
2008-10-12 20:59:48 -07:00
sky2.h
slhc.c
slip.c
slip.h
smc-mca.c
smc-ultra.c
smc-ultra32.c
smc91x.c
section errors in smc911x/smc91x
2008-11-30 10:03:37 -08:00
smc91x.h
Merge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm
2008-10-11 10:09:45 -07:00
smc911x.c
section errors in smc911x/smc91x
2008-11-30 10:03:37 -08:00
smc911x.h
SMC911x: unbreak PXA builds
2008-10-22 06:22:13 -04:00
smc9194.c
smc9194.h
sni_82596.c
sonic.c
sonic.h
Space.c
spider_net.c
driver/net/*: remove redundant argument comments
2008-11-23 15:46:55 -08:00
spider_net.h
spider_net_ethtool.c
starfire.c
drivers/net: starfire: Fix napi ->poll() weight handling
2008-12-16 15:42:20 -08:00
starfire_firmware.h
starfire_firmware.pl
stnic.c
sun3_82586.c
[netdrvr] Drivers should not set IFF_* flag themselves
2008-08-07 02:23:19 -04:00
sun3_82586.h
sun3lance.c
sunbmac.c
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6
2008-10-11 12:39:35 -07:00
sunbmac.h
sunbmac: Convert to pure OF driver.
2008-08-29 02:13:33 -07:00
sundance.c
sundance: set carrier status on link change events
2008-09-24 18:59:01 -04:00
sungem.c
sungem: improve ethtool output with internal pcs and serdes
2008-12-09 15:39:14 -08:00
sungem.h
sungem_phy.c
sungem_phy.h
sunhme.c
sparc: Annotate of_device_id arrays with const or __initdata.
2008-08-31 01:23:17 -07:00
sunhme.h
sunhme: Convert to pure OF driver.
2008-08-29 02:14:29 -07:00
sunlance.c
sparc: remove CONFIG_SUN4
2008-08-31 20:59:37 -07:00
sunqe.c
sparc: Annotate of_device_id arrays with const or __initdata.
2008-08-31 01:23:17 -07:00
sunqe.h
sunqe: Convert to pure OF driver.
2008-08-29 02:14:43 -07:00
sunvnet.c
sparc64: Apply const or __initdata to vio_device_id[]
2008-09-01 01:48:52 -07:00
sunvnet.h
tc35815.c
net/tc35815.c: fix compilation
2008-10-12 21:01:53 -07:00
tehuti.c
tehuti.h
drivers/net: replace __FUNCTION__ with __func__
2008-09-24 18:59:00 -04:00
tehuti_fw.h
tg3.c
phylib: move to dynamic allocation of struct mii_bus
2008-10-08 16:29:57 -07:00
tg3.h
phylib: move to dynamic allocation of struct mii_bus
2008-10-08 16:29:57 -07:00
tlan.c
tlan: Fix pci memory unmapping
2008-12-16 15:22:41 -08:00
tlan.h
tsi108_eth.c
drivers/net: replace __FUNCTION__ with __func__
2008-09-24 18:59:00 -04:00
tsi108_eth.h
tun.c
saner FASYNC handling on file close
2008-11-01 09:49:46 -07:00
typhoon-firmware.h
typhoon.c
[netdrvr] remove unnecessary #include
2008-08-14 04:26:38 -04:00
typhoon.h
ucc_geth.c
drivers/net: replace __FUNCTION__ with __func__
2008-09-24 18:59:00 -04:00
ucc_geth.h
ucc_geth_ethtool.c
net/ucc_geth: Fix oops in uec_get_ethtool_stats()
2008-11-14 18:18:17 -05:00
ucc_geth_mii.c
phylib: move to dynamic allocation of struct mii_bus
2008-10-08 16:29:57 -07:00
ucc_geth_mii.h
veth.c
via-rhine.c
via-rhine: changed to use netdev_alloc_skb() from dev_alloc_skb
2008-09-03 10:24:04 -04:00
via-velocity.c
via-velocity: enable perfect filtering for multicast packets
2008-11-16 00:39:35 -08:00
via-velocity.h
drivers/net: replace __FUNCTION__ with __func__
2008-09-24 18:59:00 -04:00
virtio_net.c
wd.c
[netdrvr] fix build issue: undefined reference to `NS8390p_init'
2008-08-27 05:17:46 -04:00
xen-netfront.c
get xenbus_driver ->probe() "recognized" by modpost
2008-11-30 10:03:38 -08:00
xtsonic.c
xtensa: Add support for the Sonic Ethernet device for the XT2000 board.
2008-10-21 07:58:06 -07:00
yellowfin.c
znet.c
zorro8390.c