]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
drop a bunch of patches based on reviews
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 11 Jul 2024 09:41:26 +0000 (11:41 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 11 Jul 2024 09:41:26 +0000 (11:41 +0200)
19 files changed:
queue-4.19/irqchip-gic-v3-its-remove-bug_on-in-its_vpe_irq_doma.patch [deleted file]
queue-4.19/series
queue-5.10/irqchip-gic-v3-its-remove-bug_on-in-its_vpe_irq_doma.patch [deleted file]
queue-5.10/series
queue-5.15/irqchip-gic-v3-its-remove-bug_on-in-its_vpe_irq_doma.patch [deleted file]
queue-5.15/series
queue-5.4/irqchip-gic-v3-its-remove-bug_on-in-its_vpe_irq_doma.patch [deleted file]
queue-5.4/series
queue-6.1/irqchip-gic-v3-its-remove-bug_on-in-its_vpe_irq_doma.patch [deleted file]
queue-6.1/kunit-handle-test-faults.patch [deleted file]
queue-6.1/series
queue-6.6/irqchip-gic-v3-its-remove-bug_on-in-its_vpe_irq_doma.patch [deleted file]
queue-6.6/kunit-handle-test-faults.patch [deleted file]
queue-6.6/powerpc-dexcr-track-the-dexcr-per-process.patch [deleted file]
queue-6.6/series
queue-6.9/irqchip-gic-v3-its-remove-bug_on-in-its_vpe_irq_doma.patch [deleted file]
queue-6.9/kunit-handle-test-faults.patch [deleted file]
queue-6.9/powerpc-dexcr-track-the-dexcr-per-process.patch [deleted file]
queue-6.9/series

diff --git a/queue-4.19/irqchip-gic-v3-its-remove-bug_on-in-its_vpe_irq_doma.patch b/queue-4.19/irqchip-gic-v3-its-remove-bug_on-in-its_vpe_irq_doma.patch
deleted file mode 100644 (file)
index 33b5bf0..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-From 755959e2b1af22abbf5a264c0407266b6eac9750 Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Thu, 18 Apr 2024 14:10:53 +0800
-Subject: irqchip/gic-v3-its: Remove BUG_ON in its_vpe_irq_domain_alloc
-
-From: Guanrui Huang <guanrui.huang@linux.alibaba.com>
-
-[ Upstream commit 382d2ffe86efb1e2fa803d2cf17e5bfc34e574f3 ]
-
-This BUG_ON() is useless, because the same effect will be obtained
-by letting the code run its course and vm being dereferenced,
-triggering an exception.
-
-So just remove this check.
-
-Signed-off-by: Guanrui Huang <guanrui.huang@linux.alibaba.com>
-Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
-Reviewed-by: Zenghui Yu <yuzenghui@huawei.com>
-Acked-by: Marc Zyngier <maz@kernel.org>
-Link: https://lore.kernel.org/r/20240418061053.96803-3-guanrui.huang@linux.alibaba.com
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- drivers/irqchip/irq-gic-v3-its.c | 2 --
- 1 file changed, 2 deletions(-)
-
-diff --git a/drivers/irqchip/irq-gic-v3-its.c b/drivers/irqchip/irq-gic-v3-its.c
-index 6b58194c1e346..2e0478e8be747 100644
---- a/drivers/irqchip/irq-gic-v3-its.c
-+++ b/drivers/irqchip/irq-gic-v3-its.c
-@@ -2958,8 +2958,6 @@ static int its_vpe_irq_domain_alloc(struct irq_domain *domain, unsigned int virq
-       struct page *vprop_page;
-       int base, nr_ids, i, err = 0;
--      BUG_ON(!vm);
--
-       bitmap = its_lpi_alloc(roundup_pow_of_two(nr_irqs), &base, &nr_ids);
-       if (!bitmap)
-               return -ENOMEM;
--- 
-2.43.0
-
index a521dd90a4b17fd613d31995ecbcb4013d9b5a55..ad5d003f98fb5629d0f343714838967094641bef 100644 (file)
@@ -1,7 +1,6 @@
 media-dvb-as102-fe-fix-as10x_register_addr-packing.patch
 media-dvb-usb-dib0700_devices-add-missing-release_fi.patch
 ib-core-implement-a-limit-on-umad-receive-list.patch
-irqchip-gic-v3-its-remove-bug_on-in-its_vpe_irq_doma.patch
 drm-amd-display-skip-finding-free-audio-for-unknown-.patch
 media-dw2102-don-t-translate-i2c-read-into-write.patch
 sctp-prefer-struct_size-over-open-coded-arithmetic.patch
diff --git a/queue-5.10/irqchip-gic-v3-its-remove-bug_on-in-its_vpe_irq_doma.patch b/queue-5.10/irqchip-gic-v3-its-remove-bug_on-in-its_vpe_irq_doma.patch
deleted file mode 100644 (file)
index bfaab2c..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-From 8b350f7960ad2a2316483438dbbae0c0fefd30a8 Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Thu, 18 Apr 2024 14:10:53 +0800
-Subject: irqchip/gic-v3-its: Remove BUG_ON in its_vpe_irq_domain_alloc
-
-From: Guanrui Huang <guanrui.huang@linux.alibaba.com>
-
-[ Upstream commit 382d2ffe86efb1e2fa803d2cf17e5bfc34e574f3 ]
-
-This BUG_ON() is useless, because the same effect will be obtained
-by letting the code run its course and vm being dereferenced,
-triggering an exception.
-
-So just remove this check.
-
-Signed-off-by: Guanrui Huang <guanrui.huang@linux.alibaba.com>
-Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
-Reviewed-by: Zenghui Yu <yuzenghui@huawei.com>
-Acked-by: Marc Zyngier <maz@kernel.org>
-Link: https://lore.kernel.org/r/20240418061053.96803-3-guanrui.huang@linux.alibaba.com
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- drivers/irqchip/irq-gic-v3-its.c | 2 --
- 1 file changed, 2 deletions(-)
-
-diff --git a/drivers/irqchip/irq-gic-v3-its.c b/drivers/irqchip/irq-gic-v3-its.c
-index 4e486cccc4cc6..a9469751720cc 100644
---- a/drivers/irqchip/irq-gic-v3-its.c
-+++ b/drivers/irqchip/irq-gic-v3-its.c
-@@ -4469,8 +4469,6 @@ static int its_vpe_irq_domain_alloc(struct irq_domain *domain, unsigned int virq
-       struct page *vprop_page;
-       int base, nr_ids, i, err = 0;
--      BUG_ON(!vm);
--
-       bitmap = its_lpi_alloc(roundup_pow_of_two(nr_irqs), &base, &nr_ids);
-       if (!bitmap)
-               return -ENOMEM;
--- 
-2.43.0
-
index eb9ed1e5a1aa1593dd31cb86d6a19376c32ddb05..71be383944b2ed1ef3ece5b079169ff08f0a1086 100644 (file)
@@ -3,7 +3,6 @@ media-dvb-as102-fe-fix-as10x_register_addr-packing.patch
 media-dvb-usb-dib0700_devices-add-missing-release_fi.patch
 ib-core-implement-a-limit-on-umad-receive-list.patch
 scsi-qedf-make-qedf_execute_tmf-non-preemptible.patch
-irqchip-gic-v3-its-remove-bug_on-in-its_vpe_irq_doma.patch
 crypto-aead-cipher-zeroize-key-buffer-after-use.patch
 drm-amdgpu-initialize-timestamp-for-some-legacy-socs.patch
 drm-amd-display-check-index-msg_id-before-read-or-wr.patch
diff --git a/queue-5.15/irqchip-gic-v3-its-remove-bug_on-in-its_vpe_irq_doma.patch b/queue-5.15/irqchip-gic-v3-its-remove-bug_on-in-its_vpe_irq_doma.patch
deleted file mode 100644 (file)
index f59e963..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-From 63fa0d12f873318e314562d760d9ed060657fb6c Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Thu, 18 Apr 2024 14:10:53 +0800
-Subject: irqchip/gic-v3-its: Remove BUG_ON in its_vpe_irq_domain_alloc
-
-From: Guanrui Huang <guanrui.huang@linux.alibaba.com>
-
-[ Upstream commit 382d2ffe86efb1e2fa803d2cf17e5bfc34e574f3 ]
-
-This BUG_ON() is useless, because the same effect will be obtained
-by letting the code run its course and vm being dereferenced,
-triggering an exception.
-
-So just remove this check.
-
-Signed-off-by: Guanrui Huang <guanrui.huang@linux.alibaba.com>
-Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
-Reviewed-by: Zenghui Yu <yuzenghui@huawei.com>
-Acked-by: Marc Zyngier <maz@kernel.org>
-Link: https://lore.kernel.org/r/20240418061053.96803-3-guanrui.huang@linux.alibaba.com
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- drivers/irqchip/irq-gic-v3-its.c | 2 --
- 1 file changed, 2 deletions(-)
-
-diff --git a/drivers/irqchip/irq-gic-v3-its.c b/drivers/irqchip/irq-gic-v3-its.c
-index fa89e590c1333..3fa6c71843261 100644
---- a/drivers/irqchip/irq-gic-v3-its.c
-+++ b/drivers/irqchip/irq-gic-v3-its.c
-@@ -4491,8 +4491,6 @@ static int its_vpe_irq_domain_alloc(struct irq_domain *domain, unsigned int virq
-       struct page *vprop_page;
-       int base, nr_ids, i, err = 0;
--      BUG_ON(!vm);
--
-       bitmap = its_lpi_alloc(roundup_pow_of_two(nr_irqs), &base, &nr_ids);
-       if (!bitmap)
-               return -ENOMEM;
--- 
-2.43.0
-
index 30983b9d73fb9d18d692e4b345e6621b2da24156..ca16a200b1d730c2af219f8c5dd769d10b9afdf3 100644 (file)
@@ -4,7 +4,6 @@ media-dvb-as102-fe-fix-as10x_register_addr-packing.patch
 media-dvb-usb-dib0700_devices-add-missing-release_fi.patch
 ib-core-implement-a-limit-on-umad-receive-list.patch
 scsi-qedf-make-qedf_execute_tmf-non-preemptible.patch
-irqchip-gic-v3-its-remove-bug_on-in-its_vpe_irq_doma.patch
 crypto-aead-cipher-zeroize-key-buffer-after-use.patch
 drm-amdgpu-initialize-timestamp-for-some-legacy-socs.patch
 drm-amd-display-check-index-msg_id-before-read-or-wr.patch
diff --git a/queue-5.4/irqchip-gic-v3-its-remove-bug_on-in-its_vpe_irq_doma.patch b/queue-5.4/irqchip-gic-v3-its-remove-bug_on-in-its_vpe_irq_doma.patch
deleted file mode 100644 (file)
index 45fc405..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-From b7e790929b930f798a0573afbc3c0b28e1c0c17d Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Thu, 18 Apr 2024 14:10:53 +0800
-Subject: irqchip/gic-v3-its: Remove BUG_ON in its_vpe_irq_domain_alloc
-
-From: Guanrui Huang <guanrui.huang@linux.alibaba.com>
-
-[ Upstream commit 382d2ffe86efb1e2fa803d2cf17e5bfc34e574f3 ]
-
-This BUG_ON() is useless, because the same effect will be obtained
-by letting the code run its course and vm being dereferenced,
-triggering an exception.
-
-So just remove this check.
-
-Signed-off-by: Guanrui Huang <guanrui.huang@linux.alibaba.com>
-Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
-Reviewed-by: Zenghui Yu <yuzenghui@huawei.com>
-Acked-by: Marc Zyngier <maz@kernel.org>
-Link: https://lore.kernel.org/r/20240418061053.96803-3-guanrui.huang@linux.alibaba.com
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- drivers/irqchip/irq-gic-v3-its.c | 2 --
- 1 file changed, 2 deletions(-)
-
-diff --git a/drivers/irqchip/irq-gic-v3-its.c b/drivers/irqchip/irq-gic-v3-its.c
-index d16776c6dee7b..ae3378ef469b0 100644
---- a/drivers/irqchip/irq-gic-v3-its.c
-+++ b/drivers/irqchip/irq-gic-v3-its.c
-@@ -3085,8 +3085,6 @@ static int its_vpe_irq_domain_alloc(struct irq_domain *domain, unsigned int virq
-       struct page *vprop_page;
-       int base, nr_ids, i, err = 0;
--      BUG_ON(!vm);
--
-       bitmap = its_lpi_alloc(roundup_pow_of_two(nr_irqs), &base, &nr_ids);
-       if (!bitmap)
-               return -ENOMEM;
--- 
-2.43.0
-
index 9ae8beb38682b646104eeba695bc0dcbdc9bd9fa..e1aa1fa2936d46237a8f188666a748f09f48e919 100644 (file)
@@ -3,7 +3,6 @@ media-dvb-as102-fe-fix-as10x_register_addr-packing.patch
 media-dvb-usb-dib0700_devices-add-missing-release_fi.patch
 ib-core-implement-a-limit-on-umad-receive-list.patch
 scsi-qedf-make-qedf_execute_tmf-non-preemptible.patch
-irqchip-gic-v3-its-remove-bug_on-in-its_vpe_irq_doma.patch
 drm-amdgpu-initialize-timestamp-for-some-legacy-socs.patch
 drm-amd-display-skip-finding-free-audio-for-unknown-.patch
 media-dw2102-don-t-translate-i2c-read-into-write.patch
diff --git a/queue-6.1/irqchip-gic-v3-its-remove-bug_on-in-its_vpe_irq_doma.patch b/queue-6.1/irqchip-gic-v3-its-remove-bug_on-in-its_vpe_irq_doma.patch
deleted file mode 100644 (file)
index 9abc0d9..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-From 902a39c973d95824257ad898dccc1530ed8056f1 Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Thu, 18 Apr 2024 14:10:53 +0800
-Subject: irqchip/gic-v3-its: Remove BUG_ON in its_vpe_irq_domain_alloc
-
-From: Guanrui Huang <guanrui.huang@linux.alibaba.com>
-
-[ Upstream commit 382d2ffe86efb1e2fa803d2cf17e5bfc34e574f3 ]
-
-This BUG_ON() is useless, because the same effect will be obtained
-by letting the code run its course and vm being dereferenced,
-triggering an exception.
-
-So just remove this check.
-
-Signed-off-by: Guanrui Huang <guanrui.huang@linux.alibaba.com>
-Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
-Reviewed-by: Zenghui Yu <yuzenghui@huawei.com>
-Acked-by: Marc Zyngier <maz@kernel.org>
-Link: https://lore.kernel.org/r/20240418061053.96803-3-guanrui.huang@linux.alibaba.com
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- drivers/irqchip/irq-gic-v3-its.c | 2 --
- 1 file changed, 2 deletions(-)
-
-diff --git a/drivers/irqchip/irq-gic-v3-its.c b/drivers/irqchip/irq-gic-v3-its.c
-index 3620bdb5200f2..a7a952bbfdc28 100644
---- a/drivers/irqchip/irq-gic-v3-its.c
-+++ b/drivers/irqchip/irq-gic-v3-its.c
-@@ -4476,8 +4476,6 @@ static int its_vpe_irq_domain_alloc(struct irq_domain *domain, unsigned int virq
-       struct page *vprop_page;
-       int base, nr_ids, i, err = 0;
--      BUG_ON(!vm);
--
-       bitmap = its_lpi_alloc(roundup_pow_of_two(nr_irqs), &base, &nr_ids);
-       if (!bitmap)
-               return -ENOMEM;
--- 
-2.43.0
-
diff --git a/queue-6.1/kunit-handle-test-faults.patch b/queue-6.1/kunit-handle-test-faults.patch
deleted file mode 100644 (file)
index 26338d5..0000000
+++ /dev/null
@@ -1,152 +0,0 @@
-From e27e45dd35e762a86b13c811599f3c98931061af Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Mon, 8 Apr 2024 09:46:22 +0200
-Subject: kunit: Handle test faults
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-From: Mickaël Salaün <mic@digikod.net>
-
-[ Upstream commit 3a35c13007dea132a65f07de05c26b87837fadc2 ]
-
-Previously, when a kernel test thread crashed (e.g. NULL pointer
-dereference, general protection fault), the KUnit test hanged for 30
-seconds and exited with a timeout error.
-
-Fix this issue by waiting on task_struct->vfork_done instead of the
-custom kunit_try_catch.try_completion, and track the execution state by
-initially setting try_result with -EINTR and only setting it to 0 if
-the test passed.
-
-Fix kunit_generic_run_threadfn_adapter() signature by returning 0
-instead of calling kthread_complete_and_exit().  Because thread's exit
-code is never checked, always set it to 0 to make it clear.  To make
-this explicit, export kthread_exit() for KUnit tests built as module.
-
-Fix the -EINTR error message, which couldn't be reached until now.
-
-This is tested with a following patch.
-
-Cc: Brendan Higgins <brendanhiggins@google.com>
-Cc: Eric W. Biederman <ebiederm@xmission.com>
-Cc: Shuah Khan <skhan@linuxfoundation.org>
-Reviewed-by: Kees Cook <keescook@chromium.org>
-Reviewed-by: David Gow <davidgow@google.com>
-Tested-by: Rae Moar <rmoar@google.com>
-Signed-off-by: Mickaël Salaün <mic@digikod.net>
-Link: https://lore.kernel.org/r/20240408074625.65017-5-mic@digikod.net
-Signed-off-by: Shuah Khan <skhan@linuxfoundation.org>
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- include/kunit/try-catch.h |  3 ---
- kernel/kthread.c          |  1 +
- lib/kunit/try-catch.c     | 19 ++++++++++++-------
- 3 files changed, 13 insertions(+), 10 deletions(-)
-
-diff --git a/include/kunit/try-catch.h b/include/kunit/try-catch.h
-index c507dd43119d5..7c966a1adbd30 100644
---- a/include/kunit/try-catch.h
-+++ b/include/kunit/try-catch.h
-@@ -14,13 +14,11 @@
- typedef void (*kunit_try_catch_func_t)(void *);
--struct completion;
- struct kunit;
- /**
-  * struct kunit_try_catch - provides a generic way to run code which might fail.
-  * @test: The test case that is currently being executed.
-- * @try_completion: Completion that the control thread waits on while test runs.
-  * @try_result: Contains any errno obtained while running test case.
-  * @try: The function, the test case, to attempt to run.
-  * @catch: The function called if @try bails out.
-@@ -46,7 +44,6 @@ struct kunit;
- struct kunit_try_catch {
-       /* private: internal use only. */
-       struct kunit *test;
--      struct completion *try_completion;
-       int try_result;
-       kunit_try_catch_func_t try;
-       kunit_try_catch_func_t catch;
-diff --git a/kernel/kthread.c b/kernel/kthread.c
-index f97fd01a29325..742e7c24b29f4 100644
---- a/kernel/kthread.c
-+++ b/kernel/kthread.c
-@@ -305,6 +305,7 @@ void __noreturn kthread_exit(long result)
-       kthread->result = result;
-       do_exit(0);
- }
-+EXPORT_SYMBOL(kthread_exit);
- /**
-  * kthread_complete_and_exit - Exit the current kthread.
-diff --git a/lib/kunit/try-catch.c b/lib/kunit/try-catch.c
-index 9c9e4dcf06d96..34d30a6f23054 100644
---- a/lib/kunit/try-catch.c
-+++ b/lib/kunit/try-catch.c
-@@ -18,7 +18,7 @@
- void __noreturn kunit_try_catch_throw(struct kunit_try_catch *try_catch)
- {
-       try_catch->try_result = -EFAULT;
--      kthread_complete_and_exit(try_catch->try_completion, -EFAULT);
-+      kthread_exit(0);
- }
- EXPORT_SYMBOL_GPL(kunit_try_catch_throw);
-@@ -26,9 +26,12 @@ static int kunit_generic_run_threadfn_adapter(void *data)
- {
-       struct kunit_try_catch *try_catch = data;
-+      try_catch->try_result = -EINTR;
-       try_catch->try(try_catch->context);
-+      if (try_catch->try_result == -EINTR)
-+              try_catch->try_result = 0;
--      kthread_complete_and_exit(try_catch->try_completion, 0);
-+      return 0;
- }
- static unsigned long kunit_test_timeout(void)
-@@ -58,13 +61,11 @@ static unsigned long kunit_test_timeout(void)
- void kunit_try_catch_run(struct kunit_try_catch *try_catch, void *context)
- {
--      DECLARE_COMPLETION_ONSTACK(try_completion);
-       struct kunit *test = try_catch->test;
-       struct task_struct *task_struct;
-       int exit_code, time_remaining;
-       try_catch->context = context;
--      try_catch->try_completion = &try_completion;
-       try_catch->try_result = 0;
-       task_struct = kthread_create(kunit_generic_run_threadfn_adapter,
-                                    try_catch, "kunit_try_catch_thread");
-@@ -74,8 +75,12 @@ void kunit_try_catch_run(struct kunit_try_catch *try_catch, void *context)
-       }
-       get_task_struct(task_struct);
-       wake_up_process(task_struct);
--
--      time_remaining = wait_for_completion_timeout(&try_completion,
-+      /*
-+       * As for a vfork(2), task_struct->vfork_done (pointing to the
-+       * underlying kthread->exited) can be used to wait for the end of a
-+       * kernel thread.
-+       */
-+      time_remaining = wait_for_completion_timeout(task_struct->vfork_done,
-                                                    kunit_test_timeout());
-       if (time_remaining == 0) {
-               try_catch->try_result = -ETIMEDOUT;
-@@ -91,7 +96,7 @@ void kunit_try_catch_run(struct kunit_try_catch *try_catch, void *context)
-       if (exit_code == -EFAULT)
-               try_catch->try_result = 0;
-       else if (exit_code == -EINTR)
--              kunit_err(test, "wake_up_process() was never called\n");
-+              kunit_err(test, "try faulted\n");
-       else if (exit_code == -ETIMEDOUT)
-               kunit_err(test, "try timed out\n");
-       else if (exit_code)
--- 
-2.43.0
-
index 602dd4847d94d90b40999e7b302bae90d785e30c..f073518c65747feb43d8f601872af70ea0489712 100644 (file)
@@ -6,7 +6,6 @@ media-dvb-as102-fe-fix-as10x_register_addr-packing.patch
 media-dvb-usb-dib0700_devices-add-missing-release_fi.patch
 ib-core-implement-a-limit-on-umad-receive-list.patch
 scsi-qedf-make-qedf_execute_tmf-non-preemptible.patch
-irqchip-gic-v3-its-remove-bug_on-in-its_vpe_irq_doma.patch
 crypto-aead-cipher-zeroize-key-buffer-after-use.patch
 drm-amdgpu-fix-uninitialized-variable-warnings.patch
 drm-amdgpu-initialize-timestamp-for-some-legacy-socs.patch
@@ -28,7 +27,6 @@ i2c-i801-annotate-apanel_addr-as-__ro_after_init.patch
 powerpc-64-set-_io_base-to-poison_pointer_delta-not-.patch
 orangefs-fix-out-of-bounds-fsid-access.patch
 kunit-fix-timeout-message.patch
-kunit-handle-test-faults.patch
 powerpc-xmon-check-cpu-id-in-commands-c-dp-and-dx.patch
 igc-fix-a-log-entry-using-uninitialized-netdev.patch
 bpf-avoid-uninitialized-value-in-bpf_core_read_bitfi.patch
diff --git a/queue-6.6/irqchip-gic-v3-its-remove-bug_on-in-its_vpe_irq_doma.patch b/queue-6.6/irqchip-gic-v3-its-remove-bug_on-in-its_vpe_irq_doma.patch
deleted file mode 100644 (file)
index 84cb8e6..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-From 47a92b2b270eaf9db033591d1b38e0bf1a51c11c Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Thu, 18 Apr 2024 14:10:53 +0800
-Subject: irqchip/gic-v3-its: Remove BUG_ON in its_vpe_irq_domain_alloc
-
-From: Guanrui Huang <guanrui.huang@linux.alibaba.com>
-
-[ Upstream commit 382d2ffe86efb1e2fa803d2cf17e5bfc34e574f3 ]
-
-This BUG_ON() is useless, because the same effect will be obtained
-by letting the code run its course and vm being dereferenced,
-triggering an exception.
-
-So just remove this check.
-
-Signed-off-by: Guanrui Huang <guanrui.huang@linux.alibaba.com>
-Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
-Reviewed-by: Zenghui Yu <yuzenghui@huawei.com>
-Acked-by: Marc Zyngier <maz@kernel.org>
-Link: https://lore.kernel.org/r/20240418061053.96803-3-guanrui.huang@linux.alibaba.com
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- drivers/irqchip/irq-gic-v3-its.c | 2 --
- 1 file changed, 2 deletions(-)
-
-diff --git a/drivers/irqchip/irq-gic-v3-its.c b/drivers/irqchip/irq-gic-v3-its.c
-index c7d6e6987166f..350abbb36e04b 100644
---- a/drivers/irqchip/irq-gic-v3-its.c
-+++ b/drivers/irqchip/irq-gic-v3-its.c
-@@ -4501,8 +4501,6 @@ static int its_vpe_irq_domain_alloc(struct irq_domain *domain, unsigned int virq
-       struct page *vprop_page;
-       int base, nr_ids, i, err = 0;
--      BUG_ON(!vm);
--
-       bitmap = its_lpi_alloc(roundup_pow_of_two(nr_irqs), &base, &nr_ids);
-       if (!bitmap)
-               return -ENOMEM;
--- 
-2.43.0
-
diff --git a/queue-6.6/kunit-handle-test-faults.patch b/queue-6.6/kunit-handle-test-faults.patch
deleted file mode 100644 (file)
index a6e8eab..0000000
+++ /dev/null
@@ -1,152 +0,0 @@
-From 080a463fab2314c87a1878033833405694ca3a5e Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Mon, 8 Apr 2024 09:46:22 +0200
-Subject: kunit: Handle test faults
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-From: Mickaël Salaün <mic@digikod.net>
-
-[ Upstream commit 3a35c13007dea132a65f07de05c26b87837fadc2 ]
-
-Previously, when a kernel test thread crashed (e.g. NULL pointer
-dereference, general protection fault), the KUnit test hanged for 30
-seconds and exited with a timeout error.
-
-Fix this issue by waiting on task_struct->vfork_done instead of the
-custom kunit_try_catch.try_completion, and track the execution state by
-initially setting try_result with -EINTR and only setting it to 0 if
-the test passed.
-
-Fix kunit_generic_run_threadfn_adapter() signature by returning 0
-instead of calling kthread_complete_and_exit().  Because thread's exit
-code is never checked, always set it to 0 to make it clear.  To make
-this explicit, export kthread_exit() for KUnit tests built as module.
-
-Fix the -EINTR error message, which couldn't be reached until now.
-
-This is tested with a following patch.
-
-Cc: Brendan Higgins <brendanhiggins@google.com>
-Cc: Eric W. Biederman <ebiederm@xmission.com>
-Cc: Shuah Khan <skhan@linuxfoundation.org>
-Reviewed-by: Kees Cook <keescook@chromium.org>
-Reviewed-by: David Gow <davidgow@google.com>
-Tested-by: Rae Moar <rmoar@google.com>
-Signed-off-by: Mickaël Salaün <mic@digikod.net>
-Link: https://lore.kernel.org/r/20240408074625.65017-5-mic@digikod.net
-Signed-off-by: Shuah Khan <skhan@linuxfoundation.org>
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- include/kunit/try-catch.h |  3 ---
- kernel/kthread.c          |  1 +
- lib/kunit/try-catch.c     | 19 ++++++++++++-------
- 3 files changed, 13 insertions(+), 10 deletions(-)
-
-diff --git a/include/kunit/try-catch.h b/include/kunit/try-catch.h
-index c507dd43119d5..7c966a1adbd30 100644
---- a/include/kunit/try-catch.h
-+++ b/include/kunit/try-catch.h
-@@ -14,13 +14,11 @@
- typedef void (*kunit_try_catch_func_t)(void *);
--struct completion;
- struct kunit;
- /**
-  * struct kunit_try_catch - provides a generic way to run code which might fail.
-  * @test: The test case that is currently being executed.
-- * @try_completion: Completion that the control thread waits on while test runs.
-  * @try_result: Contains any errno obtained while running test case.
-  * @try: The function, the test case, to attempt to run.
-  * @catch: The function called if @try bails out.
-@@ -46,7 +44,6 @@ struct kunit;
- struct kunit_try_catch {
-       /* private: internal use only. */
-       struct kunit *test;
--      struct completion *try_completion;
-       int try_result;
-       kunit_try_catch_func_t try;
-       kunit_try_catch_func_t catch;
-diff --git a/kernel/kthread.c b/kernel/kthread.c
-index 290cbc845225e..2afdba66b729e 100644
---- a/kernel/kthread.c
-+++ b/kernel/kthread.c
-@@ -315,6 +315,7 @@ void __noreturn kthread_exit(long result)
-       kthread->result = result;
-       do_exit(0);
- }
-+EXPORT_SYMBOL(kthread_exit);
- /**
-  * kthread_complete_and_exit - Exit the current kthread.
-diff --git a/lib/kunit/try-catch.c b/lib/kunit/try-catch.c
-index 9c9e4dcf06d96..34d30a6f23054 100644
---- a/lib/kunit/try-catch.c
-+++ b/lib/kunit/try-catch.c
-@@ -18,7 +18,7 @@
- void __noreturn kunit_try_catch_throw(struct kunit_try_catch *try_catch)
- {
-       try_catch->try_result = -EFAULT;
--      kthread_complete_and_exit(try_catch->try_completion, -EFAULT);
-+      kthread_exit(0);
- }
- EXPORT_SYMBOL_GPL(kunit_try_catch_throw);
-@@ -26,9 +26,12 @@ static int kunit_generic_run_threadfn_adapter(void *data)
- {
-       struct kunit_try_catch *try_catch = data;
-+      try_catch->try_result = -EINTR;
-       try_catch->try(try_catch->context);
-+      if (try_catch->try_result == -EINTR)
-+              try_catch->try_result = 0;
--      kthread_complete_and_exit(try_catch->try_completion, 0);
-+      return 0;
- }
- static unsigned long kunit_test_timeout(void)
-@@ -58,13 +61,11 @@ static unsigned long kunit_test_timeout(void)
- void kunit_try_catch_run(struct kunit_try_catch *try_catch, void *context)
- {
--      DECLARE_COMPLETION_ONSTACK(try_completion);
-       struct kunit *test = try_catch->test;
-       struct task_struct *task_struct;
-       int exit_code, time_remaining;
-       try_catch->context = context;
--      try_catch->try_completion = &try_completion;
-       try_catch->try_result = 0;
-       task_struct = kthread_create(kunit_generic_run_threadfn_adapter,
-                                    try_catch, "kunit_try_catch_thread");
-@@ -74,8 +75,12 @@ void kunit_try_catch_run(struct kunit_try_catch *try_catch, void *context)
-       }
-       get_task_struct(task_struct);
-       wake_up_process(task_struct);
--
--      time_remaining = wait_for_completion_timeout(&try_completion,
-+      /*
-+       * As for a vfork(2), task_struct->vfork_done (pointing to the
-+       * underlying kthread->exited) can be used to wait for the end of a
-+       * kernel thread.
-+       */
-+      time_remaining = wait_for_completion_timeout(task_struct->vfork_done,
-                                                    kunit_test_timeout());
-       if (time_remaining == 0) {
-               try_catch->try_result = -ETIMEDOUT;
-@@ -91,7 +96,7 @@ void kunit_try_catch_run(struct kunit_try_catch *try_catch, void *context)
-       if (exit_code == -EFAULT)
-               try_catch->try_result = 0;
-       else if (exit_code == -EINTR)
--              kunit_err(test, "wake_up_process() was never called\n");
-+              kunit_err(test, "try faulted\n");
-       else if (exit_code == -ETIMEDOUT)
-               kunit_err(test, "try timed out\n");
-       else if (exit_code)
--- 
-2.43.0
-
diff --git a/queue-6.6/powerpc-dexcr-track-the-dexcr-per-process.patch b/queue-6.6/powerpc-dexcr-track-the-dexcr-per-process.patch
deleted file mode 100644 (file)
index 0b82c3a..0000000
+++ /dev/null
@@ -1,95 +0,0 @@
-From 5236722cd74a1f92589c43b268044b1ae1be1d86 Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Wed, 17 Apr 2024 21:23:18 +1000
-Subject: powerpc/dexcr: Track the DEXCR per-process
-
-From: Benjamin Gray <bgray@linux.ibm.com>
-
-[ Upstream commit 75171f06c4507c3b6b5a69d793879fb20d108bb1 ]
-
-Add capability to make the DEXCR act as a per-process SPR.
-
-We do not yet have an interface for changing the values per task. We
-also expect the kernel to use a single DEXCR value across all tasks
-while in privileged state, so there is no need to synchronize after
-changing it (the userspace aspects will synchronize upon returning to
-userspace).
-
-Signed-off-by: Benjamin Gray <bgray@linux.ibm.com>
-Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
-Link: https://msgid.link/20240417112325.728010-3-bgray@linux.ibm.com
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- arch/powerpc/include/asm/processor.h     |  1 +
- arch/powerpc/kernel/process.c            | 10 ++++++++++
- arch/powerpc/kernel/ptrace/ptrace-view.c |  7 +------
- 3 files changed, 12 insertions(+), 6 deletions(-)
-
-diff --git a/arch/powerpc/include/asm/processor.h b/arch/powerpc/include/asm/processor.h
-index b2c51d337e60c..882e31296ea6b 100644
---- a/arch/powerpc/include/asm/processor.h
-+++ b/arch/powerpc/include/asm/processor.h
-@@ -260,6 +260,7 @@ struct thread_struct {
-       unsigned long   sier2;
-       unsigned long   sier3;
-       unsigned long   hashkeyr;
-+      unsigned long   dexcr;
- #endif
- };
-diff --git a/arch/powerpc/kernel/process.c b/arch/powerpc/kernel/process.c
-index 9452a54d356c9..d482c3fd81d7a 100644
---- a/arch/powerpc/kernel/process.c
-+++ b/arch/powerpc/kernel/process.c
-@@ -1185,6 +1185,9 @@ static inline void save_sprs(struct thread_struct *t)
-       if (cpu_has_feature(CPU_FTR_DEXCR_NPHIE))
-               t->hashkeyr = mfspr(SPRN_HASHKEYR);
-+
-+      if (cpu_has_feature(CPU_FTR_ARCH_31))
-+              t->dexcr = mfspr(SPRN_DEXCR);
- #endif
- }
-@@ -1267,6 +1270,10 @@ static inline void restore_sprs(struct thread_struct *old_thread,
-       if (cpu_has_feature(CPU_FTR_DEXCR_NPHIE) &&
-           old_thread->hashkeyr != new_thread->hashkeyr)
-               mtspr(SPRN_HASHKEYR, new_thread->hashkeyr);
-+
-+      if (cpu_has_feature(CPU_FTR_ARCH_31) &&
-+          old_thread->dexcr != new_thread->dexcr)
-+              mtspr(SPRN_DEXCR, new_thread->dexcr);
- #endif
- }
-@@ -1878,6 +1885,9 @@ int copy_thread(struct task_struct *p, const struct kernel_clone_args *args)
- #ifdef CONFIG_PPC_BOOK3S_64
-       if (cpu_has_feature(CPU_FTR_DEXCR_NPHIE))
-               p->thread.hashkeyr = current->thread.hashkeyr;
-+
-+      if (cpu_has_feature(CPU_FTR_ARCH_31))
-+              p->thread.dexcr = mfspr(SPRN_DEXCR);
- #endif
-       return 0;
- }
-diff --git a/arch/powerpc/kernel/ptrace/ptrace-view.c b/arch/powerpc/kernel/ptrace/ptrace-view.c
-index 584cf5c3df509..c1819e0a66842 100644
---- a/arch/powerpc/kernel/ptrace/ptrace-view.c
-+++ b/arch/powerpc/kernel/ptrace/ptrace-view.c
-@@ -469,12 +469,7 @@ static int dexcr_get(struct task_struct *target, const struct user_regset *regse
-       if (!cpu_has_feature(CPU_FTR_ARCH_31))
-               return -ENODEV;
--      /*
--       * The DEXCR is currently static across all CPUs, so we don't
--       * store the target's value anywhere, but the static value
--       * will also be correct.
--       */
--      membuf_store(&to, (u64)lower_32_bits(DEXCR_INIT));
-+      membuf_store(&to, (u64)lower_32_bits(target->thread.dexcr));
-       /*
-        * Technically the HDEXCR is per-cpu, but a hypervisor can't reasonably
--- 
-2.43.0
-
index c3fe45e50ccc420fdecc70a99f2c29fbda934b97..492f1129f37442db22eaa0668d92b13c5d81c6a7 100644 (file)
@@ -7,7 +7,6 @@ media-dvb-as102-fe-fix-as10x_register_addr-packing.patch
 media-dvb-usb-dib0700_devices-add-missing-release_fi.patch
 ib-core-implement-a-limit-on-umad-receive-list.patch
 scsi-qedf-make-qedf_execute_tmf-non-preemptible.patch
-irqchip-gic-v3-its-remove-bug_on-in-its_vpe_irq_doma.patch
 selftests-bpf-adjust-dummy_st_ops_success-to-detect-.patch
 selftests-bpf-do-not-pass-null-for-non-nullable-para.patch
 selftests-bpf-dummy_st_ops-should-reject-0-for-non-n.patch
@@ -36,12 +35,10 @@ net-dsa-mv88e6xxx-correct-check-for-empty-list.patch
 media-dvb-frontends-tda18271c2dd-remove-casting-duri.patch
 media-s2255-use-refcount_t-instead-of-atomic_t-for-n.patch
 media-dvb-frontends-tda10048-fix-integer-overflow.patch
-powerpc-dexcr-track-the-dexcr-per-process.patch
 i2c-i801-annotate-apanel_addr-as-__ro_after_init.patch
 powerpc-64-set-_io_base-to-poison_pointer_delta-not-.patch
 orangefs-fix-out-of-bounds-fsid-access.patch
 kunit-fix-timeout-message.patch
-kunit-handle-test-faults.patch
 powerpc-xmon-check-cpu-id-in-commands-c-dp-and-dx.patch
 selftests-net-fix-uninitialized-variables.patch
 igc-fix-a-log-entry-using-uninitialized-netdev.patch
diff --git a/queue-6.9/irqchip-gic-v3-its-remove-bug_on-in-its_vpe_irq_doma.patch b/queue-6.9/irqchip-gic-v3-its-remove-bug_on-in-its_vpe_irq_doma.patch
deleted file mode 100644 (file)
index b16772f..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-From 26ca8971ba590e3c23b9768e541b9e9205b27e99 Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Thu, 18 Apr 2024 14:10:53 +0800
-Subject: irqchip/gic-v3-its: Remove BUG_ON in its_vpe_irq_domain_alloc
-
-From: Guanrui Huang <guanrui.huang@linux.alibaba.com>
-
-[ Upstream commit 382d2ffe86efb1e2fa803d2cf17e5bfc34e574f3 ]
-
-This BUG_ON() is useless, because the same effect will be obtained
-by letting the code run its course and vm being dereferenced,
-triggering an exception.
-
-So just remove this check.
-
-Signed-off-by: Guanrui Huang <guanrui.huang@linux.alibaba.com>
-Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
-Reviewed-by: Zenghui Yu <yuzenghui@huawei.com>
-Acked-by: Marc Zyngier <maz@kernel.org>
-Link: https://lore.kernel.org/r/20240418061053.96803-3-guanrui.huang@linux.alibaba.com
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- drivers/irqchip/irq-gic-v3-its.c | 2 --
- 1 file changed, 2 deletions(-)
-
-diff --git a/drivers/irqchip/irq-gic-v3-its.c b/drivers/irqchip/irq-gic-v3-its.c
-index 6dbac6ec778ee..33fa6b7f41c93 100644
---- a/drivers/irqchip/irq-gic-v3-its.c
-+++ b/drivers/irqchip/irq-gic-v3-its.c
-@@ -4507,8 +4507,6 @@ static int its_vpe_irq_domain_alloc(struct irq_domain *domain, unsigned int virq
-       struct page *vprop_page;
-       int base, nr_ids, i, err = 0;
--      BUG_ON(!vm);
--
-       bitmap = its_lpi_alloc(roundup_pow_of_two(nr_irqs), &base, &nr_ids);
-       if (!bitmap)
-               return -ENOMEM;
--- 
-2.43.0
-
diff --git a/queue-6.9/kunit-handle-test-faults.patch b/queue-6.9/kunit-handle-test-faults.patch
deleted file mode 100644 (file)
index f471201..0000000
+++ /dev/null
@@ -1,152 +0,0 @@
-From 2d873e7b1358877e1f41c1631a2ac1c7d70d0b5b Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Mon, 8 Apr 2024 09:46:22 +0200
-Subject: kunit: Handle test faults
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-From: Mickaël Salaün <mic@digikod.net>
-
-[ Upstream commit 3a35c13007dea132a65f07de05c26b87837fadc2 ]
-
-Previously, when a kernel test thread crashed (e.g. NULL pointer
-dereference, general protection fault), the KUnit test hanged for 30
-seconds and exited with a timeout error.
-
-Fix this issue by waiting on task_struct->vfork_done instead of the
-custom kunit_try_catch.try_completion, and track the execution state by
-initially setting try_result with -EINTR and only setting it to 0 if
-the test passed.
-
-Fix kunit_generic_run_threadfn_adapter() signature by returning 0
-instead of calling kthread_complete_and_exit().  Because thread's exit
-code is never checked, always set it to 0 to make it clear.  To make
-this explicit, export kthread_exit() for KUnit tests built as module.
-
-Fix the -EINTR error message, which couldn't be reached until now.
-
-This is tested with a following patch.
-
-Cc: Brendan Higgins <brendanhiggins@google.com>
-Cc: Eric W. Biederman <ebiederm@xmission.com>
-Cc: Shuah Khan <skhan@linuxfoundation.org>
-Reviewed-by: Kees Cook <keescook@chromium.org>
-Reviewed-by: David Gow <davidgow@google.com>
-Tested-by: Rae Moar <rmoar@google.com>
-Signed-off-by: Mickaël Salaün <mic@digikod.net>
-Link: https://lore.kernel.org/r/20240408074625.65017-5-mic@digikod.net
-Signed-off-by: Shuah Khan <skhan@linuxfoundation.org>
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- include/kunit/try-catch.h |  3 ---
- kernel/kthread.c          |  1 +
- lib/kunit/try-catch.c     | 19 ++++++++++++-------
- 3 files changed, 13 insertions(+), 10 deletions(-)
-
-diff --git a/include/kunit/try-catch.h b/include/kunit/try-catch.h
-index c507dd43119d5..7c966a1adbd30 100644
---- a/include/kunit/try-catch.h
-+++ b/include/kunit/try-catch.h
-@@ -14,13 +14,11 @@
- typedef void (*kunit_try_catch_func_t)(void *);
--struct completion;
- struct kunit;
- /**
-  * struct kunit_try_catch - provides a generic way to run code which might fail.
-  * @test: The test case that is currently being executed.
-- * @try_completion: Completion that the control thread waits on while test runs.
-  * @try_result: Contains any errno obtained while running test case.
-  * @try: The function, the test case, to attempt to run.
-  * @catch: The function called if @try bails out.
-@@ -46,7 +44,6 @@ struct kunit;
- struct kunit_try_catch {
-       /* private: internal use only. */
-       struct kunit *test;
--      struct completion *try_completion;
-       int try_result;
-       kunit_try_catch_func_t try;
-       kunit_try_catch_func_t catch;
-diff --git a/kernel/kthread.c b/kernel/kthread.c
-index c5e40830c1f2d..f7be976ff88af 100644
---- a/kernel/kthread.c
-+++ b/kernel/kthread.c
-@@ -315,6 +315,7 @@ void __noreturn kthread_exit(long result)
-       kthread->result = result;
-       do_exit(0);
- }
-+EXPORT_SYMBOL(kthread_exit);
- /**
-  * kthread_complete_and_exit - Exit the current kthread.
-diff --git a/lib/kunit/try-catch.c b/lib/kunit/try-catch.c
-index 9c9e4dcf06d96..34d30a6f23054 100644
---- a/lib/kunit/try-catch.c
-+++ b/lib/kunit/try-catch.c
-@@ -18,7 +18,7 @@
- void __noreturn kunit_try_catch_throw(struct kunit_try_catch *try_catch)
- {
-       try_catch->try_result = -EFAULT;
--      kthread_complete_and_exit(try_catch->try_completion, -EFAULT);
-+      kthread_exit(0);
- }
- EXPORT_SYMBOL_GPL(kunit_try_catch_throw);
-@@ -26,9 +26,12 @@ static int kunit_generic_run_threadfn_adapter(void *data)
- {
-       struct kunit_try_catch *try_catch = data;
-+      try_catch->try_result = -EINTR;
-       try_catch->try(try_catch->context);
-+      if (try_catch->try_result == -EINTR)
-+              try_catch->try_result = 0;
--      kthread_complete_and_exit(try_catch->try_completion, 0);
-+      return 0;
- }
- static unsigned long kunit_test_timeout(void)
-@@ -58,13 +61,11 @@ static unsigned long kunit_test_timeout(void)
- void kunit_try_catch_run(struct kunit_try_catch *try_catch, void *context)
- {
--      DECLARE_COMPLETION_ONSTACK(try_completion);
-       struct kunit *test = try_catch->test;
-       struct task_struct *task_struct;
-       int exit_code, time_remaining;
-       try_catch->context = context;
--      try_catch->try_completion = &try_completion;
-       try_catch->try_result = 0;
-       task_struct = kthread_create(kunit_generic_run_threadfn_adapter,
-                                    try_catch, "kunit_try_catch_thread");
-@@ -74,8 +75,12 @@ void kunit_try_catch_run(struct kunit_try_catch *try_catch, void *context)
-       }
-       get_task_struct(task_struct);
-       wake_up_process(task_struct);
--
--      time_remaining = wait_for_completion_timeout(&try_completion,
-+      /*
-+       * As for a vfork(2), task_struct->vfork_done (pointing to the
-+       * underlying kthread->exited) can be used to wait for the end of a
-+       * kernel thread.
-+       */
-+      time_remaining = wait_for_completion_timeout(task_struct->vfork_done,
-                                                    kunit_test_timeout());
-       if (time_remaining == 0) {
-               try_catch->try_result = -ETIMEDOUT;
-@@ -91,7 +96,7 @@ void kunit_try_catch_run(struct kunit_try_catch *try_catch, void *context)
-       if (exit_code == -EFAULT)
-               try_catch->try_result = 0;
-       else if (exit_code == -EINTR)
--              kunit_err(test, "wake_up_process() was never called\n");
-+              kunit_err(test, "try faulted\n");
-       else if (exit_code == -ETIMEDOUT)
-               kunit_err(test, "try timed out\n");
-       else if (exit_code)
--- 
-2.43.0
-
diff --git a/queue-6.9/powerpc-dexcr-track-the-dexcr-per-process.patch b/queue-6.9/powerpc-dexcr-track-the-dexcr-per-process.patch
deleted file mode 100644 (file)
index febf9b1..0000000
+++ /dev/null
@@ -1,96 +0,0 @@
-From 0e94b82304e7a726b27dd46394fe22b6c1ebcd60 Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Wed, 17 Apr 2024 21:23:18 +1000
-Subject: powerpc/dexcr: Track the DEXCR per-process
-
-From: Benjamin Gray <bgray@linux.ibm.com>
-
-[ Upstream commit 75171f06c4507c3b6b5a69d793879fb20d108bb1 ]
-
-Add capability to make the DEXCR act as a per-process SPR.
-
-We do not yet have an interface for changing the values per task. We
-also expect the kernel to use a single DEXCR value across all tasks
-while in privileged state, so there is no need to synchronize after
-changing it (the userspace aspects will synchronize upon returning to
-userspace).
-
-Signed-off-by: Benjamin Gray <bgray@linux.ibm.com>
-Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
-Link: https://msgid.link/20240417112325.728010-3-bgray@linux.ibm.com
-Stable-dep-of: bbd99922d0f4 ("powerpc/dexcr: Reset DEXCR value across exec")
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- arch/powerpc/include/asm/processor.h     |  1 +
- arch/powerpc/kernel/process.c            | 10 ++++++++++
- arch/powerpc/kernel/ptrace/ptrace-view.c |  7 +------
- 3 files changed, 12 insertions(+), 6 deletions(-)
-
-diff --git a/arch/powerpc/include/asm/processor.h b/arch/powerpc/include/asm/processor.h
-index b2c51d337e60c..882e31296ea6b 100644
---- a/arch/powerpc/include/asm/processor.h
-+++ b/arch/powerpc/include/asm/processor.h
-@@ -260,6 +260,7 @@ struct thread_struct {
-       unsigned long   sier2;
-       unsigned long   sier3;
-       unsigned long   hashkeyr;
-+      unsigned long   dexcr;
- #endif
- };
-diff --git a/arch/powerpc/kernel/process.c b/arch/powerpc/kernel/process.c
-index 9452a54d356c9..d482c3fd81d7a 100644
---- a/arch/powerpc/kernel/process.c
-+++ b/arch/powerpc/kernel/process.c
-@@ -1185,6 +1185,9 @@ static inline void save_sprs(struct thread_struct *t)
-       if (cpu_has_feature(CPU_FTR_DEXCR_NPHIE))
-               t->hashkeyr = mfspr(SPRN_HASHKEYR);
-+
-+      if (cpu_has_feature(CPU_FTR_ARCH_31))
-+              t->dexcr = mfspr(SPRN_DEXCR);
- #endif
- }
-@@ -1267,6 +1270,10 @@ static inline void restore_sprs(struct thread_struct *old_thread,
-       if (cpu_has_feature(CPU_FTR_DEXCR_NPHIE) &&
-           old_thread->hashkeyr != new_thread->hashkeyr)
-               mtspr(SPRN_HASHKEYR, new_thread->hashkeyr);
-+
-+      if (cpu_has_feature(CPU_FTR_ARCH_31) &&
-+          old_thread->dexcr != new_thread->dexcr)
-+              mtspr(SPRN_DEXCR, new_thread->dexcr);
- #endif
- }
-@@ -1878,6 +1885,9 @@ int copy_thread(struct task_struct *p, const struct kernel_clone_args *args)
- #ifdef CONFIG_PPC_BOOK3S_64
-       if (cpu_has_feature(CPU_FTR_DEXCR_NPHIE))
-               p->thread.hashkeyr = current->thread.hashkeyr;
-+
-+      if (cpu_has_feature(CPU_FTR_ARCH_31))
-+              p->thread.dexcr = mfspr(SPRN_DEXCR);
- #endif
-       return 0;
- }
-diff --git a/arch/powerpc/kernel/ptrace/ptrace-view.c b/arch/powerpc/kernel/ptrace/ptrace-view.c
-index 584cf5c3df509..c1819e0a66842 100644
---- a/arch/powerpc/kernel/ptrace/ptrace-view.c
-+++ b/arch/powerpc/kernel/ptrace/ptrace-view.c
-@@ -469,12 +469,7 @@ static int dexcr_get(struct task_struct *target, const struct user_regset *regse
-       if (!cpu_has_feature(CPU_FTR_ARCH_31))
-               return -ENODEV;
--      /*
--       * The DEXCR is currently static across all CPUs, so we don't
--       * store the target's value anywhere, but the static value
--       * will also be correct.
--       */
--      membuf_store(&to, (u64)lower_32_bits(DEXCR_INIT));
-+      membuf_store(&to, (u64)lower_32_bits(target->thread.dexcr));
-       /*
-        * Technically the HDEXCR is per-cpu, but a hypervisor can't reasonably
--- 
-2.43.0
-
index e3e34f8cef979d8e1e230235b8bb04fa4e4a8837..f981244c2f5bc72fa0fd9b9ef3432743949d902f 100644 (file)
@@ -12,7 +12,6 @@ wifi-rtw89-fw-scan-offload-prohibit-all-6-ghz-channe.patch
 drm-xe-add-outer-runtime_pm-protection-to-xe_live_kt.patch
 ib-core-implement-a-limit-on-umad-receive-list.patch
 scsi-qedf-make-qedf_execute_tmf-non-preemptible.patch
-irqchip-gic-v3-its-remove-bug_on-in-its_vpe_irq_doma.patch
 bpf-mark-bpf_dummy_struct_ops.test_1-parameter-as-nu.patch
 selftests-bpf-adjust-dummy_st_ops_success-to-detect-.patch
 selftests-bpf-do-not-pass-null-for-non-nullable-para.patch
@@ -54,13 +53,11 @@ media-i2c-st-mipid02-use-the-correct-div-function.patch
 media-tc358746-use-the-correct-div_-function.patch
 media-dvb-frontends-tda10048-fix-integer-overflow.patch
 crypto-hisilicon-sec2-fix-for-register-offset.patch
-powerpc-dexcr-track-the-dexcr-per-process.patch
 gve-account-for-stopped-queues-when-reading-nic-stat.patch
 i2c-i801-annotate-apanel_addr-as-__ro_after_init.patch
 powerpc-64-set-_io_base-to-poison_pointer_delta-not-.patch
 orangefs-fix-out-of-bounds-fsid-access.patch
 kunit-fix-timeout-message.patch
-kunit-handle-test-faults.patch
 powerpc-xmon-check-cpu-id-in-commands-c-dp-and-dx.patch
 selftests-net-fix-uninitialized-variables.patch
 igc-fix-a-log-entry-using-uninitialized-netdev.patch