diff options
author | Mark Lord <kernel@teksavvy.com> | 2010-08-20 10:13:16 -0400 |
---|---|---|
committer | Jeff Garzik <jgarzik@redhat.com> | 2010-08-25 19:24:16 -0400 |
commit | 55ee67f837882f28a900705a2ca1af257ab6c53d (patch) | |
tree | 91393e3155968c1654bfdf89fdbe404afd736554 /drivers/ata/libata-sff.c | |
parent | 44b733809a5aba7f6b15a548d31a56d25bf3851c (diff) |
libata-sff: remove harmful BUG_ON from ata_bmdma_qc_issue
Remove harmful BUG_ON() from ata_bmdma_qc_issue(),
as it casts too wide of a net and breaks sata_mv.
It also crashes the kernel while doing the BUG_ON().
There's already a WARN_ON_ONCE() further down to catch
the case of POLLING for a BMDMA operation.
Signed-off-by: Mark Lord <mlord@pobox.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
Cc: stable@kernel.org
Diffstat (limited to 'drivers/ata/libata-sff.c')
-rw-r--r-- | drivers/ata/libata-sff.c | 4 |
1 files changed, 0 insertions, 4 deletions
diff --git a/drivers/ata/libata-sff.c b/drivers/ata/libata-sff.c index 674c1436491f..3b82d8ef76f0 100644 --- a/drivers/ata/libata-sff.c +++ b/drivers/ata/libata-sff.c | |||
@@ -2735,10 +2735,6 @@ unsigned int ata_bmdma_qc_issue(struct ata_queued_cmd *qc) | |||
2735 | { | 2735 | { |
2736 | struct ata_port *ap = qc->ap; | 2736 | struct ata_port *ap = qc->ap; |
2737 | 2737 | ||
2738 | /* see ata_dma_blacklisted() */ | ||
2739 | BUG_ON((ap->flags & ATA_FLAG_PIO_POLLING) && | ||
2740 | qc->tf.protocol == ATAPI_PROT_DMA); | ||
2741 | |||
2742 | /* defer PIO handling to sff_qc_issue */ | 2738 | /* defer PIO handling to sff_qc_issue */ |
2743 | if (!ata_is_dma(qc->tf.protocol)) | 2739 | if (!ata_is_dma(qc->tf.protocol)) |
2744 | return ata_sff_qc_issue(qc); | 2740 | return ata_sff_qc_issue(qc); |