2007-02-22 05:54:18

by Robert Hancock

[permalink] [raw]
Subject: [PATCH] libata: add NCQ blacklist entries from Silicon Image Windows driver

This patch adds in some NCQ blacklist entries taken from the Silicon
Image Windows drivers' .inf files for the 3124 and 3132 controllers.
These entries were marked as ""DisableSataQueueing". Assume these are
in their blacklist for a reason and disable NCQ on these drives.

Signed-off-by: Robert Hancock <[email protected]>

--- linux-2.6.21-rc1edit/drivers/ata/libata-core.c.prev 2007-02-21 22:23:05.000000000 -0600
+++ linux-2.6.21-rc1edit/drivers/ata/libata-core.c 2007-02-21 22:25:44.000000000 -0600
@@ -3269,6 +3269,13 @@ static const struct ata_blacklist_entry

/* Devices with NCQ limits */

+ /* The following blacklist entries are taken from the Windows
+ driver .inf files for the Silicon Image 3124 and 3132. */
+ { "Maxtor 7B250S0", "BANC1B70", ATA_HORKAGE_NONCQ, },
+ { "HTS541060G9SA00", "MB3OC60D", ATA_HORKAGE_NONCQ, },
+ { "HTS541080G9SA00", "MB4OC60D", ATA_HORKAGE_NONCQ, },
+ { "HTS541010G9SA00", "MBZOC60D", ATA_HORKAGE_NONCQ, },
+
/* End Marker */
{ }
};


2007-02-22 06:57:19

by Jeff Garzik

[permalink] [raw]
Subject: Re: [PATCH] libata: add NCQ blacklist entries from Silicon Image Windows driver

Robert Hancock wrote:
> This patch adds in some NCQ blacklist entries taken from the Silicon
> Image Windows drivers' .inf files for the 3124 and 3132 controllers.
> These entries were marked as ""DisableSataQueueing". Assume these are
> in their blacklist for a reason and disable NCQ on these drives.
>
> Signed-off-by: Robert Hancock <[email protected]>
>
> --- linux-2.6.21-rc1edit/drivers/ata/libata-core.c.prev 2007-02-21
> 22:23:05.000000000 -0600
> +++ linux-2.6.21-rc1edit/drivers/ata/libata-core.c 2007-02-21
> 22:25:44.000000000 -0600
> @@ -3269,6 +3269,13 @@ static const struct ata_blacklist_entry
> /* Devices with NCQ limits */
>
> + /* The following blacklist entries are taken from the Windows
> + driver .inf files for the Silicon Image 3124 and 3132. */
> + { "Maxtor 7B250S0", "BANC1B70", ATA_HORKAGE_NONCQ, },
> + { "HTS541060G9SA00", "MB3OC60D", ATA_HORKAGE_NONCQ, },
> + { "HTS541080G9SA00", "MB4OC60D", ATA_HORKAGE_NONCQ, },
> + { "HTS541010G9SA00", "MBZOC60D", ATA_HORKAGE_NONCQ, },

Do we have information that these drives fail on non-SiI controllers?

Sometimes the problem can be related to a single family of controllers.

Jeff



2007-02-22 11:05:38

by Jens Axboe

[permalink] [raw]
Subject: Re: [PATCH] libata: add NCQ blacklist entries from Silicon Image Windows driver

On Thu, Feb 22 2007, Jeff Garzik wrote:
> Robert Hancock wrote:
> >This patch adds in some NCQ blacklist entries taken from the Silicon
> >Image Windows drivers' .inf files for the 3124 and 3132 controllers.
> >These entries were marked as ""DisableSataQueueing". Assume these are
> >in their blacklist for a reason and disable NCQ on these drives.
> >
> >Signed-off-by: Robert Hancock <[email protected]>
> >
> >--- linux-2.6.21-rc1edit/drivers/ata/libata-core.c.prev 2007-02-21
> >22:23:05.000000000 -0600
> >+++ linux-2.6.21-rc1edit/drivers/ata/libata-core.c 2007-02-21
> >22:25:44.000000000 -0600
> >@@ -3269,6 +3269,13 @@ static const struct ata_blacklist_entry
> > /* Devices with NCQ limits */
> >
> >+ /* The following blacklist entries are taken from the Windows
> >+ driver .inf files for the Silicon Image 3124 and 3132. */
> >+ { "Maxtor 7B250S0", "BANC1B70", ATA_HORKAGE_NONCQ, },
> >+ { "HTS541060G9SA00", "MB3OC60D", ATA_HORKAGE_NONCQ, },
> >+ { "HTS541080G9SA00", "MB4OC60D", ATA_HORKAGE_NONCQ, },
> >+ { "HTS541010G9SA00", "MBZOC60D", ATA_HORKAGE_NONCQ, },
>
> Do we have information that these drives fail on non-SiI controllers?
>
> Sometimes the problem can be related to a single family of controllers.

