Subject: CVS commit: [netbsd-3] src/sys/arch/xen
To: None <source-changes@NetBSD.org>
From: Matthias Scheler <tron@netbsd.org>
List: source-changes
Date: 04/28/2005 10:39:00
Module Name: src
Committed By: tron
Date: Thu Apr 28 10:39:00 UTC 2005
Modified Files:
src/sys/arch/xen/include [netbsd-3]: hypervisor.h
src/sys/arch/xen/xen [netbsd-3]: evtchn.c
Log Message:
Pull up revision 1.13 (requested by bouyer in ticket #193):
Event handling optimisations:
- sort the ih_evt_handler list by IPL, higher first. Otherwise some handlers
would have been delayed, event if they could run at the current IPL.
- As ih_evt_handler is sorted, remove IPLs that have been processed for
an event when calling hypervisor_set_ipending()
- In hypervisor_set_ipending(), enter the event in ipl_evt_mask only
for the lowest IPL. As deffered IPLs are processed high to low,
this ensure that hypervisor_enable_event() will be called only when all
callbacks have been called for an event. We don't need the evtch_maskcount[]
counters any more.
Thanks to YAMAMOTO Takashi for ideas and feedback.
To generate a diff of this commit:
cvs rdiff -r1.10.2.2 -r1.10.2.3 src/sys/arch/xen/include/hypervisor.h
cvs rdiff -r1.3.2.8 -r1.3.2.9 src/sys/arch/xen/xen/evtchn.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.