]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
STABLE14-obsd-buf-fixes-20080103
authorJim Rees <rees@umich.edu>
Thu, 3 Jan 2008 17:44:42 +0000 (17:44 +0000)
committerJim Rees <rees@umich.edu>
Thu, 3 Jan 2008 17:44:42 +0000 (17:44 +0000)
use new b_data field in struct buf
don't clobber a_bnp in bmap op (wonder how long this has been broken?)

(cherry picked from commit dbb3f1d0b6e2e1e42b1f0ef4c29c21d8090e605a)

src/afs/OBSD/osi_vnodeops.c

index a20c0316ed6f4bd4106106327dea6e3fef7b620c..bb4469919ad31e77c16d3e1a3e33032fbe2c3503 100644 (file)
@@ -932,7 +932,7 @@ afs_nbsd_bmap(void *v)
 
     AFS_STATCNT(afs_bmap);
     if (ap->a_bnp)
-       ap->a_bnp = (daddr_t *) (ap->a_bn * (8192 / DEV_BSIZE));
+       *ap->a_bnp = ap->a_bn * btodb(8192);
     if (ap->a_vpp)
        *ap->a_vpp = (vcp) ? AFSTOV(vcp) : NULL;
     return 0;
@@ -958,15 +958,14 @@ afs_nbsd_strategy(void *v)
     tuio.afsio_iovcnt = 1;
     tuio.afsio_seg = AFS_UIOSYS;
     tuio.afsio_resid = len;
-    tiovec[0].iov_base = abp->b_un.b_addr;
+    tiovec[0].iov_base = abp->b_data;
     tiovec[0].iov_len = len;
 
     AFS_GLOCK();
     if ((abp->b_flags & B_READ) == B_READ) {
        code = afs_rdwr(tvc, &tuio, UIO_READ, 0, credp);
        if (code == 0 && tuio.afsio_resid > 0)
-           bzero(abp->b_un.b_addr + len - tuio.afsio_resid,
-                 tuio.afsio_resid);
+           bzero(abp->b_data + len - tuio.afsio_resid, tuio.afsio_resid);
     } else
        code = afs_rdwr(tvc, &tuio, UIO_WRITE, 0, credp);
     AFS_GUNLOCK();