Subject: Re: vnd, VOP_ and encrypted fs.
To: None <tech-kern@netbsd.org>
From: Jorgen Lundman <lundman@lundman.net>
List: tech-kern
Date: 10/30/2001 18:24:27
Christos Zoulas wrote:
>
> On Oct 29, 7:16pm, lundman@lundman.net (Jorgen Lundman) wrote:
> -- Subject: Re: vnd, VOP_ and encrypted fs.
>
> We means you in this case :-) Steam ahead!
>
I'm doing somewhat well I feel. Sorted most of the source to be
compilable. However I do have an issue with one section in the code.
They've decided to add another form of getting the data, as described
as:
* Former method:
* Break the request into bsize pieces and submit using
VOP_BMAP/VOP_STRATEGY.
* Note that this driver can only be used for swapping over NFS on the
hp
* since nfs_strategy on the vax cannot handle u-areas and page tables.
*
* Latter method:
* Repack the buffer into an uio structure and use VOP_READ/VOP_WRITE to
* access the underlying file. Things are complicated by the fact that
we
* might get recursively called due to buffer flushes. In those cases
we
* queue one write.
To which they have an "if vndsimple(bp->b_dec)) { " to test whether or
not it should use the new method. (Which appears to be an &0x80 test).
However, in this source section they refer to:
bp->b_actf = vnd->sc_tab.b_actf;
vnd->sc_tab.b_actf = bp;
and at the end of the loop:
bp = vnd->sc_tab.b_actf;
vnd->sc_tab.b_actf = bp->b_actf;
NBSD doesn't have b_actf, but I am guessing our equivalent would be the
b_actq list - but type wise they are not compatible. I'm guessing I
should be using a nice #define to INSERT into it, and REMOVE from it -
anyone care to give pointers?
Lund
--
Jorgen "Lord" Lundman <lundman@lundman.net>
Technology Manager, Unix Administrator
Phone: +44 (0)20-86591860 Mobile: +44 (0)79-58642918
Pager: 07958642918@one2one.net
"Rare is the person who can weigh the faults of others
without putting his thumb on the scales": Byron J. Langenfeld