Hello,
Berck E. Nash wrote:
> Tejun Heo wrote:
>
>> Hmmm... Once properly initialized, ahci is highly unlikely to cause
>> runaway IRQs which results in nobody cared. It has proper IRQ mask and
>> pending bits allowing the driver to reliably detect when and why the
>> controller is raising
Hello,
Berck E. Nash wrote:
Tejun Heo wrote:
Hmmm... Once properly initialized, ahci is highly unlikely to cause
runaway IRQs which results in nobody cared. It has proper IRQ mask and
pending bits allowing the driver to reliably detect when and why the
controller is raising interrupt and
Tejun Heo wrote:
> Hmmm... Once properly initialized, ahci is highly unlikely to cause
> runaway IRQs which results in nobody cared. It has proper IRQ mask and
> pending bits allowing the driver to reliably detect when and why the
> controller is raising interrupt and disable it if necessary.
Tejun Heo wrote:
Hmmm... Once properly initialized, ahci is highly unlikely to cause
runaway IRQs which results in nobody cared. It has proper IRQ mask and
pending bits allowing the driver to reliably detect when and why the
controller is raising interrupt and disable it if necessary. Can
Hello.
Berck E. Nash wrote:
> Okay, while this patch allows my system to boot, it eventually crashed.
> Unfortunately, I don't know enough to know if this crash is at all
> related, but it seems like it might be?
>
> [ 1314.960784] irq 316: nobody cared (try booting with the "irqpoll" option)
>
Hello.
Berck E. Nash wrote:
Okay, while this patch allows my system to boot, it eventually crashed.
Unfortunately, I don't know enough to know if this crash is at all
related, but it seems like it might be?
[ 1314.960784] irq 316: nobody cared (try booting with the irqpoll option)
[
Tejun Heo wrote:
> Please test this one instead. Thanks.
Yup, the second patch fixes it.
-Berck
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read
> > (and yes this happens on dual P3 boxes - NE2K has some fantastic bugs at
> > one point due to this)
>
> I think the second patch should work regardless of IRQ posting. No?
I believe so providing the IRQ handler tries to clear the cause of the
IRQ.
Alan
-
To unsubscribe from this list: send
Alan Cox wrote:
>> diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c
>> index 72c286e..a128717 100644
>> --- a/drivers/ata/ahci.c
>> +++ b/drivers/ata/ahci.c
>> @@ -1369,10 +1369,14 @@ static unsigned int ahci_qc_issue(struct
>> ata_queued_cmd *qc)
>>
>> static void ahci_freeze(struct
> diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c
> index 72c286e..a128717 100644
> --- a/drivers/ata/ahci.c
> +++ b/drivers/ata/ahci.c
> @@ -1369,10 +1369,14 @@ static unsigned int ahci_qc_issue(struct
> ata_queued_cmd *qc)
>
> static void ahci_freeze(struct ata_port *ap)
> {
> +
> static void ahci_freeze(struct ata_port *ap)
> {
> + void __iomem *mmio = ap->host->iomap[AHCI_PCI_BAR];
> void __iomem *port_mmio = ahci_port_base(ap);
>
> /* turn IRQ off */
> writel(0, port_mmio + PORT_IRQ_MASK);
> +
> + /* clear IRQ pending bit */
> +
Please test this one instead. Thanks.
diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-core.c
index 1c00526..ce6 100644
--- a/drivers/ata/libata-core.c
+++ b/drivers/ata/libata-core.c
@@ -5871,6 +5871,7 @@ struct ata_port *ata_port_alloc(struct ata_host *host)
if (!ap)
Andrew Morton wrote:
>> No, that would break host probing. The port is in frozen (controller
>> initialized and IRQs masked off) state, so it's not allowed to take
>> interrupt.
>
> Sounds dodgy. What happens if the IRQ line is shared with some other
> device? We'll enter ahci_interrupt().
On Wed, 25 Apr 2007 17:42:41 +0900 Tejun Heo <[EMAIL PROTECTED]> wrote:
> Andrew Morton wrote:
> >> [2.953862] RIP: 0010:[] []
> >> scsi_schedule_eh+0xa/0x57
> >> [3.058672] [] ata_port_schedule_eh+0x4c/0x50
> >> [3.064725] [] ata_port_abort+0xa2/0xae
> >> [3.070248] []
On Wed, Apr 25, 2007 at 05:42:41PM +0900, Tejun Heo wrote:
> Andrew Morton wrote:
> >> [2.953862] RIP: 0010:[] []
> >> scsi_schedule_eh+0xa/0x57
> >> [3.058672] [] ata_port_schedule_eh+0x4c/0x50
> >> [3.064725] [] ata_port_abort+0xa2/0xae
> >> [3.070248] []
Andrew Morton wrote:
>> [2.953862] RIP: 0010:[] []
>> scsi_schedule_eh+0xa/0x57
>> [3.058672] [] ata_port_schedule_eh+0x4c/0x50
>> [3.064725] [] ata_port_abort+0xa2/0xae
>> [3.070248] [] ata_port_freeze+0x46/0x57
>> [3.075853] [] ahci_interrupt+0x300/0x47a
>> [
On Tue, 24 Apr 2007 12:28:29 -0600 "Berck E. Nash" <[EMAIL PROTECTED]> wrote:
>
> Kernel panic on boot, console output attached.
>
Thanks, cc's added.
>
> [14316256.221707] Linux version 2.6.21-rc7-mm1 ([EMAIL PROTECTED]) (gcc
> version 4.1.2 20061115 (prerelease) (Debian 4.1.1-21)) #1 SMP
On Tue, 24 Apr 2007 12:28:29 -0600 Berck E. Nash [EMAIL PROTECTED] wrote:
Kernel panic on boot, console output attached.
Thanks, cc's added.
[14316256.221707] Linux version 2.6.21-rc7-mm1 ([EMAIL PROTECTED]) (gcc
version 4.1.2 20061115 (prerelease) (Debian 4.1.1-21)) #1 SMP Tue Apr 24
Andrew Morton wrote:
[2.953862] RIP: 0010:[803ae98b] [803ae98b]
scsi_schedule_eh+0xa/0x57
[3.058672] [803e1e01] ata_port_schedule_eh+0x4c/0x50
[3.064725] [803e1ea7] ata_port_abort+0xa2/0xae
[3.070248] [803e1ef9]
On Wed, Apr 25, 2007 at 05:42:41PM +0900, Tejun Heo wrote:
Andrew Morton wrote:
[2.953862] RIP: 0010:[803ae98b] [803ae98b]
scsi_schedule_eh+0xa/0x57
[3.058672] [803e1e01] ata_port_schedule_eh+0x4c/0x50
[3.064725] [803e1ea7]
On Wed, 25 Apr 2007 17:42:41 +0900 Tejun Heo [EMAIL PROTECTED] wrote:
Andrew Morton wrote:
[2.953862] RIP: 0010:[803ae98b] [803ae98b]
scsi_schedule_eh+0xa/0x57
[3.058672] [803e1e01] ata_port_schedule_eh+0x4c/0x50
[3.064725] [803e1ea7]
Andrew Morton wrote:
No, that would break host probing. The port is in frozen (controller
initialized and IRQs masked off) state, so it's not allowed to take
interrupt.
Sounds dodgy. What happens if the IRQ line is shared with some other
device? We'll enter ahci_interrupt(). We've
Please test this one instead. Thanks.
diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-core.c
index 1c00526..ce6 100644
--- a/drivers/ata/libata-core.c
+++ b/drivers/ata/libata-core.c
@@ -5871,6 +5871,7 @@ struct ata_port *ata_port_alloc(struct ata_host *host)
if (!ap)
static void ahci_freeze(struct ata_port *ap)
{
+ void __iomem *mmio = ap-host-iomap[AHCI_PCI_BAR];
void __iomem *port_mmio = ahci_port_base(ap);
/* turn IRQ off */
writel(0, port_mmio + PORT_IRQ_MASK);
+
+ /* clear IRQ pending bit */
+ writel(1
diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c
index 72c286e..a128717 100644
--- a/drivers/ata/ahci.c
+++ b/drivers/ata/ahci.c
@@ -1369,10 +1369,14 @@ static unsigned int ahci_qc_issue(struct
ata_queued_cmd *qc)
static void ahci_freeze(struct ata_port *ap)
{
+ void __iomem
Alan Cox wrote:
diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c
index 72c286e..a128717 100644
--- a/drivers/ata/ahci.c
+++ b/drivers/ata/ahci.c
@@ -1369,10 +1369,14 @@ static unsigned int ahci_qc_issue(struct
ata_queued_cmd *qc)
static void ahci_freeze(struct ata_port *ap)
{
+
(and yes this happens on dual P3 boxes - NE2K has some fantastic bugs at
one point due to this)
I think the second patch should work regardless of IRQ posting. No?
I believe so providing the IRQ handler tries to clear the cause of the
IRQ.
Alan
-
To unsubscribe from this list: send the
Tejun Heo wrote:
Please test this one instead. Thanks.
Yup, the second patch fixes it.
-Berck
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the
Kernel panic on boot, console output attached.
[14316256.221707] Linux version 2.6.21-rc7-mm1 ([EMAIL PROTECTED]) (gcc version
4.1.2 20061115 (prerelease) (Debian 4.1.1-21)) #1 SMP Tue Apr 24 12:09:02 MDT
2007
[14316256.221707] Command line: root=/dev/sdc1 ro console=tty0
Kernel panic on boot, console output attached.
[14316256.221707] Linux version 2.6.21-rc7-mm1 ([EMAIL PROTECTED]) (gcc version
4.1.2 20061115 (prerelease) (Debian 4.1.1-21)) #1 SMP Tue Apr 24 12:09:02 MDT
2007
[14316256.221707] Command line: root=/dev/sdc1 ro console=tty0
30 matches
Mail list logo