Sounds good to me.

--matt

On Thu, Sep 12, 2019 at 7:50 AM Gordon Ross <gordon.w.r...@gmail.com> wrote:

> I was using the dtrace set-error probe in ZFS to track something down, and
> I found that the probe in dbuf_findbp is VERY noisy.  I also don't think
> this one is really returning an "error" condition (in the usual sense) but
> rather a status to the caller indicating the "bp" is not there.   Would it
> make sense to get rid of this one?
> It's a small change, so pasted below.
>
>
>
> diff --git a/usr/src/uts/common/fs/zfs/dbuf.c
> b/usr/src/uts/common/fs/zfs/dbuf.c
> index d23cdfa673..47222cd430 100644
> --- a/usr/src/uts/common/fs/zfs/dbuf.c
> +++ b/usr/src/uts/common/fs/zfs/dbuf.c
> @@ -2338,8 +2338,11 @@ dbuf_findbp(dnode_t *dn, int level, uint64_t blkid,
> int fail_sparse,
>      ((nlevels - level - 1) * epbs)) ||
>      (fail_sparse &&
>      blkid > (dn->dn_phys->dn_maxblkid >> (level * epbs)))) {
> - /* the buffer has no parent yet */
> - return (SET_ERROR(ENOENT));
> + /*
> + * The buffer has no parent yet.  This is a normal
> + * condition with sparse files, so no SET_ERROR().
> + */
> + return (ENOENT);
>   } else if (level < nlevels-1) {
>   /* this block is referenced from an indirect block */
>   int err = dbuf_hold_impl(dn, level+1,
>
> *openzfs <https://openzfs.topicbox.com/latest>* / openzfs-developer / see
> discussions <https://openzfs.topicbox.com/groups/developer> + participants
> <https://openzfs.topicbox.com/groups/developer/members> + delivery options
> <https://openzfs.topicbox.com/groups/developer/subscription> Permalink
> <https://openzfs.topicbox.com/groups/developer/T83528121898a0810-M12a158c082e303023845bfd9>
>

------------------------------------------
openzfs: openzfs-developer
Permalink: 
https://openzfs.topicbox.com/groups/developer/T83528121898a0810-M6a464ea0161f50524a1d0cc5
Delivery options: https://openzfs.topicbox.com/groups/developer/subscription

Reply via email to