mirror of
https://github.com/torvalds/linux.git
synced 2026-04-18 06:44:00 -04:00
Merge tag 'net-7.0-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net
Pull networking fixes from Paolo Abeni:
"Including fixes from IPsec, Bluetooth and netfilter
Current release - regressions:
- wifi: fix dev_alloc_name() return value check
- rds: fix recursive lock in rds_tcp_conn_slots_available
Current release - new code bugs:
- vsock: lock down child_ns_mode as write-once
Previous releases - regressions:
- core:
- do not pass flow_id to set_rps_cpu()
- consume xmit errors of GSO frames
- netconsole: avoid OOB reads, msg is not nul-terminated
- netfilter: h323: fix OOB read in decode_choice()
- tcp: re-enable acceptance of FIN packets when RWIN is 0
- udplite: fix null-ptr-deref in __udp_enqueue_schedule_skb().
- wifi: brcmfmac: fix potential kernel oops when probe fails
- phy: register phy led_triggers during probe to avoid AB-BA deadlock
- eth:
- bnxt_en: fix deleting of Ntuple filters
- wan: farsync: fix use-after-free bugs caused by unfinished tasklets
- xscale: check for PTP support properly
Previous releases - always broken:
- tcp: fix potential race in tcp_v6_syn_recv_sock()
- kcm: fix zero-frag skb in frag_list on partial sendmsg error
- xfrm:
- fix race condition in espintcp_close()
- always flush state and policy upon NETDEV_UNREGISTER event
- bluetooth:
- purge error queues in socket destructors
- fix response to L2CAP_ECRED_CONN_REQ
- eth:
- mlx5:
- fix circular locking dependency in dump
- fix "scheduling while atomic" in IPsec MAC address query
- gve: fix incorrect buffer cleanup for QPL
- team: avoid NETDEV_CHANGEMTU event when unregistering slave
- usb: validate USB endpoints"
* tag 'net-7.0-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (72 commits)
netfilter: nf_conntrack_h323: fix OOB read in decode_choice()
dpaa2-switch: validate num_ifs to prevent out-of-bounds write
net: consume xmit errors of GSO frames
vsock: document write-once behavior of the child_ns_mode sysctl
vsock: lock down child_ns_mode as write-once
selftests/vsock: change tests to respect write-once child ns mode
net/mlx5e: Fix "scheduling while atomic" in IPsec MAC address query
net/mlx5: Fix missing devlink lock in SRIOV enable error path
net/mlx5: E-switch, Clear legacy flag when moving to switchdev
net/mlx5: LAG, disable MPESW in lag_disable_change()
net/mlx5: DR, Fix circular locking dependency in dump
selftests: team: Add a reference count leak test
team: avoid NETDEV_CHANGEMTU event when unregistering slave
net: mana: Fix double destroy_workqueue on service rescan PCI path
MAINTAINERS: Update maintainer entry for QUALCOMM ETHQOS ETHERNET DRIVER
dpll: zl3073x: Remove redundant cleanup in devm_dpll_init()
selftests/net: packetdrill: Verify acceptance of FIN packets when RWIN is 0
tcp: re-enable acceptance of FIN packets when RWIN is 0
vsock: Use container_of() to get net namespace in sysctl handlers
net: usb: kaweth: validate USB endpoints
...
This commit is contained in:
@@ -90,16 +90,20 @@
|
||||
*
|
||||
* - /proc/sys/net/vsock/ns_mode (read-only) reports the current namespace's
|
||||
* mode, which is set at namespace creation and immutable thereafter.
|
||||
* - /proc/sys/net/vsock/child_ns_mode (writable) controls what mode future
|
||||
* - /proc/sys/net/vsock/child_ns_mode (write-once) controls what mode future
|
||||
* child namespaces will inherit when created. The initial value matches
|
||||
* the namespace's own ns_mode.
|
||||
*
|
||||
* Changing child_ns_mode only affects newly created namespaces, not the
|
||||
* current namespace or existing children. A "local" namespace cannot set
|
||||
* child_ns_mode to "global". At namespace creation, ns_mode is inherited
|
||||
* from the parent's child_ns_mode.
|
||||
* child_ns_mode to "global". child_ns_mode is write-once, so that it may be
|
||||
* configured and locked down by a namespace manager. Writing a different
|
||||
* value after the first write returns -EBUSY. At namespace creation, ns_mode
|
||||
* is inherited from the parent's child_ns_mode.
|
||||
*
|
||||
* The init_net mode is "global" and cannot be modified.
|
||||
* The init_net mode is "global" and cannot be modified. The init_net
|
||||
* child_ns_mode is also write-once, so an init process (e.g. systemd) can
|
||||
* set it to "local" to ensure all new namespaces inherit local mode.
|
||||
*
|
||||
* The modes affect the allocation and accessibility of CIDs as follows:
|
||||
*
|
||||
@@ -2825,7 +2829,7 @@ static int vsock_net_mode_string(const struct ctl_table *table, int write,
|
||||
if (write)
|
||||
return -EPERM;
|
||||
|
||||
net = current->nsproxy->net_ns;
|
||||
net = container_of(table->data, struct net, vsock.mode);
|
||||
|
||||
return __vsock_net_mode_string(table, write, buffer, lenp, ppos,
|
||||
vsock_net_mode(net), NULL);
|
||||
@@ -2838,7 +2842,7 @@ static int vsock_net_child_mode_string(const struct ctl_table *table, int write,
|
||||
struct net *net;
|
||||
int ret;
|
||||
|
||||
net = current->nsproxy->net_ns;
|
||||
net = container_of(table->data, struct net, vsock.child_ns_mode);
|
||||
|
||||
ret = __vsock_net_mode_string(table, write, buffer, lenp, ppos,
|
||||
vsock_net_child_mode(net), &new_mode);
|
||||
@@ -2853,7 +2857,8 @@ static int vsock_net_child_mode_string(const struct ctl_table *table, int write,
|
||||
new_mode == VSOCK_NET_MODE_GLOBAL)
|
||||
return -EPERM;
|
||||
|
||||
vsock_net_set_child_mode(net, new_mode);
|
||||
if (!vsock_net_set_child_mode(net, new_mode))
|
||||
return -EBUSY;
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
||||
Reference in New Issue
Block a user