From: Albert Lee <albertcc@tw.ibm.com>
To: Mark Lord <liml@rtr.ca>
Cc: albertl@mail.com, Tejun Heo <htejun@gmail.com>,
Stanislav Brabec <sbrabec@novell.com>,
jeff@garzik.org, bzolnier@gmail.com, alan@lxorguk.ukuu.org.uk,
paul@paulbristow.net, chrubis@suse.cz, linux-ide@vger.kernel.org
Subject: Re: IOMEGA IDE ZIP (ATAPI) drive
Date: Tue, 20 Mar 2007 18:16:35 +0800 [thread overview]
Message-ID: <45FFB483.5080705@tw.ibm.com> (raw)
In-Reply-To: <45FEAB63.70307@rtr.ca>
Mark Lord wrote:
> Albert Lee wrote:
>
>> Mark Lord wrote:
>> ..
>>
>>> I patched the above in, and it was NEVER hit.
>>
>>
>> Do you mean no "wait for DRQ" messages at all?
>> Is the HSM violation still seen?
>
>
> The code you sent me to patch in was never hit.
> The "wait for DRQ" message therefore never gets output.
> The exact same set of HSM violation messages still appear.
>
> Of course this makes perfect sense -- the HSM messages
> are not being generated in response to any command,
> but rather in response to ejecting a disk -- which I think
> causes the drive to generate an unsolicited event.
>
Hi Mark,
Could you please apply the attached debug patch (against 2.6.21-rc4).
(BTW, the zip 100 must be connected to ata4.)
Hopefully we could have more clue about the HSM violation.
--
thanks,
albert
diff -Nrup linux-2.6.21-rc4/drivers/ata/libata-core.c linux-2.6.21-rc4-mod/drivers/ata/libata-core.c
--- linux-2.6.21-rc4/drivers/ata/libata-core.c 2007-03-16 08:20:01.000000000 +0800
+++ linux-2.6.21-rc4-mod/drivers/ata/libata-core.c 2007-03-20 18:04:15.000000000 +0800
@@ -4350,8 +4350,9 @@ int ata_hsm_move(struct ata_port *ap, st
WARN_ON(in_wq != ata_hsm_ok_in_wq(ap, qc));
fsm_start:
- DPRINTK("ata%u: protocol %d task_state %d (dev_stat 0x%X)\n",
- ap->print_id, qc->tf.protocol, ap->hsm_task_state, status);
+ if (ap->print_id == 4)
+ printk(KERN_ERR "ata%u: protocol %d task_state %d (dev_stat 0x%X)\n",
+ ap->print_id, qc->tf.protocol, ap->hsm_task_state, status);
switch (ap->hsm_task_state) {
case HSM_ST_FIRST:
@@ -5071,8 +5072,14 @@ inline unsigned int ata_host_intr (struc
struct ata_eh_info *ehi = &ap->eh_info;
u8 status, host_stat = 0;
- VPRINTK("ata%u: protocol %d task_state %d\n",
- ap->print_id, qc->tf.protocol, ap->hsm_task_state);
+ if (ap->print_id == 4) {
+ printk(KERN_ERR "ata%u: protocol %d task_state %d\n",
+ ap->print_id, qc->tf.protocol, ap->hsm_task_state);
+
+ host_stat = ap->ops->bmdma_status(ap);
+ printk(KERN_ERR "ata%u: host_stat 0x%X\n", ap->print_id, host_stat);
+ }
+
/* Check whether we are expecting interrupt in this state */
switch (ap->hsm_task_state) {
@@ -5118,11 +5125,17 @@ inline unsigned int ata_host_intr (struc
/* check altstatus */
status = ata_altstatus(ap);
+ if (ap->print_id == 4)
+ printk(KERN_ERR "ata%u: dev_altstatus 0x%X\n",
+ ap->print_id, status);
if (status & ATA_BUSY)
goto idle_irq;
/* check main status, clearing INTRQ */
status = ata_chk_status(ap);
+ if (ap->print_id == 4)
+ printk(KERN_ERR "ata%u: dev_status 0x%X\n",
+ ap->print_id, status);
if (unlikely(status & ATA_BUSY))
goto idle_irq;
diff -Nrup linux-2.6.21-rc4/drivers/ata/libata-scsi.c linux-2.6.21-rc4-mod/drivers/ata/libata-scsi.c
--- linux-2.6.21-rc4/drivers/ata/libata-scsi.c 2007-03-16 08:20:01.000000000 +0800
+++ linux-2.6.21-rc4-mod/drivers/ata/libata-scsi.c 2007-03-20 18:05:38.000000000 +0800
@@ -2773,17 +2773,17 @@ static inline ata_xlat_func_t ata_get_xl
static inline void ata_scsi_dump_cdb(struct ata_port *ap,
struct scsi_cmnd *cmd)
{
-#ifdef ATA_DEBUG
struct scsi_device *scsidev = cmd->device;
u8 *scsicmd = cmd->cmnd;
- DPRINTK("CDB (%u:%d,%d,%d) %02x %02x %02x %02x %02x %02x %02x %02x %02x\n",
- ap->print_id,
- scsidev->channel, scsidev->id, scsidev->lun,
- scsicmd[0], scsicmd[1], scsicmd[2], scsicmd[3],
- scsicmd[4], scsicmd[5], scsicmd[6], scsicmd[7],
- scsicmd[8]);
-#endif
+ if (ap->print_id == 4) {
+ printk(KERN_ERR "CDB (%u:%d,%d,%d) %02x %02x %02x %02x %02x %02x %02x %02x %02x\n",
+ ap->print_id,
+ scsidev->channel, scsidev->id, scsidev->lun,
+ scsicmd[0], scsicmd[1], scsicmd[2], scsicmd[3],
+ scsicmd[4], scsicmd[5], scsicmd[6], scsicmd[7],
+ scsicmd[8]);
+ }
}
static inline int __ata_scsi_queuecmd(struct scsi_cmnd *scmd,
next prev parent reply other threads:[~2007-03-20 10:16 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-03-14 10:19 regression: ide-floppy doesn't work with IOMEGA IDE ZIP drive Stanislav Brabec
2007-03-14 11:58 ` Tejun Heo
2007-03-14 13:30 ` Mark Lord
2007-03-14 13:48 ` Tejun Heo
2007-03-15 22:12 ` IOMEGA IDE ZIP (ATAPI) drive Mark Lord
2007-03-16 14:30 ` Albert Lee
2007-03-16 14:37 ` Mark Lord
2007-03-16 15:13 ` Mark Lord
2007-03-16 17:21 ` Albert Lee
2007-03-16 21:17 ` Mark Lord
2007-03-17 3:19 ` Albert Lee
2007-03-19 15:25 ` Mark Lord
2007-03-20 10:16 ` Albert Lee [this message]
2007-03-14 17:42 ` regression: ide-floppy doesn't work with IOMEGA IDE ZIP drive Jeff Garzik
2007-03-14 13:42 ` Bartlomiej Zolnierkiewicz
2007-03-14 13:44 ` Tejun Heo
2007-03-14 18:27 ` Mark Lord
2007-03-15 2:08 ` Tejun Heo
[not found] ` <45F80841.EMEA5.EMEA5-1.100.1396E6E.1.3873.1@1:7.EMEA5.EMEA5-1.100.0.1.0.1@16>
2007-03-14 20:41 ` Stanislav Brabec
2007-03-15 4:29 ` Albert Lee
2007-03-15 19:58 ` Bartlomiej Zolnierkiewicz
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=45FFB483.5080705@tw.ibm.com \
--to=albertcc@tw.ibm.com \
--cc=alan@lxorguk.ukuu.org.uk \
--cc=albertl@mail.com \
--cc=bzolnier@gmail.com \
--cc=chrubis@suse.cz \
--cc=htejun@gmail.com \
--cc=jeff@garzik.org \
--cc=liml@rtr.ca \
--cc=linux-ide@vger.kernel.org \
--cc=paul@paulbristow.net \
--cc=sbrabec@novell.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.