Skip to content

Commit f85c159

Browse files
committed
Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net
Pull networking fixes from David Miller: 1) Fix sk_psock reference count leak on receive, from Xiyu Yang. 2) CONFIG_HNS should be invisible, from Geert Uytterhoeven. 3) Don't allow locking route MTUs in ipv6, RFCs actually forbid this, from Maciej Żenczykowski. 4) ipv4 route redirect backoff wasn't actually enforced, from Paolo Abeni. 5) Fix netprio cgroup v2 leak, from Zefan Li. 6) Fix infinite loop on rmmod in conntrack, from Florian Westphal. 7) Fix tcp SO_RCVLOWAT hangs, from Eric Dumazet. 8) Various bpf probe handling fixes, from Daniel Borkmann. * git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (68 commits) selftests: mptcp: pm: rm the right tmp file dpaa2-eth: properly handle buffer size restrictions bpf: Restrict bpf_trace_printk()'s %s usage and add %pks, %pus specifier bpf: Add bpf_probe_read_{user, kernel}_str() to do_refine_retval_range bpf: Restrict bpf_probe_read{, str}() only to archs where they work MAINTAINERS: Mark networking drivers as Maintained. ipmr: Add lockdep expression to ipmr_for_each_table macro ipmr: Fix RCU list debugging warning drivers: net: hamradio: Fix suspicious RCU usage warning in bpqether.c net: phy: broadcom: fix BCM54XX_SHD_SCR3_TRDDAPD value for BCM54810 tcp: fix error recovery in tcp_zerocopy_receive() MAINTAINERS: Add Jakub to networking drivers. MAINTAINERS: another add of Karsten Graul for S390 networking drivers: ipa: fix typos for ipa_smp2p structure doc pppoe: only process PADT targeted at local interfaces selftests/bpf: Enforce returning 0 for fentry/fexit programs bpf: Enforce returning 0 for fentry/fexit progs net: stmmac: fix num_por initialization security: Fix the default value of secid_to_secctx hook libbpf: Fix register naming in PT_REGS s390 macros ...
2 parents d5dfe4f + 8e13810 commit f85c159

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

78 files changed

+459
-204
lines changed

Documentation/core-api/printk-formats.rst

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -112,6 +112,20 @@ used when printing stack backtraces. The specifier takes into
112112
consideration the effect of compiler optimisations which may occur
113113
when tail-calls are used and marked with the noreturn GCC attribute.
114114

115+
Probed Pointers from BPF / tracing
116+
----------------------------------
117+
118+
::
119+
120+
%pks kernel string
121+
%pus user string
122+
123+
The ``k`` and ``u`` specifiers are used for printing prior probed memory from
124+
either kernel memory (k) or user memory (u). The subsequent ``s`` specifier
125+
results in printing a string. For direct use in regular vsnprintf() the (k)
126+
and (u) annotation is ignored, however, when used out of BPF's bpf_trace_printk(),
127+
for example, it reads the memory it is pointing to without faulting.
128+
115129
Kernel Pointers
116130
---------------
117131

MAINTAINERS

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11710,8 +11710,9 @@ F: net/core/drop_monitor.c
1171011710

1171111711
NETWORKING DRIVERS
1171211712
M: "David S. Miller" <[email protected]>
11713+
M: Jakub Kicinski <[email protected]>
1171311714
11714-
S: Odd Fixes
11715+
S: Maintained
1171511716
W: http://www.linuxfoundation.org/en/Net
1171611717
Q: http://patchwork.ozlabs.org/project/netdev/list/
1171711718
T: git git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net.git
@@ -14634,6 +14635,7 @@ F: drivers/iommu/s390-iommu.c
1463414635

1463514636
S390 IUCV NETWORK LAYER
1463614637
M: Julian Wiedmann <[email protected]>
14638+
M: Karsten Graul <[email protected]>
1463714639
M: Ursula Braun <[email protected]>
1463814640
1463914641
S: Supported
@@ -14644,6 +14646,7 @@ F: net/iucv/
1464414646

