From: Simon Farnsworth <simon@xxxxxxxxxxxx> Date: Sun, 1 Mar 2015 10:54:39 +0000 > 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@xxxxxxxxxxxx> > Tested-by: Dan Williams <dcbw@xxxxxxxxxx> > Tested-by: Christoph Schulz <develop@xxxxxxxxxx> Applied, thanks Simon. -- To unsubscribe from this list: send the line "unsubscribe linux-ppp" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html