From: Tejun Heo <tj@kernel.org>
To: John Clark <clarkjc@runbox.com>
Cc: Jeff Garzik <jgarzik@pobox.com>, linux-ide@vger.kernel.org
Subject: Re: Interoperability problem with Quantum CD72SH SATA tape drive and libata
Date: Wed, 01 Oct 2008 12:21:12 +0900 [thread overview]
Message-ID: <48E2ECA8.8060808@kernel.org> (raw)
In-Reply-To: <48DE96AF.6090301@runbox.com>
John Clark wrote:
> Hello,
>
> I've discovered an issue with the Quantum CD72SH SATA tape drive. I set
> it to variable block size, try to write a 5317 byte block with an ATAPI
> issued WRITE(6), and it hangs. The drive is connected to an Intel ICH9R
> in AHCI mode.
>
> My debugging efforts have determined that it's a problem with the
> drive's firmware. It does not like ATAPI CDBs with odd (& 1) transfer
> lengths with PIO. If I let it use DMA, even if it's not a multiple of
> 16 bytes, then it seems to work:
>
> --- libata-core.c.orig 2008-09-27 16:12:46.000000000 -0400
> +++ libata-core.c 2008-09-27 16:11:29.000000000 -0400
> @@ -4669,8 +4669,8 @@
> /* Don't allow DMA if it isn't multiple of 16 bytes. Quite a
> * few ATAPI devices choke on such DMA requests.
> */
> - if (unlikely(qc->nbytes & 15))
> - return 1;
> + // if (unlikely(qc->nbytes & 15))
> + // return 1;
>
> if (ap->ops->check_atapi_dma)
> return ap->ops->check_atapi_dma(qc);
>
>
>
> This is an acceptable solution for my limited use, but I'd like to see
> it work out of the box. It seems frightening that there are ATAPI
> devices out there that choke on PIO requests. What would you like to do?
We can create a HORKAGE for it. Can you please post the result of
"hdparm -I" of the device?
--
tejun
next prev parent reply other threads:[~2008-10-01 3:23 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-09-27 20:25 Interoperability problem with Quantum CD72SH SATA tape drive and libata John Clark
2008-10-01 3:21 ` Tejun Heo [this message]
2008-10-01 23:13 ` John Clark
2008-10-04 20:45 ` Tejun Heo
2008-10-06 19:36 ` John Clark
2008-10-07 1:29 ` Tejun Heo
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=48E2ECA8.8060808@kernel.org \
--to=tj@kernel.org \
--cc=clarkjc@runbox.com \
--cc=jgarzik@pobox.com \
--cc=linux-ide@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).