NeilBrown
cec05d9901
SUNRPC/call_alloc: async tasks mustn't block waiting for memory
...
[ Upstream commit c487216bec83b0c5a8803e5c61433d33ad7b104d ]
When memory is short, new worker threads cannot be created and we depend
on the minimum one rpciod thread to be able to handle everything.
So it must not block waiting for memory.
mempools are particularly a problem as memory can only be released back
to the mempool by an async rpc task running. If all available
workqueue threads are waiting on the mempool, no thread is available to
return anything.
rpc_malloc() can block, and this might cause deadlocks.
So check RPC_IS_ASYNC(), rather than RPC_IS_SWAPPER() to determine if
blocking is acceptable.
Signed-off-by: NeilBrown <neilb@suse.de>
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2022-04-20 09:06:43 +02:00
..
6lowpan
6lowpan: Off by one handling ->nexthdr
2020-01-29 10:24:22 +01:00
9p
9p/trans_virtio: Remove sysfs file on probe failure
2021-09-26 13:36:18 +02:00
802
net/802/garp: fix memleak in garp_request_join()
2021-08-04 11:58:02 +02:00
8021q
vlan: fix memory leak in vlan_dev_set_egress_priority
2020-01-12 11:24:27 +01:00
appletalk
appletalk: Fix skb allocation size in loopback case
2021-04-07 12:05:39 +02:00
atm
atm: fix a memory leak of vcc->user_back
2020-10-01 20:40:12 +02:00
ax25
ax25: Fix NULL pointer dereference in ax25_kill_by_device
2022-03-16 12:49:00 +01:00
batman-adv
batman-adv: Don't expect inter-netns unique iflink indices
2022-03-16 12:49:01 +01:00
bluetooth
Bluetooth: Fix use after free in hci_send_acl
2022-04-20 09:06:43 +02:00
bridge
netfilter: bridge: add support for pppoe filtering
2022-01-27 08:47:33 +01:00
caif
net-caif: avoid user-triggerable WARN_ON(1)
2021-09-22 11:43:09 +02:00
can
can: bcm: fix UAF of bcm op
2022-02-08 18:15:26 +01:00
ceph
libceph: clear con->out_msg on Policy::stateful_server faults
2020-11-10 10:23:59 +01:00
core
net-sysfs: add check for netdevice being present to speed_show
2022-03-16 12:49:01 +01:00
dcb
net: dcb: disable softirqs in dcbnl_flush_dev()
2022-03-08 19:00:59 +01:00
dccp
dccp: don't duplicate ccid when cloning dccp sock
2021-09-22 11:43:09 +02:00
decnet
net: decnet: Fix sleeping inside in af_decnet
2021-07-28 09:14:27 +02:00
dns_resolver
KEYS: DNS: fix parsing multiple options
2018-07-22 14:27:39 +02:00
dsa
net: dsa: tag_brcm: Fix skb->fwd_offload_mark location
2020-04-13 10:32:53 +02:00
ethernet
net: add annotations on hh->hh_len lockless accesses
2020-01-12 11:24:19 +01:00
hsr
hsr: use netdev_err() instead of WARN_ONCE()
2021-05-22 10:40:20 +02:00
ieee802154
net: ieee802154: Return meaningful error codes from the netlink helpers
2022-02-08 18:15:29 +01:00
ipv4
tcp: make tcp_read_sock() more robust
2022-03-23 09:00:33 +01:00
ipv6
net: ipv6: fix skb_over_panic in __ip6_append_data
2022-03-28 08:06:05 +02:00
ipx
ipx: call ipxitf_put() in ioctl error path
2017-05-25 15:44:41 +02:00
irda
irda: Only insert new objects into the global database via setsockopt
2018-09-15 09:43:01 +02:00
iucv
net/af_iucv: set correct sk_protocol for child sockets
2020-12-11 13:37:56 +01:00
kcm
kcm: switch order of device registration to fix a crash
2019-04-17 08:36:44 +02:00
key
af_key: add __GFP_ZERO flag for compose_sadb_supported in function pfkey_register
2022-04-20 09:06:28 +02:00
l2tp
net/l2tp: Fix reference count leak in l2tp_udp_recv_core
2021-09-22 11:43:09 +02:00
l3mdev
lapb
net: lapb: Copy the skb before sending a packet
2021-02-10 09:09:25 +01:00
llc
llc: only change llc->dev when bind() succeeds
2022-03-28 08:06:06 +02:00
mac80211
mac80211: fix potential double free on mesh join
2022-03-28 08:06:06 +02:00
mac802154
net: mac802154: Fix general protection fault
2021-04-16 11:59:10 +02:00
mpls
net: avoid infinite loop in mpls_gso_segment when mpls_hlen == 0
2021-03-17 16:10:13 +01:00
ncsi
net/ncsi: Use real net-device for response handler
2021-01-12 19:49:01 +01:00
netfilter
netfilter: nf_conntrack_tcp: preserve liberal flag in tcp options
2022-04-20 09:06:37 +02:00
netlabel
cipso,calipso: resolve a number of problems with the DOI refcounts
2022-01-27 08:47:42 +01:00
netlink
af_netlink: Fix shift out of bounds in group mask calculation
2022-04-20 09:06:36 +02:00
netrom
netrom: Decrease sock refcount when sock timers expire
2021-07-28 09:14:27 +02:00
nfc
nfc: llcp: fix NULL error pointer dereference on sendmsg() after failed bind()
2022-01-27 08:47:31 +01:00
openvswitch
openvswitch: Fixed nd target mask field in the flow dump.
2022-04-20 09:06:41 +02:00
packet
net/packet: fix slab-out-of-bounds access in packet_recvmsg()
2022-03-23 09:00:34 +01:00
phonet
phonet: refcount leak in pep_sock_accep
2022-01-11 13:38:12 +01:00
qrtr
net: qrtr: fix a kernel-infoleak in qrtr_recvmsg()
2021-03-30 14:41:42 +02:00
rds
net/rds: correct socket tunable error in rds_tcp_tune()
2021-12-08 08:45:06 +01:00
rfkill
rfkill: Fix incorrect check to avoid NULL pointer dereference
2020-01-12 11:24:23 +01:00
rose
rose: Fix Null pointer dereference in rose_send_frame()
2020-12-11 13:37:56 +01:00
rxrpc
rxrpc: Fix handling of an unsupported token type in rxrpc_read()
2021-01-23 15:38:19 +01:00
sched
net_sched: restore "mpu xxx" handling
2022-01-27 08:47:42 +01:00
sctp
sctp: fix kernel-infoleak for SCTP sockets
2022-03-16 12:49:01 +01:00
strparser
strparser: Fix incorrect strp->need_bytes value.
2018-04-29 11:32:02 +02:00
sunrpc
SUNRPC/call_alloc: async tasks mustn't block waiting for memory
2022-04-20 09:06:43 +02:00
switchdev
switchdev: Execute bridge ndos only for bridge ports
2016-10-19 10:58:04 -04:00
tipc
tipc: rate limit warning for received illegal binding update
2022-02-16 12:43:54 +01:00
unix
af_unix: annote lockless accesses to unix_tot_inflight & gc_in_progress
2022-01-27 08:47:41 +01:00
vmw_vsock
vsock: remove vsock from connected table when connect is interrupted by a signal
2022-02-23 11:56:40 +01:00
wimax
wireless
nl80211: Update bss channel on channel switch for P2P_CLIENT
2022-03-23 09:00:33 +01:00
x25
net/x25: Fix null-ptr-deref caused by x25_disconnect
2022-04-20 09:06:38 +02:00
xfrm
xfrm: Fix xfrm migrate issues when address family changes
2022-03-23 09:00:33 +01:00
compat.c
net: Return the correct errno code
2021-06-30 08:49:12 -04:00
Kconfig
Makefile
net: split out functions related to registering inflight socket files
2021-08-04 11:58:01 +02:00
socket.c
net: Set fput_needed iff FDPUT_FPUT is set
2020-08-21 11:02:04 +02:00
sysctl_net.c
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace
2016-10-06 09:52:23 -07:00