Re: [PATCH v2] x86: adjust irq remapping quirk for older revisions of 5500/5520 chipsets

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Mar 12, 2014 at 11:18:29PM +0100, Thomas Gleixner wrote:
> On Wed, 12 Mar 2014, Neil Horman wrote:
> 
> > A while back I posted this commit:
> > 
> > commit 03bbcb2e7e292838bb0244f5a7816d194c911d62
> > Author: Neil Horman <nhorman@xxxxxxxxxxxxx>
> > Date:   Tue Apr 16 16:38:32 2013 -0400
> > 
> >     iommu/vt-d: add quirk for broken interrupt remapping on 55XX chipsets
> > 
> > Which properly disables irq remapping on the 5500/5520 chipsets that don't
> > correctly perform that feature.  However, when I wrote it, I followed the errata
> > sheet linked in that commit too closely, and explicitly tied the activation of
> > the quirk to revision 0x13 of the chip, under the assumption that earlier
> > revisions were not in the field.  Recently a system was reported to be suffering
> > from this remap bug and the quirk hadn't triggered, because the revision id
> > register read at a lower value that 0x13, so the quirk test failed improperly.
> > Given this, it seems only prudent to adjust this quirk so that any revision less
> > than 0x13 has the quirk asserted.
> > 
> > Signed-off-by: Neil Horman <nhorman@xxxxxxxxxxxxx>
> > CC: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
> > CC: Ingo Molnar <mingo@xxxxxxxxxx>
> > CC: "H. Peter Anvin" <hpa@xxxxxxxxx>
> > CC: x86@xxxxxxxxxx
> 
> That probably wants to go to stable as well.
>  
Thanks, your right, cc-ing stable
Neil

> > ---
> > Change notes:
> > 
> > v2) fix stupid < / <= error
> > ---
> >  arch/x86/kernel/early-quirks.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> > 
> > diff --git a/arch/x86/kernel/early-quirks.c b/arch/x86/kernel/early-quirks.c
> > index bc4a088..e69907a 100644
> > --- a/arch/x86/kernel/early-quirks.c
> > +++ b/arch/x86/kernel/early-quirks.c
> > @@ -208,7 +208,7 @@ static void __init intel_remapping_check(int num, int slot, int func)
> >  	 * and should be flagged as broken.  Additionally revisions 0x12
> >  	 * and 0x22 of device id 0x3405 has this problem.
> >  	 */
> > -	if (revision == 0x13)
> > +	if (revision <= 0x13)
> >  		set_irq_remapping_broken();
> >  	else if ((device == 0x3405) &&
> >  	    ((revision == 0x12) ||
> > -- 
> > 1.8.3.1
> > 
> > 
> 
--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]