Re: thinkpad x60: sound problems in 4.15-rc1 was Re: thinkpad x60: sound problems in 4.14.0-next-20171114

From: Thomas Gleixner
Date: Thu Dec 28 2017 - 05:41:55 EST


On Sun, 24 Dec 2017, vcaputo@xxxxxxxxxxx wrote:
> On Sat, Dec 23, 2017 at 09:33:37PM +0100, Thomas Gleixner wrote:
> > > It seems like the affinity changes are assuming a strict adherence to
> > > the CPU mask when the underlying hardware is treating it more as a hint.
> > > Perhaps handlers still need to be maintained on all CPUs in a given apic
> > > domain, regardless of what the masks are configured as, to cover these
> > > situations.
> >
> > That's odd. I'll have a look after the holidays.
> >
>
> Ok, just FYI I've reproduced it on rc5 as well.
>
> I may be offline a bit at the start of the new year, in case you've got
> something for me to test and I'm unresponsive.

Can you try the patch below?

Thanks,

tglx

8<---------------
--- a/arch/x86/kernel/apic/apic_flat_64.c
+++ b/arch/x86/kernel/apic/apic_flat_64.c
@@ -151,7 +151,7 @@ static struct apic apic_flat __ro_after_
.apic_id_valid = default_apic_id_valid,
.apic_id_registered = flat_apic_id_registered,

- .irq_delivery_mode = dest_LowestPrio,
+ .irq_delivery_mode = dest_Fixed,
.irq_dest_mode = 1, /* logical */

.disable_esr = 0,
--- a/arch/x86/kernel/apic/probe_32.c
+++ b/arch/x86/kernel/apic/probe_32.c
@@ -105,7 +105,7 @@ static struct apic apic_default __ro_aft
.apic_id_valid = default_apic_id_valid,
.apic_id_registered = default_apic_id_registered,

- .irq_delivery_mode = dest_LowestPrio,
+ .irq_delivery_mode = dest_Fixed,
/* logical delivery broadcast to all CPUs: */
.irq_dest_mode = 1,

--- a/arch/x86/kernel/apic/x2apic_cluster.c
+++ b/arch/x86/kernel/apic/x2apic_cluster.c
@@ -184,7 +184,7 @@ static struct apic apic_x2apic_cluster _
.apic_id_valid = x2apic_apic_id_valid,
.apic_id_registered = x2apic_apic_id_registered,

- .irq_delivery_mode = dest_LowestPrio,
+ .irq_delivery_mode = dest_Fixed,
.irq_dest_mode = 1, /* logical */

.disable_esr = 0,