<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/net/ipv6/sit.c, branch linux-5.14.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-5.14.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-5.14.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2021-06-28T19:44:17Z</updated>
<entry>
<title>sit: allow redirecting ip6ip, ipip and mplsip packets to eth devices</title>
<updated>2021-06-28T19:44:17Z</updated>
<author>
<name>Guillaume Nault</name>
</author>
<published>2021-06-25T13:33:08Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=730eed2772e740c30229d03e3d578cc00a5ae304'/>
<id>urn:sha1:730eed2772e740c30229d03e3d578cc00a5ae304</id>
<content type='text'>
Even though sit transports L3 data (IPv6, IPv4 or MPLS) packets, it
needs to reset the mac_header pointer, so that other parts of the stack
don't mistakenly access the outer header after the packet has been
decapsulated. There are two rx handlers to modify: ipip6_rcv() for the
ip6ip mode and sit_tunnel_rcv() which is used to re-implement the ipip
and mplsip modes of ipip.ko.

This allows to push an Ethernet header to sit packets and redirect
them to an Ethernet device:

  $ tc filter add dev sit0 ingress matchall          \
      action vlan push_eth dst_mac 00:00:5e:00:53:01 \
                           src_mac 00:00:5e:00:53:00 \
      action mirred egress redirect dev eth0

Without this patch, push_eth refuses to add an ethernet header because
the skb appears to already have a MAC header.

Signed-off-by: Guillaume Nault &lt;gnault@redhat.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>Merge ra.kernel.org:/pub/scm/linux/kernel/git/netdev/net</title>
<updated>2021-06-07T20:01:52Z</updated>
<author>
<name>David S. Miller</name>
</author>
<published>2021-06-07T20:01:52Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=126285651b7f95282a0afe3a1b0221419b31d989'/>
<id>urn:sha1:126285651b7f95282a0afe3a1b0221419b31d989</id>
<content type='text'>
Bug fixes overlapping feature additions and refactoring, mostly.

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>sit: set name of device back to struct parms</title>
<updated>2021-06-03T20:57:36Z</updated>
<author>
<name>zhang kai</name>
</author>
<published>2021-06-02T10:36:26Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=261ba78cc364ad595cead555a7d2a61471eac165'/>
<id>urn:sha1:261ba78cc364ad595cead555a7d2a61471eac165</id>
<content type='text'>
addrconf_set_sit_dstaddr will use parms-&gt;name.

Signed-off-by: zhang kai &lt;zhangkaiheb@126.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>sit: replace 68 with micro IPV4_MIN_MTU</title>
<updated>2021-06-02T20:28:05Z</updated>
<author>
<name>zhang kai</name>
</author>
<published>2021-06-02T01:50:39Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=7f0e869c4e3902abc44ae6a9c9fc4fba6867408e'/>
<id>urn:sha1:7f0e869c4e3902abc44ae6a9c9fc4fba6867408e</id>
<content type='text'>
Use meaningfull micro IPV4_MIN_MTU

Signed-off-by: zhang kai &lt;zhangkaiheb@126.com&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/netdev/net</title>
<updated>2021-04-17T18:08:07Z</updated>
<author>
<name>Jakub Kicinski</name>
</author>
<published>2021-04-17T17:42:54Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=8203c7ce4ef2840929d38b447b4ccd384727f92b'/>
<id>urn:sha1:8203c7ce4ef2840929d38b447b4ccd384727f92b</id>
<content type='text'>
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
 - keep the ZC code, drop the code related to reinit
net/bridge/netfilter/ebtables.c
 - fix build after move to net_generic

Signed-off-by: Jakub Kicinski &lt;kuba@kernel.org&gt;
</content>
</entry>
<entry>
<title>net: sit: Unregister catch-all devices</title>
<updated>2021-04-13T21:31:52Z</updated>
<author>
<name>Hristo Venev</name>
</author>
<published>2021-04-12T17:41:16Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=610f8c0fc8d46e0933955ce13af3d64484a4630a'/>
<id>urn:sha1:610f8c0fc8d46e0933955ce13af3d64484a4630a</id>
<content type='text'>
A sit interface created without a local or a remote address is linked
into the `sit_net::tunnels_wc` list of its original namespace. When
deleting a network namespace, delete the devices that have been moved.

The following script triggers a null pointer dereference if devices
linked in a deleted `sit_net` remain:

    for i in `seq 1 30`; do
        ip netns add ns-test
        ip netns exec ns-test ip link add dev veth0 type veth peer veth1
        ip netns exec ns-test ip link add dev sit$i type sit dev veth0
        ip netns exec ns-test ip link set dev sit$i netns $$
        ip netns del ns-test
    done
    for i in `seq 1 30`; do
        ip link del dev sit$i
    done

