From: Tejun Heo <htejun@gmail.com>
To: Mikael Pettersson <mikpe@it.uu.se>
Cc: linux-ide@vger.kernel.org
Subject: Re: [2.6.23-rc1] ata_piix: EH pending after completion, repeating EH (cnt=4)
Date: Thu, 26 Jul 2007 15:31:10 +0900 [thread overview]
Message-ID: <46A83FAE.9060205@gmail.com> (raw)
In-Reply-To: <200707241836.l6OIacth016478@harpo.it.uu.se>
[-- Attachment #1: Type: text/plain, Size: 1439 bytes --]
Mikael Pettersson wrote:
> On Tue, 24 Jul 2007 17:32:29 +0900, Tejun Heo wrote:
>> Mikael Pettersson wrote:
>>> This machine has a known good Samsung SATA DVD on ICH8 [8086:2820].
>>> With kernel 2.6.23-rc1 I now get the following:
>>>
>>>> ata_piix 0000:00:1f.2: version 2.11
>>>> ata_piix 0000:00:1f.2: MAP [ P0 P2 P1 P3 ]
>>>> ACPI: PCI Interrupt 0000:00:1f.2[B] -> GSI 19 (level, low) -> IRQ 19
>>>> PCI: Setting latency timer of device 0000:00:1f.2 to 64
>>>> scsi2 : ata_piix
>>>> scsi3 : ata_piix
>>>> ata3: SATA max UDMA/133 cmd 0x0001ec00 ctl 0x0001e882 bmdma 0x0001e400 irq 19
>>>> ata4: SATA max UDMA/133 cmd 0x0001e800 ctl 0x0001e482 bmdma 0x0001e408 irq 19
>>>> ata4.00: ATAPI: TSSTcorpCD/DVDW SH-S183A, SB00, max UDMA/33
>>>> ata4.00: applying bridge limits
>>>> ata4.00: configured for UDMA/33
>>>> ata4: EH pending after completion, repeating EH (cnt=4)
>>>> scsi 3:0:0:0: CD-ROM TSSTcorp CD/DVDW SH-S183A SB00 PQ: 0 ANSI: 5
>>> The "EH pending after completion" is new and did not occur with 2.6.22.
>>> Apart from that message, things seem fine.
>> Hmmm... That means someone requested EH while EH was in progress.
>> Weird. Can you apply the attached patch and report what the kernel
>> says? Thanks.
>
> Here it is. As you can see from the traces, the machine also has a
> pdc20269 controller driven by pata_pdc2027x.
Hmm... I missed one path. Can you please try the attached patch? Thanks.
--
tejun
[-- Attachment #2: debug-1.patch --]
[-- Type: text/x-patch, Size: 1330 bytes --]
diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-core.c
index 88e2dd0..3a7c97e 100644
--- a/drivers/ata/libata-core.c
+++ b/drivers/ata/libata-core.c
@@ -6403,7 +6403,7 @@ int ata_host_register(struct ata_host *host, struct scsi_host_template *sht)
ehi->probe_mask = (1 << ATA_MAX_DEVICES) - 1;
ehi->action |= ATA_EH_SOFTRESET;
- ehi->flags |= ATA_EHI_NO_AUTOPSY | ATA_EHI_QUIET;
+ ehi->flags |= ATA_EHI_NO_AUTOPSY/* | ATA_EHI_QUIET*/;
ap->pflags &= ~ATA_PFLAG_INITIALIZING;
ap->pflags |= ATA_PFLAG_LOADING;
diff --git a/drivers/ata/libata-eh.c b/drivers/ata/libata-eh.c
index 9aa62a0..c0ce3ce 100644
--- a/drivers/ata/libata-eh.c
+++ b/drivers/ata/libata-eh.c
@@ -536,6 +536,12 @@ void ata_qc_schedule_eh(struct ata_queued_cmd *qc)
* this function completes.
*/
scsi_req_abort_cmd(qc->scsicmd);
+
+ if (ap->pflags & ATA_PFLAG_LOADING) {
+ printk("EH scheduled with LOADING set cmd=%02x cdb=%02x emask=%02x\n",
+ qc->tf.command, qc->cdb[0], qc->err_mask);
+ dump_stack();
+ }
}
/**
@@ -558,6 +564,11 @@ void ata_port_schedule_eh(struct ata_port *ap)
ap->pflags |= ATA_PFLAG_EH_PENDING;
scsi_schedule_eh(ap->scsi_host);
+ if (ap->pflags & ATA_PFLAG_LOADING) {
+ printk("EH scheduled with LOADING set\n");
+ dump_stack();
+ }
+
DPRINTK("port EH scheduled\n");
}
next prev parent reply other threads:[~2007-07-26 6:31 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-07-24 18:36 [2.6.23-rc1] ata_piix: EH pending after completion, repeating EH (cnt=4) Mikael Pettersson
2007-07-26 6:31 ` Tejun Heo [this message]
-- strict thread matches above, loose matches on Subject: below --
2007-07-30 13:19 Mikael Pettersson
2007-07-26 15:45 Mikael Pettersson
2007-07-30 7:52 ` Tejun Heo
2007-07-23 10:47 Mikael Pettersson
2007-07-24 8:32 ` 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=46A83FAE.9060205@gmail.com \
--to=htejun@gmail.com \
--cc=linux-ide@vger.kernel.org \
--cc=mikpe@it.uu.se \
/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.