Subject: Re: Soft Errors / DMA errors on IBM 18G ATAPI disk
From: jiho <email@example.com>
Date: 10/22/1999 13:24:27
> According to what I just saw with my own eyes, the cpl bits IPL_TTY, IPL_NET
> and IPL_BIO are _always_ set, _every_ time the PS/2 mouse interrupt handler
> is invoked.
> Now, according to what I just read in The Book, if _any_ of those bits is
> set, that interrupt handler should be _blocked_ until all three bits are
Well, golly, Jim, that _almost_ makes sense....except that you might actually
_want_ splhigh() while an interrupt handler is running, as that would prevent
other interrupts from interrupting it while it runs to completion.
Selective blocking should occur _before_ it is decided to run the interrupt
handler; then _everything_ should be temporarily blocked while it runs. Which
is what the above indicates is happening, so it appears correct.
Meanwhile, I've made a little progress hassling out these code paths. Now
_that_ is going to take a while.
My original reaction was to dismiss the problems I've seen as bugs in
user-level code. But I kept stubbing my toe on the patterns of behavior,
which seem much more like some kind of lower-level event handling....
--Jim Howard <firstname.lastname@example.org>