Subject: Re: Crash with vnd
To: None <bouyer@antioche.lip6.fr>
From: YAMAMOTO Takashi <yamt@mwd.biglobe.ne.jp>
List: port-xen
Date: 04/12/2005 19:53:42
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.
YAMAMOTO Takashi