I don't know about the Hitachi's, but the Maxtor with that firmware is
definitely broken. It _appeared_ to work if the depth was limited to 4,
but I didn't test it long enough to be absolutely certain. So the safest
is indeed to blacklist it.

I'm pretty sure my initial NCQ patches had a blacklist entry for that
drive as well, but apparently the blacklist got lost somewhere along the
way?

--
Jens Axboe

2007-02-22 14:41:29

by Mark Lord

[permalink] [raw]
Subject: Re: [PATCH] libata: add NCQ blacklist entries from Silicon Image Windows driver

Jens Axboe wrote:
>> Robert Hancock wrote:
>..
>>> + /* The following blacklist entries are taken from the Windows
>>> + driver .inf files for the Silicon Image 3124 and 3132. */
>>> + { "Maxtor 7B250S0", "BANC1B70", ATA_HORKAGE_NONCQ, },
>>> + { "HTS541060G9SA00", "MB3OC60D", ATA_HORKAGE_NONCQ, },
>>> + { "HTS541080G9SA00", "MB4OC60D", ATA_HORKAGE_NONCQ, },
>>> + { "HTS541010G9SA00", "MBZOC60D", ATA_HORKAGE_NONCQ, },
>> Do we have information that these drives fail on non-SiI controllers?
>>
>> Sometimes the problem can be related to a single family of controllers.
>
> I don't know about the Hitachi's, but the Maxtor with that firmware is
> definitely broken. It _appeared_ to work if the depth was limited to 4,
> but I didn't test it long enough to be absolutely certain. So the safest
> is indeed to blacklist it.

Yes, broken on the Silicon Image controllers for sure.
But what type of controller did you observe the failures on, Jens ?

2007-02-22 15:11:43

by Ask Bjørn Hansen

[permalink] [raw]
Subject: Re: [PATCH] libata: add NCQ blacklist entries from Silicon Image Windows driver


On Feb 21, 2007, at 10:57 PM, Jeff Garzik wrote:

>> + /* The following blacklist entries are taken from the Windows
>> + driver .inf files for the Silicon Image 3124 and 3132. */
>> + { "Maxtor 7B250S0", "BANC1B70", ATA_HORKAGE_NONCQ, },
[...]
>
> Do we have information that these drives fail on non-SiI controllers?

At least tangentially related:

On one of my boxes (running 2.6.18-1.2869 from Fedora) I have a
couple of other Maxtor drives that didn't like NCQ. They are on a
JMicron 20360/20363 (ahci driver). (There's also a Promise 300 TX4
card in the box and an Intel ICH8 that shows up with ata_piix).

model and (partial) firmware revision of the drives:
Maxtor 7V300F0 VA11
Maxtor 7B300S0 BANC

Until I disabled NCQ I got gazillions of messages like the ones below
and absymal performance.

- ask


ata5: spurious interrupt (irq_stat 0x8 active_tag -84148995 sactive 0xf)
ata6: spurious interrupt (irq_stat 0x8 active_tag -84148995 sactive
0x33)
ata5: spurious interrupt (irq_stat 0x8 active_tag -84148995 sactive 0x0)
ata6: spurious interrupt (irq_stat 0x8 active_tag -84148995 sactive 0x0)
ata5: spurious interrupt (irq_stat 0x8 active_tag -84148995 sactive 0x0)
ata6: spurious interrupt (irq_stat 0x8 active_tag -84148995 sactive 0x0)
ata6: spurious interrupt (irq_stat 0x8 active_tag -84148995 sactive
0x38)
ata5: spurious interrupt (irq_stat 0x8 active_tag -84148995 sactive
0x3c)
ata5: spurious interrupt (irq_stat 0x8 active_tag -84148995 sactive
0xf2)
ata5: spurious interrupt (irq_stat 0x8 active_tag -84148995 sactive
0x1c)



--
http://develooper.com/ - http://askask.com/


2007-02-22 15:42:03

by Jens Axboe

[permalink] [raw]
Subject: Re: [PATCH] libata: add NCQ blacklist entries from Silicon Image Windows driver

On Thu, Feb 22 2007, Mark Lord wrote:
> Jens Axboe wrote:
> >>Robert Hancock wrote:
> >..
> >>>+ /* The following blacklist entries are taken from the Windows
> >>>+ driver .inf files for the Silicon Image 3124 and 3132. */
> >>>+ { "Maxtor 7B250S0", "BANC1B70", ATA_HORKAGE_NONCQ, },
> >>>+ { "HTS541060G9SA00", "MB3OC60D", ATA_HORKAGE_NONCQ, },
> >>>+ { "HTS541080G9SA00", "MB4OC60D", ATA_HORKAGE_NONCQ, },
> >>>+ { "HTS541010G9SA00", "MBZOC60D", ATA_HORKAGE_NONCQ, },
> >>Do we have information that these drives fail on non-SiI controllers?
> >>
> >>Sometimes the problem can be related to a single family of controllers.
> >
> >I don't know about the Hitachi's, but the Maxtor with that firmware is
> >definitely broken. It _appeared_ to work if the depth was limited to 4,
> >but I didn't test it long enough to be absolutely certain. So the safest
> >is indeed to blacklist it.
>
> Yes, broken on the Silicon Image controllers for sure.
> But what type of controller did you observe the failures on, Jens ?

