Subject: Re: Crash with vnd
To: YAMAMOTO Takashi <yamt@mwd.biglobe.ne.jp>
From: Manuel Bouyer <bouyer@antioche.lip6.fr>
List: port-xen
Date: 04/12/2005 16:50:14
On Tue, Apr 12, 2005 at 07:53:42PM +0900, YAMAMOTO Takashi wrote:
> hi,
>
> > This needs to be fixed in some way. I can see
> > - extend the interrupt bitmap. But even if we go with 2 32bit bitmaps, it may
> > still not be enouth, and needs some x86 assembly hacking.
> > We can go with a 2 level bitmap, just like we have for events,
> > but then we'd probably have an issue with IPLs. This needs more thoughs.
> > - share interrupts for different events of the same IPL. Easier to implement
> > but doens't scale well.
>
> i prefer the intermediate. ie.
> - have more intrsources. (maybe up to number of event channels?)
> - keep bitmaps (ipending, masks) 32-bit but share bits in them
> between intrsources.
>
> in this way,
> - when the interrupt is not blocked (a common path),
> you only need to traverse handlers associated to the intrsource.
> - you can keep to use 32-bit operations for splfoo()/splx(),
> which should be fast because they are frequently used.
Yes, this is a good idea. Shouldn't be too hard to implement, I'll have a look
soon.
--
Manuel Bouyer <bouyer@antioche.eu.org>
NetBSD: 26 ans d'experience feront toujours la difference
--