lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <5073cad4-d960-40c1-a777-1f597a4ca999@roeck-us.net>
Date: Fri, 22 Aug 2025 18:13:54 -0700
From: Guenter Roeck <linux@...ck-us.net>
To: Brian Norris <briannorris@...omium.org>
Cc: Thomas Gleixner <tglx@...utronix.de>, David Gow <davidgow@...gle.com>,
	linux-kernel@...r.kernel.org,
	Geert Uytterhoeven <geert@...ux-m68k.org>,
	kunit-dev@...glegroups.com
Subject: Re: [PATCH v2 5/6] genirq/test: Drop CONFIG_GENERIC_IRQ_MIGRATION
 assumptions

On Fri, Aug 22, 2025 at 11:59:06AM -0700, Brian Norris wrote:
> Not all platforms use the generic IRQ migration code, even if they
> select GENERIC_IRQ_MIGRATION. (See, for example, powerpc /
> pseries_cpu_disable().)
> 
> If such platforms don't perform managed shutdown the same way, the IRQ
> may not actually shut down, and we'll fail these tests:
> 
> [    4.357022][  T101]     # irq_cpuhotplug_test: EXPECTATION FAILED at kernel/irq/irq_test.c:211
> [    4.357022][  T101]     Expected irqd_is_activated(data) to be false, but is true
> [    4.358128][  T101]     # irq_cpuhotplug_test: EXPECTATION FAILED at kernel/irq/irq_test.c:212
> [    4.358128][  T101]     Expected irqd_is_started(data) to be false, but is true
> [    4.375558][  T101]     # irq_cpuhotplug_test: EXPECTATION FAILED at kernel/irq/irq_test.c:216
> [    4.375558][  T101]     Expected irqd_is_activated(data) to be false, but is true
> [    4.376088][  T101]     # irq_cpuhotplug_test: EXPECTATION FAILED at kernel/irq/irq_test.c:217
> [    4.376088][  T101]     Expected irqd_is_started(data) to be false, but is true
> [    4.377851][    T1]     # irq_cpuhotplug_test: pass:0 fail:1 skip:0 total:1
> [    4.377901][    T1]     not ok 4 irq_cpuhotplug_test
> [    4.378073][    T1] # irq_test_cases: pass:3 fail:1 skip:0 total:4
> 
> Rather than test that PowerPC performs migration the same way as the IRQ
> core, let's just drop the state checks. The point of the test was to
> ensure we kept |depth| balanced, and we can still test for that.
> 
> Fixes: 66067c3c8a1e ("genirq: Add kunit tests for depth counts")
> Reported-by: Guenter Roeck <linux@...ck-us.net>
> Signed-off-by: Brian Norris <briannorris@...omium.org>
> Reviewed-by: David Gow <davidgow@...gle.com>

Tested-by: Guenter Roeck <linux@...ck-us.net>

> ---
> 
> (no changes since v1)
> 
>  kernel/irq/irq_test.c | 4 ----
>  1 file changed, 4 deletions(-)
> 
> diff --git a/kernel/irq/irq_test.c b/kernel/irq/irq_test.c
> index 56baeb5041d6..bbb89a3e1153 100644
> --- a/kernel/irq/irq_test.c
> +++ b/kernel/irq/irq_test.c
> @@ -203,13 +203,9 @@ static void irq_cpuhotplug_test(struct kunit *test)
>  	KUNIT_EXPECT_EQ(test, desc->depth, 1);
>  
>  	KUNIT_EXPECT_EQ(test, remove_cpu(1), 0);
> -	KUNIT_EXPECT_FALSE(test, irqd_is_activated(data));
> -	KUNIT_EXPECT_FALSE(test, irqd_is_started(data));
>  	KUNIT_EXPECT_GE(test, desc->depth, 1);
>  	KUNIT_EXPECT_EQ(test, add_cpu(1), 0);
>  
> -	KUNIT_EXPECT_FALSE(test, irqd_is_activated(data));
> -	KUNIT_EXPECT_FALSE(test, irqd_is_started(data));
>  	KUNIT_EXPECT_EQ(test, desc->depth, 1);
>  
>  	enable_irq(virq);
> -- 
> 2.51.0.rc2.233.g662b1ed5c5-goog
> 

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