> Little investigation attempt: Looking a little further, it seems like that BIO_DELETE is never getting into zvol_strategy().
Piling on debug, when newfs'ing directly on the zvol, we enter zvol_geom_start() with the BIO_DELETE, it drops into the case in the early switch, and passes the bp down to zvol_strategy(). No problem. When newfs'ing on the .eli, it enters the if (!THREAD_CAN_SLEEP()), which jumps ahead to some a bioq_insert_tail(), into an empty bioq, falls into the if(first) block and calls wakeup_one(), and then falls off the end and returns from zvol_geom_start(). And that's the end of the line; nothing else ever happens. So, either the zvol isn't actually firing off the event right, or we need to do something more complicated with BIO_DELETE than we do with _GETATTR and _FLUSH. I couldn't really say which... -- Matthew Fuller (MF4839) | [email protected] Systems/Network Administrator | http://www.over-yonder.net/~fullermd/ On the Internet, nobody can hear you scream. _______________________________________________ [email protected] mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-geom To unsubscribe, send any mail to "[email protected]"