achi

--
Jens Axboe

2007-02-23 00:18:53

by Robert Hancock

[permalink] [raw]
Subject: Re: [PATCH] libata: add NCQ blacklist entries from Silicon Image Windows driver

Ask Bj?rn Hansen wrote:
>
> On Feb 21, 2007, at 10:57 PM, Jeff Garzik wrote:
>
>>> + /* The following blacklist entries are taken from the Windows
>>> + driver .inf files for the Silicon Image 3124 and 3132. */
>>> + { "Maxtor 7B250S0", "BANC1B70", ATA_HORKAGE_NONCQ, },
> [...]
>>
>> Do we have information that these drives fail on non-SiI controllers?
>
> At least tangentially related:
>
> On one of my boxes (running 2.6.18-1.2869 from Fedora) I have a couple
> of other Maxtor drives that didn't like NCQ. They are on a JMicron
> 20360/20363 (ahci driver). (There's also a Promise 300 TX4 card in the
> box and an Intel ICH8 that shows up with ata_piix).
>
> model and (partial) firmware revision of the drives:
> Maxtor 7V300F0 VA11
> Maxtor 7B300S0 BANC
>
> Until I disabled NCQ I got gazillions of messages like the ones below
> and absymal performance.
>
> - ask
>
>
> ata5: spurious interrupt (irq_stat 0x8 active_tag -84148995 sactive 0xf)

Sounds like those are some that we should be blacklisting as well,
unless Eric has a good reason why not (CCing). Can you provide the full
firmware revision strings from those drives, i.e. from "hdparm -I"?

--
Robert Hancock Saskatoon, SK, Canada
To email, remove "nospam" from [email protected]
Home Page: http://www.roberthancock.com/

2007-02-23 00:21:44

by Ask Bjørn Hansen

[permalink] [raw]
Subject: Re: [PATCH] libata: add NCQ blacklist entries from Silicon Image Windows driver


On Feb 22, 2007, at 4:18 PM, Robert Hancock wrote:

>> model and (partial) firmware revision of the drives:
>> Maxtor 7V300F0 VA11
>> Maxtor 7B300S0 BANC
>> Until I disabled NCQ I got gazillions of messages like the ones
>> below and absymal performance.
>> - ask
>> ata5: spurious interrupt (irq_stat 0x8 active_tag -84148995
>> sactive 0xf)
>
> Sounds like those are some that we should be blacklisting as well,
> unless Eric has a good reason why not (CCing). Can you provide the
> full firmware revision strings from those drives, i.e. from "hdparm
> -I"?

ATA device, with non-removable media
Model Number: Maxtor 7B300S0
Firmware Revision: BANC1B70

ATA device, with non-removable media
Model Number: Maxtor 7V300F0
Firmware Revision: VA111630


- ask

--
http://develooper.com/ - http://askask.com/


2007-02-23 22:16:44

by Jeff Garzik

[permalink] [raw]
Subject: Re: [PATCH] libata: add NCQ blacklist entries from Silicon Image Windows driver

Robert Hancock wrote:
> This patch adds in some NCQ blacklist entries taken from the Silicon
> Image Windows drivers' .inf files for the 3124 and 3132 controllers.
> These entries were marked as ""DisableSataQueueing". Assume these are
> in their blacklist for a reason and disable NCQ on these drives.
>
> Signed-off-by: Robert Hancock <[email protected]>
>
> --- linux-2.6.21-rc1edit/drivers/ata/libata-core.c.prev 2007-02-21
> 22:23:05.000000000 -0600
> +++ linux-2.6.21-rc1edit/drivers/ata/libata-core.c 2007-02-21
> 22:25:44.000000000 -0600
> @@ -3269,6 +3269,13 @@ static const struct ata_blacklist_entry
> /* Devices with NCQ limits */
>
> + /* The following blacklist entries are taken from the Windows
> + driver .inf files for the Silicon Image 3124 and 3132. */
> + { "Maxtor 7B250S0", "BANC1B70", ATA_HORKAGE_NONCQ, },
> + { "HTS541060G9SA00", "MB3OC60D", ATA_HORKAGE_NONCQ, },
> + { "HTS541080G9SA00", "MB4OC60D", ATA_HORKAGE_NONCQ, },
> + { "HTS541010G9SA00", "MBZOC60D", ATA_HORKAGE_NONCQ, },


The general consensus of private emails seems to be that its ok to
blacklist the Maxtor one, at least.

So let's go ahead and at least get that entry in.

Jeff