Re: [RFC] On the Current Troubles of Mainlining Loongson Platform Drivers

From: Aaro Koskinen
Date: Sun Feb 17 2019 - 18:59:57 EST


On Sun, Feb 17, 2019 at 01:59:26AM -0300, Alexandre Oliva wrote:
> On Feb 11, 2019, Aaro Koskinen <aaro.koskinen@xxxxxx> wrote:
>
> > ATA (libata) CS5536 driver is having issues with spurious IRQs and often
> > disables IRQs completely during the boot. You should see a warning
> > in dmesg. This was the reason for slowness on my FuLoong mini-PC. A
> > workaround is to switch to old IDE driver.
>
> Thanks. I see a NIEN quirk in ide-iops.c that's enabled for the hard
> drive model I've got on my yeeloong, but that's not even compiled in my
> freeloong builds. I don't see any changes in libata between 4.19 and
> 4.20 that could explain the regression either.

I tested few older kernels, and it seems that the spurious IRQ issue has
been always there after switching to libata (commit 7ff7a5b1bfff). It has
been unnoticed as the 100000 irq limit wasn't reached during boot. But
since libata probe is asynchronous some other kernel thread may delay it,
and apparently some change in recent kernels adds enough delay to make the
IRQ count to hit the limit.

> I'm afraid there's no observable change in behavior after installing the
> proposed patch at
> https://lore.kernel.org/linux-mips/20190106124607.GK27785@xxxxxxxxxxxxxxxxxxxxxxxxx/
>
> The kernel still disables irq14 early on, and then runs slow.

This hack works only for CONFIG_PATA_CS5536. You are probably using PATA_AMD.

A.