<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/net/ppp, branch v3.4.16</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/drivers/net/ppp?h=v3.4.16</id>
<link rel='self' href='https://git.amat.us/linux/atom/drivers/net/ppp?h=v3.4.16'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2012-10-12T20:38:44Z</updated>
<entry>
<title>pppoe: drop PPPOX_ZOMBIEs in pppoe_release</title>
<updated>2012-10-12T20:38:44Z</updated>
<author>
<name>Xiaodong Xu</name>
<email>stid.smth@gmail.com</email>
</author>
<published>2012-09-22T00:09:32Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=e043257dde697ded17ed99f280cdb7643fdc007a'/>
<id>urn:sha1:e043257dde697ded17ed99f280cdb7643fdc007a</id>
<content type='text'>
[ Upstream commit 2b018d57ff18e5405823e5cb59651a5b4d946d7b ]

When PPPOE is running over a virtual ethernet interface (e.g., a
bonding interface) and the user tries to delete the interface in case
the PPPOE state is ZOMBIE, the kernel will loop forever while
unregistering net_device for the reference count is not decreased to
zero which should have been done with dev_put().

Signed-off-by: Xiaodong Xu &lt;stid.smth@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>pptp: lookup route with the proper net namespace</title>
<updated>2012-10-02T17:29:35Z</updated>
<author>
<name>Gao feng</name>
<email>gaofeng@cn.fujitsu.com</email>
</author>
<published>2012-08-07T00:23:11Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=a348ed02b367a8a8307444724db5c8e96c90ac78'/>
<id>urn:sha1:a348ed02b367a8a8307444724db5c8e96c90ac78</id>
<content type='text'>
[ Upstream commit 08252b32311c3fa84219ad794d640af7399b5485 ]

pptp always use init_net as the net namespace to lookup
route, this will cause route lookup failed in container.

because we already set the correct net namespace to struct
sock in pptp_create,so fix this by using sock_net(sk) to
replace &amp;init_net.

