This is the start of the stable review cycle for the 5.10.55 release.
There are 24 patches in this series, all will be posted as a response
to this one. If anyone has any issues with these being applied, please
let me know.
Responses should be made by Sat, 31 Jul 2021 13:51:22 +0000.
Anything received after that time might be too late.
The whole patch series can be found in one patch at:
https://www.kernel.org/pub/linux/kernel/v5.x/stable-review/patch-5.10.55-rc…
or in the git tree and branch at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-5.10.y
and the diffstat can be found below.
thanks,
greg k-h
-------------
Pseudo-Shortlog of commits:
Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
Linux 5.10.55-rc1
Vasily Averin <vvs(a)virtuozzo.com>
ipv6: ip6_finish_output2: set sk into newly allocated nskb
Sudeep Holla <sudeep.holla(a)arm.com>
ARM: dts: versatile: Fix up interrupt controller node names
Christoph Hellwig <hch(a)lst.de>
iomap: remove the length variable in iomap_seek_hole
Christoph Hellwig <hch(a)lst.de>
iomap: remove the length variable in iomap_seek_data
Hyunchul Lee <hyc.lee(a)gmail.com>
cifs: fix the out of range assignment to bit fields in parse_server_interfaces
Cristian Marussi <cristian.marussi(a)arm.com>
firmware: arm_scmi: Fix range check for the maximum number of pending messages
Sudeep Holla <sudeep.holla(a)arm.com>
firmware: arm_scmi: Fix possible scmi_linux_errmap buffer overflow
Desmond Cheong Zhi Xi <desmondcheongzx(a)gmail.com>
hfs: add lock nesting notation to hfs_find_init
Desmond Cheong Zhi Xi <desmondcheongzx(a)gmail.com>
hfs: fix high memory mapping in hfs_bnode_read
Desmond Cheong Zhi Xi <desmondcheongzx(a)gmail.com>
hfs: add missing clean-up in hfs_fill_super
Zheyu Ma <zheyuma97(a)gmail.com>
drm/ttm: add a check against null pointer dereference
Vasily Averin <vvs(a)virtuozzo.com>
ipv6: allocate enough headroom in ip6_finish_output2()
Paul E. McKenney <paulmck(a)kernel.org>
rcu-tasks: Don't delete holdouts within trc_wait_for_one_reader()
Paul E. McKenney <paulmck(a)kernel.org>
rcu-tasks: Don't delete holdouts within trc_inspect_reader()
Xin Long <lucien.xin(a)gmail.com>
sctp: move 198 addresses from unusable to private scope
Eric Dumazet <edumazet(a)google.com>
net: annotate data race around sk_ll_usec
Yang Yingliang <yangyingliang(a)huawei.com>
net/802/garp: fix memleak in garp_request_join()
Yang Yingliang <yangyingliang(a)huawei.com>
net/802/mrp: fix memleak in mrp_request_join()
Paul Gortmaker <paul.gortmaker(a)windriver.com>
cgroup1: fix leaked context root causing sporadic NULL deref in LTP
Yang Yingliang <yangyingliang(a)huawei.com>
workqueue: fix UAF in pwq_unbound_release_workfn()
Miklos Szeredi <mszeredi(a)redhat.com>
af_unix: fix garbage collect vs MSG_PEEK
Maxim Levitsky <mlevitsk(a)redhat.com>
KVM: x86: determine if an exception has an error code only when injecting it.
Pavel Begunkov <asml.silence(a)gmail.com>
io_uring: fix link timeout refs
Yonghong Song <yhs(a)fb.com>
tools: Allow proper CC/CXX/... override with LLVM=1 in Makefile.include
-------------
Diffstat:
Makefile | 4 +--
arch/arm/boot/dts/versatile-ab.dts | 5 ++--
arch/arm/boot/dts/versatile-pb.dts | 2 +-
arch/x86/kvm/x86.c | 13 ++++++---
drivers/firmware/arm_scmi/driver.c | 12 ++++----
drivers/gpu/drm/ttm/ttm_range_manager.c | 3 ++
fs/cifs/smb2ops.c | 4 +--
fs/hfs/bfind.c | 14 ++++++++-
fs/hfs/bnode.c | 25 ++++++++++++----
fs/hfs/btree.h | 7 +++++
fs/hfs/super.c | 10 +++----
fs/internal.h | 1 -
fs/io_uring.c | 1 -
fs/iomap/seek.c | 25 ++++++----------
include/linux/fs_context.h | 1 +
include/net/busy_poll.h | 2 +-
include/net/sctp/constants.h | 4 +--
kernel/cgroup/cgroup-v1.c | 4 +--
kernel/rcu/tasks.h | 6 ++--
kernel/workqueue.c | 20 ++++++++-----
net/802/garp.c | 14 +++++++++
net/802/mrp.c | 14 +++++++++
net/core/sock.c | 2 +-
net/ipv6/ip6_output.c | 28 ++++++++++++++++++
net/sctp/protocol.c | 3 +-
net/unix/af_unix.c | 51 +++++++++++++++++++++++++++++++--
tools/scripts/Makefile.include | 12 ++++++--
27 files changed, 217 insertions(+), 70 deletions(-)
I'm announcing the release of the 5.13.7 kernel.
All users of the 5.13 kernel series must upgrade.
The updated 5.13.y git tree can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git linux-5.13.y
and can be browsed at the normal kernel.org git web browser:
https://git.kernel.org/?p=linux/kernel/git/stable/linux-stable.git;a=summary
thanks,
greg k-h
------------
Makefile | 2
arch/arm/boot/dts/versatile-ab.dts | 5 --
arch/arm/boot/dts/versatile-pb.dts | 2
drivers/firmware/arm_scmi/driver.c | 12 +++--
drivers/gpu/drm/ttm/ttm_range_manager.c | 3 +
drivers/nvme/host/pci.c | 66 ++++++++++++++++++++++++++++----
fs/cifs/smb2ops.c | 4 -
fs/hfs/bfind.c | 14 ++++++
fs/hfs/bnode.c | 25 +++++++++---
fs/hfs/btree.h | 7 +++
fs/hfs/super.c | 10 ++--
fs/internal.h | 1
fs/iomap/seek.c | 25 ++++--------
include/linux/fs_context.h | 1
include/net/busy_poll.h | 2
include/net/sctp/constants.h | 4 -
kernel/cgroup/cgroup-v1.c | 4 -
kernel/rcu/tasks.h | 6 --
kernel/workqueue.c | 20 ++++++---
net/802/garp.c | 14 ++++++
net/802/mrp.c | 14 ++++++
net/core/sock.c | 2
net/ipv6/ip6_output.c | 28 +++++++++++++
net/sctp/protocol.c | 3 -
net/unix/af_unix.c | 51 +++++++++++++++++++++++-
25 files changed, 255 insertions(+), 70 deletions(-)
Casey Chen (1):
nvme-pci: fix multiple races in nvme_setup_io_queues
Christoph Hellwig (2):
iomap: remove the length variable in iomap_seek_data
iomap: remove the length variable in iomap_seek_hole
Cristian Marussi (1):
firmware: arm_scmi: Fix range check for the maximum number of pending messages
Desmond Cheong Zhi Xi (3):
hfs: add missing clean-up in hfs_fill_super
hfs: fix high memory mapping in hfs_bnode_read
hfs: add lock nesting notation to hfs_find_init
Eric Dumazet (1):
net: annotate data race around sk_ll_usec
Greg Kroah-Hartman (1):
Linux 5.13.7
Hyunchul Lee (1):
cifs: fix the out of range assignment to bit fields in parse_server_interfaces
Miklos Szeredi (1):
af_unix: fix garbage collect vs MSG_PEEK
Paul E. McKenney (2):
rcu-tasks: Don't delete holdouts within trc_inspect_reader()
rcu-tasks: Don't delete holdouts within trc_wait_for_one_reader()
Paul Gortmaker (1):
cgroup1: fix leaked context root causing sporadic NULL deref in LTP
Sudeep Holla (2):
firmware: arm_scmi: Fix possible scmi_linux_errmap buffer overflow
ARM: dts: versatile: Fix up interrupt controller node names
Vasily Averin (2):
ipv6: allocate enough headroom in ip6_finish_output2()
ipv6: ip6_finish_output2: set sk into newly allocated nskb
Xin Long (1):
sctp: move 198 addresses from unusable to private scope
Yang Yingliang (3):
workqueue: fix UAF in pwq_unbound_release_workfn()
net/802/mrp: fix memleak in mrp_request_join()
net/802/garp: fix memleak in garp_request_join()
Zheyu Ma (1):
drm/ttm: add a check against null pointer dereference
I'm announcing the release of the 5.10.55 kernel.
All users of the 5.10 kernel series must upgrade.
The updated 5.10.y git tree can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git linux-5.10.y
and can be browsed at the normal kernel.org git web browser:
https://git.kernel.org/?p=linux/kernel/git/stable/linux-stable.git;a=summary
thanks,
greg k-h
------------
Makefile | 2 -
arch/arm/boot/dts/versatile-ab.dts | 5 +--
arch/arm/boot/dts/versatile-pb.dts | 2 -
arch/x86/kvm/x86.c | 13 +++++---
drivers/firmware/arm_scmi/driver.c | 12 ++++---
drivers/gpu/drm/ttm/ttm_range_manager.c | 3 +
fs/cifs/smb2ops.c | 4 +-
fs/hfs/bfind.c | 14 ++++++++
fs/hfs/bnode.c | 25 ++++++++++++---
fs/hfs/btree.h | 7 ++++
fs/hfs/super.c | 10 +++---
fs/internal.h | 1
fs/io_uring.c | 1
fs/iomap/seek.c | 25 +++++----------
include/linux/fs_context.h | 1
include/net/busy_poll.h | 2 -
include/net/sctp/constants.h | 4 --
kernel/cgroup/cgroup-v1.c | 4 --
kernel/rcu/tasks.h | 6 +--
kernel/workqueue.c | 20 ++++++++----
net/802/garp.c | 14 ++++++++
net/802/mrp.c | 14 ++++++++
net/core/sock.c | 2 -
net/ipv6/ip6_output.c | 28 +++++++++++++++++
net/sctp/protocol.c | 3 +
net/unix/af_unix.c | 51 ++++++++++++++++++++++++++++++--
tools/scripts/Makefile.include | 12 ++++++-
27 files changed, 216 insertions(+), 69 deletions(-)
Christoph Hellwig (2):
iomap: remove the length variable in iomap_seek_data
iomap: remove the length variable in iomap_seek_hole
Cristian Marussi (1):
firmware: arm_scmi: Fix range check for the maximum number of pending messages
Desmond Cheong Zhi Xi (3):
hfs: add missing clean-up in hfs_fill_super
hfs: fix high memory mapping in hfs_bnode_read
hfs: add lock nesting notation to hfs_find_init
Eric Dumazet (1):
net: annotate data race around sk_ll_usec
Greg Kroah-Hartman (1):
Linux 5.10.55
Hyunchul Lee (1):
cifs: fix the out of range assignment to bit fields in parse_server_interfaces
Maxim Levitsky (1):
KVM: x86: determine if an exception has an error code only when injecting it.
Miklos Szeredi (1):
af_unix: fix garbage collect vs MSG_PEEK
Paul E. McKenney (2):
rcu-tasks: Don't delete holdouts within trc_inspect_reader()
rcu-tasks: Don't delete holdouts within trc_wait_for_one_reader()
Paul Gortmaker (1):
cgroup1: fix leaked context root causing sporadic NULL deref in LTP
Pavel Begunkov (1):
io_uring: fix link timeout refs
Sudeep Holla (2):
firmware: arm_scmi: Fix possible scmi_linux_errmap buffer overflow
ARM: dts: versatile: Fix up interrupt controller node names
Vasily Averin (2):
ipv6: allocate enough headroom in ip6_finish_output2()
ipv6: ip6_finish_output2: set sk into newly allocated nskb
Xin Long (1):
sctp: move 198 addresses from unusable to private scope
Yang Yingliang (3):
workqueue: fix UAF in pwq_unbound_release_workfn()
net/802/mrp: fix memleak in mrp_request_join()
net/802/garp: fix memleak in garp_request_join()
Yonghong Song (1):
tools: Allow proper CC/CXX/... override with LLVM=1 in Makefile.include
Zheyu Ma (1):
drm/ttm: add a check against null pointer dereference
I'm announcing the release of the 5.4.137 kernel.
All users of the 5.4 kernel series must upgrade.
The updated 5.4.y git tree can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git linux-5.4.y
and can be browsed at the normal kernel.org git web browser:
https://git.kernel.org/?p=linux/kernel/git/stable/linux-stable.git;a=summary
thanks,
greg k-h
------------
Makefile | 2 -
arch/arm/boot/dts/versatile-ab.dts | 5 +--
arch/arm/boot/dts/versatile-pb.dts | 2 -
arch/x86/kvm/x86.c | 13 +++++--
drivers/firmware/arm_scmi/driver.c | 12 ++++---
fs/cifs/smb2ops.c | 4 +-
fs/hfs/bfind.c | 14 +++++++-
fs/hfs/bnode.c | 25 ++++++++++++---
fs/hfs/btree.h | 7 ++++
fs/hfs/super.c | 10 +++---
fs/internal.h | 1
fs/iomap/seek.c | 25 +++++----------
include/linux/fs_context.h | 1
include/net/busy_poll.h | 2 -
include/net/sctp/constants.h | 4 --
kernel/cgroup/cgroup-v1.c | 4 --
kernel/workqueue.c | 20 +++++++-----
net/802/garp.c | 14 ++++++++
net/802/mrp.c | 14 ++++++++
net/core/sock.c | 2 -
net/ipv6/ip6_output.c | 28 +++++++++++++++++
net/sctp/protocol.c | 3 +
net/unix/af_unix.c | 51 +++++++++++++++++++++++++++++--
tools/scripts/Makefile.include | 12 ++++++-
tools/testing/selftests/vm/userfaultfd.c | 2 -
25 files changed, 212 insertions(+), 65 deletions(-)
Christoph Hellwig (2):
iomap: remove the length variable in iomap_seek_data
iomap: remove the length variable in iomap_seek_hole
Cristian Marussi (1):
firmware: arm_scmi: Fix range check for the maximum number of pending messages
Desmond Cheong Zhi Xi (3):
hfs: add missing clean-up in hfs_fill_super
hfs: fix high memory mapping in hfs_bnode_read
hfs: add lock nesting notation to hfs_find_init
Eric Dumazet (1):
net: annotate data race around sk_ll_usec
Greg Kroah-Hartman (2):
selftest: fix build error in tools/testing/selftests/vm/userfaultfd.c
Linux 5.4.137
Hyunchul Lee (1):
cifs: fix the out of range assignment to bit fields in parse_server_interfaces
Maxim Levitsky (1):
KVM: x86: determine if an exception has an error code only when injecting it.
Miklos Szeredi (1):
af_unix: fix garbage collect vs MSG_PEEK
Paul Gortmaker (1):
cgroup1: fix leaked context root causing sporadic NULL deref in LTP
Sudeep Holla (2):
firmware: arm_scmi: Fix possible scmi_linux_errmap buffer overflow
ARM: dts: versatile: Fix up interrupt controller node names
Vasily Averin (2):
ipv6: allocate enough headroom in ip6_finish_output2()
ipv6: ip6_finish_output2: set sk into newly allocated nskb
Xin Long (1):
sctp: move 198 addresses from unusable to private scope
Yang Yingliang (3):
workqueue: fix UAF in pwq_unbound_release_workfn()
net/802/mrp: fix memleak in mrp_request_join()
net/802/garp: fix memleak in garp_request_join()
Yonghong Song (1):
tools: Allow proper CC/CXX/... override with LLVM=1 in Makefile.include
I'm announcing the release of the 4.19.200 kernel.
All users of the 4.19 kernel series must upgrade.
The updated 4.19.y git tree can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git linux-4.19.y
and can be browsed at the normal kernel.org git web browser:
https://git.kernel.org/?p=linux/kernel/git/stable/linux-stable.git;a=summary
thanks,
greg k-h
------------
Makefile | 2
arch/arm/boot/dts/versatile-ab.dts | 5 -
arch/arm/boot/dts/versatile-pb.dts | 2
arch/x86/kvm/x86.c | 13 +-
drivers/firmware/arm_scmi/driver.c | 12 +-
drivers/iio/dac/ds4424.c | 6 -
fs/cifs/smb2ops.c | 4
fs/hfs/bfind.c | 14 ++
fs/hfs/bnode.c | 25 ++++-
fs/hfs/btree.h | 7 +
fs/hfs/super.c | 10 +-
include/net/af_unix.h | 1
include/net/busy_poll.h | 2
include/net/sctp/constants.h | 4
kernel/workqueue.c | 20 ++--
net/802/garp.c | 14 ++
net/802/mrp.c | 14 ++
net/Makefile | 2
net/core/sock.c | 2
net/sctp/protocol.c | 3
net/unix/Kconfig | 5 +
net/unix/Makefile | 2
net/unix/af_unix.c | 102 +++++++++------------
net/unix/garbage.c | 68 --------------
net/unix/scm.c | 148 +++++++++++++++++++++++++++++++
net/unix/scm.h | 10 ++
tools/testing/selftests/vm/userfaultfd.c | 2
27 files changed, 328 insertions(+), 171 deletions(-)
Cristian Marussi (1):
firmware: arm_scmi: Fix range check for the maximum number of pending messages
Desmond Cheong Zhi Xi (3):
hfs: add missing clean-up in hfs_fill_super
hfs: fix high memory mapping in hfs_bnode_read
hfs: add lock nesting notation to hfs_find_init
Eric Dumazet (1):
net: annotate data race around sk_ll_usec
Greg Kroah-Hartman (2):
selftest: fix build error in tools/testing/selftests/vm/userfaultfd.c
Linux 4.19.200
Hyunchul Lee (1):
cifs: fix the out of range assignment to bit fields in parse_server_interfaces
Jens Axboe (1):
net: split out functions related to registering inflight socket files
Maxim Levitsky (1):
KVM: x86: determine if an exception has an error code only when injecting it.
Miklos Szeredi (1):
af_unix: fix garbage collect vs MSG_PEEK
Ruslan Babayev (1):
iio: dac: ds4422/ds4424 drop of_node check
Sudeep Holla (2):
firmware: arm_scmi: Fix possible scmi_linux_errmap buffer overflow
ARM: dts: versatile: Fix up interrupt controller node names
Xin Long (1):
sctp: move 198 addresses from unusable to private scope
Yang Yingliang (3):
workqueue: fix UAF in pwq_unbound_release_workfn()
net/802/mrp: fix memleak in mrp_request_join()
net/802/garp: fix memleak in garp_request_join()
The patch below does not apply to the 5.10-stable tree.
If someone wants it applied there, or to any other stable or longterm
tree, then please email the backport, including the original git commit
id to <stable(a)vger.kernel.org>.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
>From 44eff40a32e8f5228ae041006352e32638ad2368 Mon Sep 17 00:00:00 2001
From: Pavel Begunkov <asml.silence(a)gmail.com>
Date: Mon, 26 Jul 2021 14:14:31 +0100
Subject: [PATCH] io_uring: fix io_prep_async_link locking
io_prep_async_link() may be called after arming a linked timeout,
automatically making it unsafe to traverse the linked list. Guard
with completion_lock if there was a linked timeout.
Cc: stable(a)vger.kernel.org # 5.9+
Signed-off-by: Pavel Begunkov <asml.silence(a)gmail.com>
Link: https://lore.kernel.org/r/93f7c617e2b4f012a2a175b3dab6bc2f27cebc48.16273044…
Signed-off-by: Jens Axboe <axboe(a)kernel.dk>
diff --git a/fs/io_uring.c b/fs/io_uring.c
index 5a0fd6bcd318..c4d2b320cdd4 100644
--- a/fs/io_uring.c
+++ b/fs/io_uring.c
@@ -1279,8 +1279,17 @@ static void io_prep_async_link(struct io_kiocb *req)
{
struct io_kiocb *cur;
- io_for_each_link(cur, req)
- io_prep_async_work(cur);
+ if (req->flags & REQ_F_LINK_TIMEOUT) {
+ struct io_ring_ctx *ctx = req->ctx;
+
+ spin_lock_irq(&ctx->completion_lock);
+ io_for_each_link(cur, req)
+ io_prep_async_work(cur);
+ spin_unlock_irq(&ctx->completion_lock);
+ } else {
+ io_for_each_link(cur, req)
+ io_prep_async_work(cur);
+ }
}
static void io_queue_async_work(struct io_kiocb *req)
The patch below does not apply to the 5.4-stable tree.
If someone wants it applied there, or to any other stable or longterm
tree, then please email the backport, including the original git commit
id to <stable(a)vger.kernel.org>.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
>From 5ab189cf3abbc9994bae3be524c5b88589ed56e2 Mon Sep 17 00:00:00 2001
From: Tejun Heo <tj(a)kernel.org>
Date: Tue, 27 Jul 2021 14:38:09 -1000
Subject: [PATCH] blk-iocost: fix operation ordering in iocg_wake_fn()
iocg_wake_fn() open-codes wait_queue_entry removal and wakeup because it
wants the wq_entry to be always removed whether it ended up waking the
task or not. finish_wait() tests whether wq_entry needs removal without
grabbing the wait_queue lock and expects the waker to use
list_del_init_careful() after all waking operations are complete, which
iocg_wake_fn() didn't do. The operation order was wrong and the regular
list_del_init() was used.
The result is that if a waiter wakes up racing the waker, it can free pop
the wq_entry off stack before the waker is still looking at it, which can
lead to a backtrace like the following.
[7312084.588951] general protection fault, probably for non-canonical address 0x586bf4005b2b88: 0000 [#1] SMP
...
[7312084.647079] RIP: 0010:queued_spin_lock_slowpath+0x171/0x1b0
...
[7312084.858314] Call Trace:
[7312084.863548] _raw_spin_lock_irqsave+0x22/0x30
[7312084.872605] try_to_wake_up+0x4c/0x4f0
[7312084.880444] iocg_wake_fn+0x71/0x80
[7312084.887763] __wake_up_common+0x71/0x140
[7312084.895951] iocg_kick_waitq+0xe8/0x2b0
[7312084.903964] ioc_rqos_throttle+0x275/0x650
[7312084.922423] __rq_qos_throttle+0x20/0x30
[7312084.930608] blk_mq_make_request+0x120/0x650
[7312084.939490] generic_make_request+0xca/0x310
[7312084.957600] submit_bio+0x173/0x200
[7312084.981806] swap_readpage+0x15c/0x240
[7312084.989646] read_swap_cache_async+0x58/0x60
[7312084.998527] swap_cluster_readahead+0x201/0x320
[7312085.023432] swapin_readahead+0x2df/0x450
[7312085.040672] do_swap_page+0x52f/0x820
[7312085.058259] handle_mm_fault+0xa16/0x1420
[7312085.066620] do_page_fault+0x2c6/0x5c0
[7312085.074459] page_fault+0x2f/0x40
Fix it by switching to list_del_init_careful() and putting it at the end.
Signed-off-by: Tejun Heo <tj(a)kernel.org>
Reported-by: Rik van Riel <riel(a)surriel.com>
Fixes: 7caa47151ab2 ("blkcg: implement blk-iocost")
Cc: stable(a)vger.kernel.org # v5.4+
Signed-off-by: Jens Axboe <axboe(a)kernel.dk>
diff --git a/block/blk-iocost.c b/block/blk-iocost.c
index c2d6bc88d3f1..5fac3757e6e0 100644
--- a/block/blk-iocost.c
+++ b/block/blk-iocost.c
@@ -1440,16 +1440,17 @@ static int iocg_wake_fn(struct wait_queue_entry *wq_entry, unsigned mode,
return -1;
iocg_commit_bio(ctx->iocg, wait->bio, wait->abs_cost, cost);
+ wait->committed = true;
/*
* autoremove_wake_function() removes the wait entry only when it
- * actually changed the task state. We want the wait always
- * removed. Remove explicitly and use default_wake_function().
+ * actually changed the task state. We want the wait always removed.
+ * Remove explicitly and use default_wake_function(). Note that the
+ * order of operations is important as finish_wait() tests whether
+ * @wq_entry is removed without grabbing the lock.
*/
- list_del_init(&wq_entry->entry);
- wait->committed = true;
-
default_wake_function(wq_entry, mode, flags, key);
+ list_del_init_careful(&wq_entry->entry);
return 0;
}