X-Git-Url: https://git.camperquake.de/gitweb.cgi?a=blobdiff_plain;f=module%2Fzfs%2Fddt_zap.c;h=1733448a8ae0e5d42d733b478b1cb3a7574f869a;hb=beb999445adaa6d794f0d706ca8a0c835cb1468c;hp=280bff35a0b8c5d87d50b525e03b9bd2134152e6;hpb=5b8c7bbcea7ad9ecd5f329d2d736cba8402ee781;p=zfs.git diff --git a/module/zfs/ddt_zap.c b/module/zfs/ddt_zap.c index 280bff3..1733448 100644 --- a/module/zfs/ddt_zap.c +++ b/module/zfs/ddt_zap.c @@ -62,7 +62,7 @@ ddt_zap_lookup(objset_t *os, uint64_t object, ddt_entry_t *dde) uint64_t one, csize; int error; - cbuf = kmem_alloc(sizeof (dde->dde_phys) + 1, KM_SLEEP); + cbuf = kmem_alloc(sizeof (dde->dde_phys) + 1, KM_PUSHPAGE); error = zap_length_uint64(os, object, (uint64_t *)&dde->dde_key, DDT_KEY_WORDS, &one, &csize); @@ -70,7 +70,7 @@ ddt_zap_lookup(objset_t *os, uint64_t object, ddt_entry_t *dde) goto out; ASSERT(one == 1); - ASSERT(csize <= sizeof (cbuf)); + ASSERT(csize <= (sizeof (dde->dde_phys) + 1)); error = zap_lookup_uint64(os, object, (uint64_t *)&dde->dde_key, DDT_KEY_WORDS, 1, csize, cbuf);