linux/drivers/net
Simon Farnsworth 287f3a943f pppoe: Use workqueue to die properly when a PADT is received
When a PADT frame is received, the socket may not be in a good state to
close down the PPP interface. The current implementation handles this by
simply blocking all further PPP traffic, and hoping that the lack of traffic
will trigger the user to investigate.

Use schedule_work to get to a process context from which we clear down the
PPP interface, in a fashion analogous to hangup on a TTY-based PPP
interface. This causes pppd to disconnect immediately, and allows tools to
take immediate corrective action.

Note that pppd's rp_pppoe.so plugin has code in it to disable the session
when it disconnects; however, as a consequence of this patch, the session is
already disabled before rp_pppoe.so is asked to disable the session. The
result is a harmless error message:

Failed to disconnect PPPoE socket: 114 Operation already in progress

This message is safe to ignore, as long as the error is 114 Operation
already in progress; in that specific case, it means that the PPPoE session
has already been disabled before pppd tried to disable it.

Signed-off-by: Simon Farnsworth <simon@farnz.org.uk>
Tested-by: Dan Williams <dcbw@redhat.com>
Tested-by: Christoph Schulz <develop@kristov.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
2015-03-02 00:17:31 -05:00
..
appletalk
arcnet com20020-pci: add support for eae single card 2015-02-15 08:21:34 -08:00
bonding bonding: Implement port churn-machine (AD standard 43.4.17). 2015-02-24 16:05:48 -05:00
caif caif: remove wrong dev_net_set() call 2015-01-29 14:20:02 -08:00
can can: kvaser_usb: Ignore spurious error events after a busoff 2015-02-04 14:07:03 +01:00
cris
dsa net: dsa: bcm_sf2: add HW bridging support 2015-02-25 17:03:38 -05:00
ethernet bnx2: disable toggling of rxvlan if necessary 2015-03-01 23:25:51 -05:00
fddi net: fddi: skfp: smt.c: Remove unused function 2015-01-02 16:36:07 -05:00
hamradio
hippi
hyperv hyperv: Implement netvsc_get_channels() ethool op 2015-02-28 16:51:36 -05:00
ieee802154 ieee802154: cc2520: Fix space before , coding style issue 2015-02-02 06:09:35 +01:00
ipvlan ipvlan: add a missing __percpu pcpu_stats 2015-02-11 20:03:23 -08:00
irda irda: vlsi_ir: Replace timeval with ktime_t 2015-01-11 21:39:40 -05:00
phy net: phy: micrel: disable NAND-tree for KSZ8021, KSZ8031, KSZ8051, KSZ8081 2015-02-14 20:30:55 -08:00
plip
ppp pppoe: Use workqueue to die properly when a PADT is received 2015-03-02 00:17:31 -05:00
slip
team team: allow TSO being set on master 2015-02-27 17:11:28 -05:00
usb usbnet: Fix tx_packets stat for FLAG_MULTI_FRAME drivers 2015-02-28 14:27:21 -05:00
vmxnet3 Driver: Vmxnet3: Copy TCP header to mapped frame for IPv6 packets 2015-03-01 23:03:42 -05:00
wan net: wan: add missing virt_to_bus dependencies 2015-01-29 15:08:21 -08:00
wimax
wireless Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2015-02-17 17:41:19 -08:00
xen-netback Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2015-02-10 20:01:30 -08:00
dummy.c dummy: use MODULE_VERSION 2014-12-09 21:51:06 -05:00
eql.c
ifb.c
Kconfig rcu: Make SRCU optional by using CONFIG_SRCU 2015-01-06 11:04:29 -08:00
LICENSE.SRC
loopback.c
macvlan.c macvlan: advertise link netns via netlink 2015-01-23 17:51:15 -08:00
macvtap.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2015-02-05 14:33:28 -08:00
Makefile ipvlan: Initial check-in of the IPVLAN driver. 2014-11-24 15:29:18 -05:00
mdio.c
mii.c mii: Handle link state changes for forced modes in mii_check_media() 2015-01-19 15:43:42 -05:00
netconsole.c
nlmon.c
ntb_netdev.c
rionet.c
sb1000.c
Space.c
sungem_phy.c
tun.c net: rfs: add hash collision detection 2015-02-08 16:53:57 -08:00
veth.c veth: advertise link netns via netlink 2015-01-23 17:51:15 -08:00
virtio_net.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2015-02-05 14:33:28 -08:00
vxlan.c vxlan: Use checksum partial with remote checksum offload 2015-02-11 15:12:13 -08:00
xen-netfront.c xen-netfront: Use static attribute groups for sysfs entries 2015-02-05 00:31:12 -08:00