summaryrefslogtreecommitdiffstats
path: root/drivers/ata/libata-core.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@woody.linux-foundation.org>2007-10-15 13:31:14 -0700
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-10-15 13:31:14 -0700
commit85ffdd28be04c324349dfc7c9de3d4342c885c3f (patch)
treeff89600f2661d7abd5be7802bdb33c9d8d3f1fa4 /drivers/ata/libata-core.c
parent43d39ae0cf8f891c35e8316948229c7cbffa3994 (diff)
parent77ec15cc265af2c165b7e39cadcaddb9e64aac3d (diff)
Merge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev
* 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev: [libata] pata_pcmcia: Add additional id string (corsair, 1GB) libata: prevent devices with blank model names from being DMA blacklisted ata_piix: SATA 2port controller port map fix pata_cs5536: ATA driver for Geode companion chip libata: add ST9160821AS / 3.CCD to NCQ blacklist libata: fix revalidation issuing after configuration commands [libata] sata_nv: add SW NCQ support for MCP51/MCP55/MCP61 [libata] pata_sil680: Add MMIO support
Diffstat (limited to 'drivers/ata/libata-core.c')
-rw-r--r--drivers/ata/libata-core.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-core.c
index b05384a8c32..68699b3e799 100644
--- a/drivers/ata/libata-core.c
+++ b/drivers/ata/libata-core.c
@@ -3984,6 +3984,7 @@ static const struct ata_blacklist_entry ata_device_blacklist [] = {
{ "ST9120822AS", "3.CLF", ATA_HORKAGE_NONCQ, },
{ "ST9160821AS", "3.CLF", ATA_HORKAGE_NONCQ, },
{ "ST9160821AS", "3.ALD", ATA_HORKAGE_NONCQ, },
+ { "ST9160821AS", "3.CCD", ATA_HORKAGE_NONCQ, },
{ "ST3160812AS", "3.ADJ", ATA_HORKAGE_NONCQ, },
{ "ST980813AS", "3.ADB", ATA_HORKAGE_NONCQ, },
{ "SAMSUNG HD401LJ", "ZZ100-15", ATA_HORKAGE_NONCQ, },
@@ -4013,8 +4014,14 @@ int strn_pattern_cmp(const char *patt, const char *name, int wildchar)
p = strchr(patt, wildchar);
if (p && ((*(p + 1)) == 0))
len = p - patt;
- else
+ else {
len = strlen(name);
+ if (!len) {
+ if (!*patt)
+ return 0;
+ return -1;
+ }
+ }
return strncmp(patt, name, len);
}