Subject: Re: cgd->vnd panic in BETA_2.0
To: Roland C. Dowdeswell <email@example.com>
From: Jason Thorpe <firstname.lastname@example.org>
Date: 09/19/2004 12:01:34
Content-Type: text/plain; charset=US-ASCII; format=flowed
On Sep 19, 2004, at 11:47 AM, Roland C. Dowdeswell wrote:
> Well, I haven't seen the problem, but then I have not [recently]
> run cgd(4) on vnd(4). But, from the trace I can guess what is
> going on here. Basically, when cgdiodone() is called it checks to
> see if there are any pending transactions that need to be completed
> and if there are it will start them. When the cgd(4) is configured
> on a vnd(4), this jumps into file system code which expects to be
> run from a process context not an interrupt context.
> I'll have to think a bit about how to solve this one.
In general, we probably need to make sure that all disk drivers'
"strategy" routines are safe for calling from interrupt context.
For vnd, this probably means having a kernel thread waiting around to
do the actual processing.
-- Jason R. Thorpe <email@example.com>
content-type: application/pgp-signature; x-mac-type=70674453;
content-description: This is a digitally signed message part
content-disposition: inline; filename=PGP.sig
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.3 (Darwin)
-----END PGP SIGNATURE-----