Subject: question about x86 spllower()
To: None <port-i386@netbsd.org>
From: Manuel Bouyer <bouyer@antioche.eu.org>
List: port-i386
Date: 12/16/2004 23:14:55
Hi,
while trying to get current/xen working again I found something that
I don't understannd in the x86 spllower() function:
struct cpu_info *ci = curcpu();
u_int32_t imask;
u_long psl;
__insn_barrier();
imask = IUNMASK(ci, nlevel);
psl = read_psl();
disable_intr();
if (ci->ci_ipending & imask) {
Xspllower(nlevel);
/* Xspllower does enable_intr() */
} else {
ci->ci_ilevel = nlevel;
write_psl(psl);
}
What will do enable_intr() when Xspllower() is not called ?
--
Manuel Bouyer <bouyer@antioche.eu.org>
NetBSD: 26 ans d'experience feront toujours la difference
--