Signed-off-by: Gao feng &lt;gaofeng@cn.fujitsu.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>ppp: Fix race condition with queue start/stop</title>
<updated>2012-04-13T17:06:47Z</updated>
<author>
<name>David Woodhouse</name>
<email>dwmw2@infradead.org</email>
</author>
<published>2012-04-08T10:01:44Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=9a5d2bd99e0dfe9a31b3c160073ac445ba3d773f'/>
<id>urn:sha1:9a5d2bd99e0dfe9a31b3c160073ac445ba3d773f</id>
<content type='text'>
Commit e675f0cc9a872fd152edc0c77acfed19bf28b81e ("ppp: Don't stop and
restart queue on every TX packet") introduced a race condition which
could leave the net queue stopped even when the channel is no longer
busy. By calling netif_stop_queue() from ppp_start_xmit(), based on the
return value from ppp_xmit_process() but *after* all the locks have been
dropped, we could potentially do so *after* the channel has actually
finished transmitting and attempted to re-wake the queue.

Fix this by moving the netif_stop_queue() into ppp_xmit_process() under
the xmit lock. I hadn't done this previously, because it gets called
from other places than ppp_start_xmit(). But I now think it's the better
option. The net queue *should* be stopped if the channel becomes
congested due to writes from pppd, anyway.

Signed-off-by: David Woodhouse &lt;David.Woodhouse@intel.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>ppp: Don't stop and restart queue on every TX packet</title>
<updated>2012-04-03T21:31:38Z</updated>
<author>
<name>David Woodhouse</name>
<email>dwmw2@infradead.org</email>
</author>
<published>2012-03-26T00:03:42Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=e675f0cc9a872fd152edc0c77acfed19bf28b81e'/>
<id>urn:sha1:e675f0cc9a872fd152edc0c77acfed19bf28b81e</id>
<content type='text'>
For every transmitted packet, ppp_start_xmit() will stop the netdev
queue and then, if appropriate, restart it. This causes the TX softirq
to run, entirely gratuitously.

This is "only" a waste of CPU time in the normal case, but it's actively
harmful when the PPP device is a TEQL slave — the wakeup will cause the
offending device to receive the next TX packet from the TEQL queue, when
it *should* have gone to the next slave in the list. We end up seeing
large bursts of packets on just *one* slave device, rather than using
the full available bandwidth over all slaves.

This patch fixes the problem by *not* unconditionally stopping the queue
in ppp_start_xmit(). It adds a return value from ppp_xmit_process()
which indicates whether the queue should be stopped or not.

It *doesn't* remove the call to netif_wake_queue() from
ppp_xmit_process(), because other code paths (especially from
ppp_output_wakeup()) need it there and it's messy to push it out to the
other callers to do it based on the return value. So we leave it in
place — it's a no-op in the case where the queue wasn't stopped, so it's
harmless in the TX path.

Signed-off-by: David Woodhouse &lt;David.Woodhouse@intel.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>ppp: Replace uses of &lt;linux/if_ppp.h&gt; with &lt;linux/ppp-ioctl.h&gt;</title>
<updated>2012-03-05T01:41:38Z</updated>
<author>
<name>Paul Mackerras</name>
<email>paulus@samba.org</email>
</author>
<published>2012-03-04T12:56:55Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=4b32da2bcf1de2b7a196a0e48389d231b4472c36'/>
<id>urn:sha1:4b32da2bcf1de2b7a196a0e48389d231b4472c36</id>
<content type='text'>
Since all that include/linux/if_ppp.h does is #include &lt;linux/ppp-ioctl.h&gt;,
this replaces the occurrences of #include &lt;linux/if_ppp.h&gt; with
#include &lt;linux/ppp-ioctl.h&gt;.

It also corrects an error in Documentation/networking/l2tp.txt, where
it referenced include/linux/if_ppp.h as the source of some definitions
that are actually now defined in include/linux/if_pppol2tp.h.

Signed-off-by: Paul Mackerras &lt;paulus@samba.org&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>ppp: Move ioctl definitions from if_ppp.h to new ppp-ioctl.h</title>
<updated>2012-03-05T01:41:38Z</updated>
<author>
<name>Paul Mackerras</name>
<email>paulus@samba.org</email>
</author>
<published>2012-03-04T12:56:04Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=bf7daebb9fba540cb8864f435f153678b3e5c171'/>
<id>urn:sha1:bf7daebb9fba540cb8864f435f153678b3e5c171</id>
<content type='text'>
This moves the definitions of the ioctls, constants and structures
relating to the ppp_generic interface to userspace out from if_ppp.h
to a new file, ppp-ioctl.h.  The new file has my copyright since I
designed and implemented the ppp_generic interface in the late 1990s.
None of the contents of this file comes from the original if_ppp.h
published by Carnegie Mellon University.

Of the remainder of if_ppp.h, only the PPP_MTU definition was being
used, and this replaces the uses of it with PPP_MRU (which is identical).
Therefore, this replaces the entire file with the single line

#include &lt;linux/ppp-ioctl.h&gt;

which clearly doesn't contain any CMU code.  Thus I have removed the
CMU copyright notice with its problematic advertising clause, and in
fact since it's only one trivial line I have not added any other
copyright notice.

Signed-off-by: Paul Mackerras &lt;paulus@samba.org&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>ppp: Change copyright notices from ANU to me</title>
<updated>2012-03-05T01:41:38Z</updated>
<author>
<name>Paul Mackerras</name>
<email>paulus@samba.org</email>
</author>
<published>2012-03-04T12:54:54Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=784db3f06228da81627d23052a6d2ecc38db001a'/>
<id>urn:sha1:784db3f06228da81627d23052a6d2ecc38db001a</id>
<content type='text'>
This changes the copyright notices on the PPP code that I developed
in the late 1990s from being copyright The Australian National
University to copyright Paul Mackerras.  I can do this as I have an
acknowledgement in writing from the Head of the Computer Science
Department at ANU (where I worked then) that ANU does not claim any
intellectual property in this code.

While I'm at it, change the copyright notice from BSD-style to
GNU GPL like the rest of the kernel.

Signed-off-by: Paul Mackerras &lt;paulus@samba.org&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net</title>
<updated>2012-02-27T02:55:51Z</updated>
<author>
<name>David S. Miller</name>
<email>davem@davemloft.net</email>
</author>
<published>2012-02-27T02:55:51Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=ff4783ce78c08d2990126ce1874250ae8e72bbd2'/>
<id>urn:sha1:ff4783ce78c08d2990126ce1874250ae8e72bbd2</id>
<content type='text'>
Conflicts:
	drivers/net/ethernet/sfc/rx.c

Overlapping changes in drivers/net/ethernet/sfc/rx.c, one to change
the rx_buf-&gt;is_page boolean into a set of u16 flags, and another to
adjust how -&gt;ip_summed is initialized.

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>ppp: fix 'ppp_mp_reconstruct bad seq' errors</title>
<updated>2012-02-24T22:53:21Z</updated>
<author>
<name>Ben McKeegan</name>
<email>ben@netservers.co.uk</email>
</author>
<published>2012-02-24T06:33:56Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=8a49ad6e89feb5015e77ce6efeb2678947117e20'/>
<id>urn:sha1:8a49ad6e89feb5015e77ce6efeb2678947117e20</id>
<content type='text'>
This patch fixes a (mostly cosmetic) bug introduced by the patch
'ppp: Use SKB queue abstraction interfaces in fragment processing'
found here: http://www.spinics.net/lists/netdev/msg153312.html

The above patch rewrote and moved the code responsible for cleaning
up discarded fragments but the new code does not catch every case
where this is necessary.  This results in some discarded fragments
remaining in the queue, and triggering a 'bad seq' error on the
subsequent call to ppp_mp_reconstruct.  Fragments are discarded
whenever other fragments of the same frame have been lost.
This can generate a lot of unwanted and misleading log messages.

This patch also adds additional detail to the debug logging to
make it clearer which fragments were lost and which other fragments
were discarded as a result of losses. (Run pppd with 'kdebug 1'
option to enable debug logging.)

Signed-off-by: Ben McKeegan &lt;ben@netservers.co.uk&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>ppp: fix truesize underestimation</title>
<updated>2012-02-13T21:04:40Z</updated>
<author>
<name>Eric Dumazet</name>
<email>eric.dumazet@gmail.com</email>
</author>
<published>2012-02-13T04:23:24Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=19c6c8f58b5840fd4757233b4849f42687d2ef3a'/>
<id>urn:sha1:19c6c8f58b5840fd4757233b4849f42687d2ef3a</id>
<content type='text'>
When building frag_list, head truesize should be sum of all frag
truesize.

Signed-off-by: Eric Dumazet &lt;eric.dumazet@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
</feed>
