mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-08 00:29:36 -04:00
Merge tag 'net-6.7-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net
Pull networking fixes from Jakub Kicinski:
"Including fixes from bpf and netfilter.
Current release - regressions:
- veth: fix packet segmentation in veth_convert_skb_to_xdp_buff
Current release - new code bugs:
- tcp: assorted fixes to the new Auth Option support
Older releases - regressions:
- tcp: fix mid stream window clamp
- tls: fix incorrect splice handling
- ipv4: ip_gre: handle skb_pull() failure in ipgre_xmit()
- dsa: mv88e6xxx: restore USXGMII support for 6393X
- arcnet: restore support for multiple Sohard Arcnet cards
Older releases - always broken:
- tcp: do not accept ACK of bytes we never sent
- require admin privileges to receive packet traces via netlink
- packet: move reference count in packet_sock to atomic_long_t
- bpf:
- fix incorrect branch offset comparison with cpu=v4
- fix prog_array_map_poke_run map poke update
- netfilter:
- three fixes for crashes on bad admin commands
- xt_owner: fix race accessing sk->sk_socket, TOCTOU null-deref
- nf_tables: fix 'exist' matching on bigendian arches
- leds: netdev: fix RTNL handling to prevent potential deadlock
- eth: tg3: prevent races in error/reset handling
- eth: r8169: fix rtl8125b PAUSE storm when suspended
- eth: r8152: improve reset and surprise removal handling
- eth: hns: fix race between changing features and sending
- eth: nfp: fix sleep in atomic for bonding offload"
* tag 'net-6.7-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (62 commits)
vsock/virtio: fix "comparison of distinct pointer types lacks a cast" warning
net/smc: fix missing byte order conversion in CLC handshake
net: dsa: microchip: provide a list of valid protocols for xmit handler
drop_monitor: Require 'CAP_SYS_ADMIN' when joining "events" group
psample: Require 'CAP_NET_ADMIN' when joining "packets" group
bpf: sockmap, updating the sg structure should also update curr
net: tls, update curr on splice as well
nfp: flower: fix for take a mutex lock in soft irq context and rcu lock
net: dsa: mv88e6xxx: Restore USXGMII support for 6393X
tcp: do not accept ACK of bytes we never sent
selftests/bpf: Add test for early update in prog_array_map_poke_run
bpf: Fix prog_array_map_poke_run map poke update
netfilter: xt_owner: Fix for unsafe access of sk->sk_socket
netfilter: nf_tables: validate family when identifying table via handle
netfilter: nf_tables: bail out on mismatching dynset and set expressions
netfilter: nf_tables: fix 'exist' matching on bigendian arches
netfilter: nft_set_pipapo: skip inactive elements during set walk
netfilter: bpf: fix bad registration on nf_defrag
leds: trigger: netdev: fix RTNL handling to prevent potential deadlock
octeontx2-af: Update Tx link register range
...
This commit is contained in:
@@ -3175,6 +3175,9 @@ enum bpf_text_poke_type {
|
||||
int bpf_arch_text_poke(void *ip, enum bpf_text_poke_type t,
|
||||
void *addr1, void *addr2);
|
||||
|
||||
void bpf_arch_poke_desc_update(struct bpf_jit_poke_descriptor *poke,
|
||||
struct bpf_prog *new, struct bpf_prog *old);
|
||||
|
||||
void *bpf_arch_text_copy(void *dst, void *src, size_t len);
|
||||
int bpf_arch_text_invalidate(void *dst, size_t len);
|
||||
|
||||
|
||||
@@ -175,6 +175,7 @@ struct stmmac_fpe_cfg {
|
||||
bool hs_enable; /* FPE handshake enable */
|
||||
enum stmmac_fpe_state lp_fpe_state; /* Link Partner FPE state */
|
||||
enum stmmac_fpe_state lo_fpe_state; /* Local station FPE state */
|
||||
u32 fpe_csr; /* MAC_FPE_CTRL_STS reg cache */
|
||||
};
|
||||
|
||||
struct stmmac_safety_feature_cfg {
|
||||
|
||||
@@ -169,7 +169,7 @@ struct tcp_request_sock {
|
||||
#ifdef CONFIG_TCP_AO
|
||||
u8 ao_keyid;
|
||||
u8 ao_rcv_next;
|
||||
u8 maclen;
|
||||
bool used_tcp_ao;
|
||||
#endif
|
||||
};
|
||||
|
||||
@@ -180,14 +180,10 @@ static inline struct tcp_request_sock *tcp_rsk(const struct request_sock *req)
|
||||
|
||||
static inline bool tcp_rsk_used_ao(const struct request_sock *req)
|
||||
{
|
||||
/* The real length of MAC is saved in the request socket,
|
||||
* signing anything with zero-length makes no sense, so here is
|
||||
* a little hack..
|
||||
*/
|
||||
#ifndef CONFIG_TCP_AO
|
||||
return false;
|
||||
#else
|
||||
return tcp_rsk(req)->maclen != 0;
|
||||
return tcp_rsk(req)->used_tcp_ao;
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
@@ -30,6 +30,7 @@
|
||||
#define VENDOR_ID_NVIDIA 0x0955
|
||||
#define VENDOR_ID_TPLINK 0x2357
|
||||
#define VENDOR_ID_DLINK 0x2001
|
||||
#define VENDOR_ID_ASUS 0x0b05
|
||||
|
||||
#if IS_REACHABLE(CONFIG_USB_RTL8152)
|
||||
extern u8 rtl8152_get_version(struct usb_interface *intf);
|
||||
|
||||
@@ -12,10 +12,12 @@
|
||||
* struct genl_multicast_group - generic netlink multicast group
|
||||
* @name: name of the multicast group, names are per-family
|
||||
* @flags: GENL_* flags (%GENL_ADMIN_PERM or %GENL_UNS_ADMIN_PERM)
|
||||
* @cap_sys_admin: whether %CAP_SYS_ADMIN is required for binding
|
||||
*/
|
||||
struct genl_multicast_group {
|
||||
char name[GENL_NAMSIZ];
|
||||
u8 flags;
|
||||
u8 cap_sys_admin:1;
|
||||
};
|
||||
|
||||
struct genl_split_ops;
|
||||
|
||||
@@ -1514,17 +1514,22 @@ static inline int tcp_full_space(const struct sock *sk)
|
||||
return tcp_win_from_space(sk, READ_ONCE(sk->sk_rcvbuf));
|
||||
}
|
||||
|
||||
static inline void tcp_adjust_rcv_ssthresh(struct sock *sk)
|
||||
static inline void __tcp_adjust_rcv_ssthresh(struct sock *sk, u32 new_ssthresh)
|
||||
{
|
||||
int unused_mem = sk_unused_reserved_mem(sk);
|
||||
struct tcp_sock *tp = tcp_sk(sk);
|
||||
|
||||
tp->rcv_ssthresh = min(tp->rcv_ssthresh, 4U * tp->advmss);
|
||||
tp->rcv_ssthresh = min(tp->rcv_ssthresh, new_ssthresh);
|
||||
if (unused_mem)
|
||||
tp->rcv_ssthresh = max_t(u32, tp->rcv_ssthresh,
|
||||
tcp_win_from_space(sk, unused_mem));
|
||||
}
|
||||
|
||||
static inline void tcp_adjust_rcv_ssthresh(struct sock *sk)
|
||||
{
|
||||
__tcp_adjust_rcv_ssthresh(sk, 4U * tcp_sk(sk)->advmss);
|
||||
}
|
||||
|
||||
void tcp_cleanup_rbuf(struct sock *sk, int copied);
|
||||
void __tcp_cleanup_rbuf(struct sock *sk, int copied);
|
||||
|
||||
|
||||
@@ -62,11 +62,17 @@ static inline int tcp_ao_maclen(const struct tcp_ao_key *key)
|
||||
return key->maclen;
|
||||
}
|
||||
|
||||
/* Use tcp_ao_len_aligned() for TCP header calculations */
|
||||
static inline int tcp_ao_len(const struct tcp_ao_key *key)
|
||||
{
|
||||
return tcp_ao_maclen(key) + sizeof(struct tcp_ao_hdr);
|
||||
}
|
||||
|
||||
static inline int tcp_ao_len_aligned(const struct tcp_ao_key *key)
|
||||
{
|
||||
return round_up(tcp_ao_len(key), 4);
|
||||
}
|
||||
|
||||
static inline unsigned int tcp_ao_digest_size(struct tcp_ao_key *key)
|
||||
{
|
||||
return key->digest_size;
|
||||
|
||||
Reference in New Issue
Block a user