Re: [PATCH v2 1/3] genirq/affinity: Add irq_update_affinity_desc()

From: Marc Zyngier
Date: Thu Nov 26 2020 - 06:08:44 EST


Hi John,

On 2020-11-26 10:47, John Garry wrote:
Hi Marc,

Right, I did consider this.

FWIW, I've pushed my hack branch[1]

Did you miss that reference?

I did:

https://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms.git/log/?h=irq/hacks


out with a couple of patches
for you to try (the top 3 patches). They allow platform-MSI domains
created by devices (mbigen, ICU) to be advertised as shared between
devices, so that the low-level driver can handle that in an appropriate
way.

I gave it a go on my D05 and nothing blew up, but I can't really remove
the kernel module, as that's where my disks are... :-/

You still should be able to enable my favorite
CONFIG_DEBUG_TEST_DRIVER_REMOVE=y, while the distro still boot. But
I'll just test if you want.

Ah! Let me try that then. Having been debugging some ugly driver removal
lately, I wish I had known that config option and inflicted it on their
authors...

[...]

And while the mbigen port that is connected to the SAS controller
doesn't seem to be shared between endpoints, some other ports definitely
are:

# cat /sys/kernel/debug/irq/domains/\\_SB.MBI1
name:   \_SB.MBI1
 size:   409
 mapped: 192
 flags:  0x00000003

[...]

I guess that the other 217 lines are connected somewhere.


I think that is not the right one. See
https://github.com/tianocore/edk2-platforms/blob/master/Silicon/Hisilicon/Hi1616/D05AcpiTables/Dsdt/D05Sas.asl#L101


I know, I was just outlining the fact that some of the mbigen
ports are shared between devices, and MBI1 seems to be an example
of that (though my reading of ASL is... primitive).

Thanks,

M.
--
Jazz is not dead. It just smells funny...