Subject: Re: port-xen/29851: CALLBACK_IN_BLOCKING_CONTEXT callbacks can not
To: None <bouyer@antioche.lip6.fr>
From: YAMAMOTO Takashi <yamt@mwd.biglobe.ne.jp>
List: netbsd-bugs
Date: 04/02/2005 10:08:33
> On Fri, Apr 01, 2005 at 12:31:00AM +0000, yamt@mwd.biglobe.ne.jp wrote:
> > Machine: i386
> > >Description:
> > 	even with CALLBACK_IN_BLOCKING_CONTEXT,
> > 	the callback will be called at softintr context.
> > 	thus it can not block.
> 
> They can't tlseep() but they can block busy-waiting for a highter-priority
> interrupt (this is what the if_xennet.c driver does).
> I agree that the name CALLBACK_IN_BLOCKING_CONTEXT desn't match what the
> code allows, but I don't think anything tries to tlseep() in a callback
> in the current code.

at least, xbdback and xennetback do some sleepable operations
in their callback.  VOP_*, vn_close, if_attach, ether_ifattach, ...
am i misunderstanding?

YAMAMOTO Takashi