Fixes: 5e6700b3bf98f ("sit: add support of x-netns")
Signed-off-by: Hristo Venev &lt;hristo@venev.name&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>ipv6: remove extra dev_hold() for fallback tunnels</title>
<updated>2021-03-31T21:53:11Z</updated>
<author>
<name>Eric Dumazet</name>
</author>
<published>2021-03-31T21:38:11Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=0d7a7b2014b1a499a0fe24c9f3063d7856b5aaaf'/>
<id>urn:sha1:0d7a7b2014b1a499a0fe24c9f3063d7856b5aaaf</id>
<content type='text'>
My previous commits added a dev_hold() in tunnels ndo_init(),
but forgot to remove it from special functions setting up fallback tunnels.

Fallback tunnels do call their respective ndo_init()

This leads to various reports like :

unregister_netdevice: waiting for ip6gre0 to become free. Usage count = 2

Fixes: 48bb5697269a ("ip6_tunnel: sit: proper dev_{hold|put} in ndo_[un]init methods")
Fixes: 6289a98f0817 ("sit: proper dev_{hold|put} in ndo_[un]init methods")
Fixes: 40cb881b5aaa ("ip6_vti: proper dev_{hold|put} in ndo_[un]init methods")
Fixes: 7f700334be9a ("ip6_gre: proper dev_{hold|put} in ndo_[un]init methods")
Signed-off-by: Eric Dumazet &lt;edumazet@google.com&gt;
Reported-by: syzbot &lt;syzkaller@googlegroups.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>sit: proper dev_{hold|put} in ndo_[un]init methods</title>
<updated>2021-03-29T23:31:51Z</updated>
<author>
<name>Eric Dumazet</name>
</author>
<published>2021-03-29T19:25:22Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=6289a98f0817a4a457750d6345e754838eae9439'/>
<id>urn:sha1:6289a98f0817a4a457750d6345e754838eae9439</id>
<content type='text'>
After adopting CONFIG_PCPU_DEV_REFCNT=n option, syzbot was able to trigger
a warning [1]

Issue here is that:

- all dev_put() should be paired with a corresponding prior dev_hold().

- A driver doing a dev_put() in its ndo_uninit() MUST also
  do a dev_hold() in its ndo_init(), only when ndo_init()
  is returning 0.

Otherwise, register_netdevice() would call ndo_uninit()
in its error path and release a refcount too soon.

Fixes: 919067cc845f ("net: add CONFIG_PCPU_DEV_REFCNT")
Signed-off-by: Eric Dumazet &lt;edumazet@google.com&gt;
Reported-by: syzbot &lt;syzkaller@googlegroups.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>sit: use min</title>
<updated>2021-03-29T00:58:39Z</updated>
<author>
<name>kernel test robot</name>
</author>
<published>2021-03-27T09:29:32Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=284fda1eff8a8b27d2cafd7dc8fb423d13720f21'/>
<id>urn:sha1:284fda1eff8a8b27d2cafd7dc8fb423d13720f21</id>
<content type='text'>
Opportunity for min()

Generated by: scripts/coccinelle/misc/minmax.cocci

CC: Denis Efremov &lt;efremov@linux.com&gt;
Reported-by: kernel test robot &lt;lkp@intel.com&gt;
Signed-off-by: kernel test robot &lt;lkp@intel.com&gt;
Reviewed-by: David Ahern &lt;dsahern@kernel.org&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>net: always use icmp{,v6}_ndo_send from ndo_start_xmit</title>
<updated>2021-03-01T21:11:35Z</updated>
<author>
<name>Jason A. Donenfeld</name>
</author>
<published>2021-02-27T00:40:19Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=4372339efc06bc2a796f4cc9d0a7a929dfda4967'/>
<id>urn:sha1:4372339efc06bc2a796f4cc9d0a7a929dfda4967</id>
<content type='text'>
There were a few remaining tunnel drivers that didn't receive the prior
conversion to icmp{,v6}_ndo_send. Knowing now that this could lead to
memory corrution (see ee576c47db60 ("net: icmp: pass zeroed opts from
icmp{,v6}_ndo_send before sending") for details), there's even more
imperative to have these all converted. So this commit goes through the
remaining cases that I could find and does a boring translation to the
ndo variety.

The Fixes: line below is the merge that originally added icmp{,v6}_
ndo_send and converted the first batch of icmp{,v6}_send users. The
rationale then for the change applies equally to this patch. It's just
that these drivers were left out of the initial conversion because these
network devices are hiding in net/ rather than in drivers/net/.

Cc: Florian Westphal &lt;fw@strlen.de&gt;
Cc: Willem de Bruijn &lt;willemb@google.com&gt;
Cc: David S. Miller &lt;davem@davemloft.net&gt;
Cc: Hideaki YOSHIFUJI &lt;yoshfuji@linux-ipv6.org&gt;
Cc: David Ahern &lt;dsahern@kernel.org&gt;
Cc: Jakub Kicinski &lt;kuba@kernel.org&gt;
Cc: Steffen Klassert &lt;steffen.klassert@secunet.com&gt;
Fixes: 803381f9f117 ("Merge branch 'icmp-account-for-NAT-when-sending-icmps-from-ndo-layer'")
Signed-off-by: Jason A. Donenfeld &lt;Jason@zx2c4.com&gt;
Acked-by: Willem de Bruijn &lt;willemb@google.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
</feed>
