Subject: Re: kernel: supervisor trap asynchronous system trap, code=0
To: YAMAMOTO Takashi <yamt@mwd.biglobe.ne.jp>
From: Manuel Bouyer <bouyer@antioche.eu.org>
List: port-xen
Date: 07/03/2007 23:43:40
On Mon, Jul 02, 2007 at 12:45:16PM +0900, YAMAMOTO Takashi wrote:
> > it could probably, but this would make some more call/return, or jump.
> > I'm not sure it's worth it.
>
> it's worth, IMO.
Well, I looked at factoring it a bit when I did these changes, and it didn't
look that easy. there are some differences in the code that I can't see
how to split out of the loop. All these routines do their job inside the
loop.
> > __sti() is intended for C code, but it takes an extrat trap and 4 context
> > switches to process pending interrupts. processing interrupts in the current
> > context it more efficient.
>
> why can't you use do_hypervisor_callback()?
At first look I think we could, but this needs to be investicated.
We would still have to check the pending ilevel(s), though (maybe only
in spllower(), this needs to be investigated too).
--
Manuel Bouyer <bouyer@antioche.eu.org>
NetBSD: 26 ans d'experience feront toujours la difference
--