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] [day] [month] [year] [list]
Message-ID: <877cfkffiu.ffs@tglx>
Date: Thu, 23 May 2024 22:18:49 +0200
From: Thomas Gleixner <tglx@...utronix.de>
To: Mukesh Ojha <quic_mojha@...cinc.com>
Cc: linux-kernel@...r.kernel.org
Subject: Re: [PATCH] genirq/chip: Fix the warn for non-SMP system

On Fri, May 17 2024 at 01:00, Mukesh Ojha wrote:

We don't fix warnings. We fix the underlying problem.

> __irq_startup_managed() for !SMP system returns IRQ_STARTUP_NORMAL
> which may result in a WARNING during enablement of an irq i.e.,
> starting a irq while it is not activated.
>
> Fix this by appropriately returning IRQ_STARTUP_MANAGED.

What does that fix?

Absolutely nothing because both cases at the call site invoke
__irq_startup() which warns if the interrupt has not been activated yet.

It's not magically activated when __irq_startup_managed() returns
IRQ_STARTUP_MANAGED.

Also if you look at the SMP variant of that function then you might
notice that IRQ_STARTUP_MANAGED is not returned unconditionally. That
function can return IRQ_STARTUP_NORMAL too.

Just for the record. There are no managed interrupts on SMP=n. The code
which can initialize them is not even compiled in.

So I have no idea why you think that this has anything to do with
managed interrupts.

What's worse is that this does not even build on UP because
irq_do_set_affinity() does not exists for SMP=n. It builds today because
the IRQ_STARTUP_MANAGED case is optimized out by the compiler.

Sigh,

        tglx

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