[ENBD] can't write to nb device - nbd_get_req blocking req
Peter T. Breuer
enbd@lists.community.tummy.com
Fri, 25 Apr 2003 01:50:13 +0200 (MET DST)
"A month of sundays ago Peter T. Breuer wrote:"
> This is the developmental snapshot code. I recently added a cache of
> recently treated requests, so that if a request was resubmitted we can
> guarantee to treat it consistently without race conditions and without
> violating write orderings. But maybe after a timeout things can go a
> little wonky. What puzzles me is the low numbers. You wrote thousands
I was also puzzled by how it can happen. But I suppose a request can
leave the cache before it gets treated, and then the treatment comes
along ... maybe I should inhibit things from leaving cache even if they
are old, when they are not yet treated. Owww.
It's kind of funny, though ... there's something weirdly unbalanced.
One can disable the cache by commenting the calls
err = data->lock_req(data, ...) and err = data->unlock_req(data, ...) in
nbd/enbd-server.c, and setting err = 0 instead.
Peter