1464514647
S390 NETWORK DRIVERS
1464614648
M: Julian Wiedmann <[email protected]>
14649+
M: Karsten Graul <[email protected]>
1464714650
M: Ursula Braun <[email protected]>
1464814651
1464914652
S: Supported

arch/arm/Kconfig

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ config ARM
1212
select ARCH_HAS_KEEPINITRD
1313
select ARCH_HAS_KCOV
1414
select ARCH_HAS_MEMBARRIER_SYNC_CORE
15+
select ARCH_HAS_NON_OVERLAPPING_ADDRESS_SPACE
1516
select ARCH_HAS_PTE_SPECIAL if ARM_LPAE
1617
select ARCH_HAS_PHYS_TO_DMA
1718
select ARCH_HAS_SETUP_DMA_OPS

arch/arm/configs/keystone_defconfig

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -147,6 +147,7 @@ CONFIG_I2C_DAVINCI=y
147147
CONFIG_SPI=y
148148
CONFIG_SPI_DAVINCI=y
149149
CONFIG_SPI_SPIDEV=y
150+
CONFIG_PTP_1588_CLOCK=y
150151
CONFIG_PINCTRL_SINGLE=y
151152
CONFIG_GPIOLIB=y
152153
CONFIG_GPIO_SYSFS=y

arch/arm/configs/omap2plus_defconfig

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -274,6 +274,7 @@ CONFIG_SPI_TI_QSPI=m
274274
CONFIG_HSI=m
275275
CONFIG_OMAP_SSI=m
276276
CONFIG_SSI_PROTOCOL=m
277+
CONFIG_PTP_1588_CLOCK=y
277278
CONFIG_PINCTRL_SINGLE=y
278279
CONFIG_DEBUG_GPIO=y
279280
CONFIG_GPIO_SYSFS=y

arch/arm64/Kconfig

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ config ARM64
2020
select ARCH_HAS_KCOV
2121
select ARCH_HAS_KEEPINITRD
2222
select ARCH_HAS_MEMBARRIER_SYNC_CORE
23+
select ARCH_HAS_NON_OVERLAPPING_ADDRESS_SPACE
2324
select ARCH_HAS_PTE_DEVMAP
2425
select ARCH_HAS_PTE_SPECIAL
2526
select ARCH_HAS_SETUP_DMA_OPS

arch/x86/Kconfig

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,7 @@ config X86
6868
select ARCH_HAS_KCOV if X86_64
6969
select ARCH_HAS_MEM_ENCRYPT
7070
select ARCH_HAS_MEMBARRIER_SYNC_CORE
71+
select ARCH_HAS_NON_OVERLAPPING_ADDRESS_SPACE
7172
select ARCH_HAS_PMEM_API if X86_64
7273
select ARCH_HAS_PTE_DEVMAP if X86_64
7374
select ARCH_HAS_PTE_SPECIAL

drivers/net/bareudp.c

Lines changed: 4 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -136,25 +136,21 @@ static int bareudp_udp_encap_recv(struct sock *sk, struct sk_buff *skb)
136136
oiph = skb_network_header(skb);
137137
skb_reset_network_header(skb);
138138

139-
if (family == AF_INET)
139+
if (!IS_ENABLED(CONFIG_IPV6) || family == AF_INET)
140140
err = IP_ECN_decapsulate(oiph, skb);
141-
#if IS_ENABLED(CONFIG_IPV6)
142141
else
143142
err = IP6_ECN_decapsulate(oiph, skb);
144-
#endif
145143

