Messages in this thread | | | From | (Miquel van Smoorenburg) | Subject | Re: APIC and edge triggered vs level triggered | Date | 17 Jul 2000 11:32:17 GMT |
| |
In article <cistron.8ko68e$j0$1@enterprise.cistron.net>, Miquel van Smoorenburg <miquels@cistron.nl> wrote: >AMI Megarum II board w/ 2xPIII/450 1 GB RAM, dual symbios onboard SCSI >1 9 GB system disk on scsi0, 4 18 GB spool disks on scsi1 >Linux 2.2.17pre11 > >After 5-15 minutes, the system hung. The symbios chipset stopped to >deliver interrupts. When I posted this to linux-scsi, Gerard Roudier >said that it was logical that the system wasn't stable: APIC PCI >interrupts have to be level triggered and not edge triggered, while >the output from /proc/interrupts said: > > CPU0 CPU1 > 10: 41954 47456 IO-APIC-edge sym53c8xx > 15: 1684 3355 IO-APIC-edge sym53c8xx > >However, in the AMI BIOS (or the scsi bios) there is no way to adjust >this. The BIOS sets the interrupts to edge triggered, and that's it.
I found the solution myself this weekend.
It appears that the BIOS reports the interrupts as edge triggered, while in reality they are level triggered. So we need a way to override the information from the BIOS.
Jos van de Ven posted such a patch on the linux-smp mailinglist about a year ago. Fortunately the patch still applies and solves my problem completely.
See http://marc.theaimsgroup.com/?l=linux-smp&m=93143486926833&w=2 for Jos' posting and the patch.
Mike.
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |