Merge commit 'refs/top-bases/linux-zfs-branch' into linux-zfs-branch

This commit is contained in:
Brian Behlendorf 2009-01-09 15:36:19 -08:00
commit e0b5d5588b
1 changed files with 6 additions and 2 deletions

View File

@ -274,6 +274,7 @@ retry:
char *packed; char *packed;
dmu_buf_t *db; dmu_buf_t *db;
int i = 0; int i = 0;
int nv_encode = NV_ENCODE_NATIVE;
if (rw == RW_READER && !rw_tryupgrade(&zfsvfs->z_fuid_lock)) { if (rw == RW_READER && !rw_tryupgrade(&zfsvfs->z_fuid_lock)) {
rw_exit(&zfsvfs->z_fuid_lock); rw_exit(&zfsvfs->z_fuid_lock);
@ -311,10 +312,13 @@ retry:
for (i = 0; i != retidx; i++) for (i = 0; i != retidx; i++)
nvlist_free(fuids[i]); nvlist_free(fuids[i]);
kmem_free(fuids, retidx * sizeof (void *)); kmem_free(fuids, retidx * sizeof (void *));
VERIFY(nvlist_size(nvp, &nvsize, NV_ENCODE_XDR) == 0); #ifdef HAVE_XDR
nv_encode = NV_ENCODE_XDR;
#endif
VERIFY(nvlist_size(nvp, &nvsize, nv_encode) == 0);
packed = kmem_alloc(nvsize, KM_SLEEP); packed = kmem_alloc(nvsize, KM_SLEEP);
VERIFY(nvlist_pack(nvp, &packed, &nvsize, VERIFY(nvlist_pack(nvp, &packed, &nvsize,
NV_ENCODE_XDR, KM_SLEEP) == 0); nv_encode, KM_SLEEP) == 0);
nvlist_free(nvp); nvlist_free(nvp);
zfsvfs->z_fuid_size = nvsize; zfsvfs->z_fuid_size = nvsize;
dmu_write(zfsvfs->z_os, zfsvfs->z_fuid_obj, 0, dmu_write(zfsvfs->z_os, zfsvfs->z_fuid_obj, 0,