146144
if (unlikely(err)) {
147145
if (log_ecn_error) {
148-
if (family == AF_INET)
146+
if (!IS_ENABLED(CONFIG_IPV6) || family == AF_INET)
149147
net_info_ratelimited("non-ECT from %pI4 "
150148
"with TOS=%#x\n",
151149
&((struct iphdr *)oiph)->saddr,
152150
((struct iphdr *)oiph)->tos);
153-
#if IS_ENABLED(CONFIG_IPV6)
154151
else
155152
net_info_ratelimited("non-ECT from %pI6\n",
156153
&((struct ipv6hdr *)oiph)->saddr);
157-
#endif
158154
}
159155
if (err > 1) {
160156
++bareudp->dev->stats.rx_frame_errors;
@@ -350,7 +346,6 @@ static int bareudp_xmit_skb(struct sk_buff *skb, struct net_device *dev,
350346
return err;
351347
}
352348

353-
#if IS_ENABLED(CONFIG_IPV6)
354349
static int bareudp6_xmit_skb(struct sk_buff *skb, struct net_device *dev,
355350
struct bareudp_dev *bareudp,
356351
const struct ip_tunnel_info *info)
@@ -411,7 +406,6 @@ static int bareudp6_xmit_skb(struct sk_buff *skb, struct net_device *dev,
411406
dst_release(dst);
412407
return err;
413408
}
414-
#endif
415409

416410
static netdev_tx_t bareudp_xmit(struct sk_buff *skb, struct net_device *dev)
417411
{
@@ -435,11 +429,9 @@ static netdev_tx_t bareudp_xmit(struct sk_buff *skb, struct net_device *dev)
435429
}
436430

437431
rcu_read_lock();
438-
#if IS_ENABLED(CONFIG_IPV6)
439-
if (info->mode & IP_TUNNEL_INFO_IPV6)
432+
if (IS_ENABLED(CONFIG_IPV6) && info->mode & IP_TUNNEL_INFO_IPV6)
440433
err = bareudp6_xmit_skb(skb, dev, bareudp, info);
441434
else
442-
#endif
443435
err = bareudp_xmit_skb(skb, dev, bareudp, info);
444436

445437
rcu_read_unlock();
@@ -467,7 +459,7 @@ static int bareudp_fill_metadata_dst(struct net_device *dev,
467459

468460
use_cache = ip_tunnel_dst_cache_usable(skb, info);
469461

470-
if (ip_tunnel_info_af(info) == AF_INET) {
462+
if (!IS_ENABLED(CONFIG_IPV6) || ip_tunnel_info_af(info) == AF_INET) {
471463
struct rtable *rt;
472464
__be32 saddr;
473465

@@ -478,7 +470,6 @@ static int bareudp_fill_metadata_dst(struct net_device *dev,
478470

479471
ip_rt_put(rt);
480472
info->key.u.ipv4.src = saddr;
481-
#if IS_ENABLED(CONFIG_IPV6)
482473
} else if (ip_tunnel_info_af(info) == AF_INET6) {
483474
struct dst_entry *dst;
484475
struct in6_addr saddr;
@@ -492,7 +483,6 @@ static int bareudp_fill_metadata_dst(struct net_device *dev,
492483

493484
dst_release(dst);
494485
info->key.u.ipv6.src = saddr;
495-
#endif
496486
} else {
497487
return -EINVAL;
498488
}

drivers/net/dsa/dsa_loop.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -360,6 +360,7 @@ static void __exit dsa_loop_exit(void)
360360
}
361361
module_exit(dsa_loop_exit);
362362

363+
MODULE_SOFTDEP("pre: dsa_loop_bdinfo");
363364
MODULE_LICENSE("GPL");
364365
MODULE_AUTHOR("Florian Fainelli");
365366
MODULE_DESCRIPTION("DSA loopback driver");

drivers/net/ethernet/broadcom/Kconfig

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,7 @@ config BCMGENET
6969
select BCM7XXX_PHY
7070
select MDIO_BCM_UNIMAC
7171
select DIMLIB
72+
select BROADCOM_PHY if ARCH_BCM2835
7273
help
7374
This driver supports the built-in Ethernet MACs found in the
7475
Broadcom BCM7xxx Set Top Box family chipset.

0 commit comments

Comments
 (0)