Subject: Re: ex0 weird error
To: Peter Seebach <seebs@plethora.net>
From: Andrew Brown <atatat@atatdot.net>
List: port-alpha
Date: 12/14/2000 13:28:21
--bg08WKrSYDhXBjb5
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
>>known, afaik. i asked someone about this a few weeks ago and was told
>>that there was a fix in a pr somewhere.
>
>Ah-hah! Yes, and I used to have this, with a different message, and I
>applied the fix, and it went away, and I forgot about it and supped
>a number of times... :)
yep. looking back, i can see that you asked about this before. 5 Sep
1999 to be exact. funny...but that message (and the actual patch) are
not in the mailing list archives on netbsd.org.
>>your "halting" problem was
>>probably accompanied by a message of the form "stray eb164 irq 1;
>>stopped logging", yes?
>
>Yup.
>
>Okay, now that it's known, I'll just ignore it. Whatever the fix was,
>though, it did work for me, so maybe it should get pulled into the tree -
>unless it's ugly, in which case, maybe it's time to analyze what's wrong
>with it. :)
i don't think it did. the first of the two line changes seems to have
gone in in a slightly altered form. the second one-liner doesn't look
like it went in. here it is again.
--
|-----< "CODE WARRIOR" >-----|
codewarrior@daemon.org * "ah! i see you have the internet
twofsonet@graffiti.com (Andrew Brown) that goes *ping*!"
andrew@crossbar.com * "information is power -- share the wealth."
--bg08WKrSYDhXBjb5
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename="alpha.patch"
From: Matthias Drochner <M.Drochner@fz-juelich.de>
Subject: Re: ex0 wedges after long uptime?
Date: Tue, 07 Dec 1999 14:14:13 +0100
Index: elinkxl.c
===================================================================
RCS file: /cvsroot/syssrc/sys/dev/ic/elinkxl.c,v
retrieving revision 1.20
diff -c -r1.20 elinkxl.c
*** elinkxl.c 1999/11/19 10:42:48 1.20
--- elinkxl.c 1999/12/07 12:53:49
***************
*** 1109,1121 ****
}
for (;;) {
stat = bus_space_read_2(iot, ioh, ELINK_STATUS);
! if (!(stat & S_MASK))
break;
/*
* Acknowledge interrupts.
*/
bus_space_write_2(iot, ioh, ELINK_COMMAND, ACK_INTR |
! (stat & S_MASK));
if (sc->intr_ack)
(*sc->intr_ack)(sc);
ret = 1;
--- 1109,1121 ----
}
for (;;) {
stat = bus_space_read_2(iot, ioh, ELINK_STATUS);
! if (!(stat & (S_MASK | S_INTR_LATCH)))
break;
/*
* Acknowledge interrupts.
*/
bus_space_write_2(iot, ioh, ELINK_COMMAND, ACK_INTR |
! (stat & (S_MASK | S_INTR_LATCH)));
if (sc->intr_ack)
(*sc->intr_ack)(sc);
ret = 1;
--bg08WKrSYDhXBjb5--