Author: mav
Date: Tue Jul 31 21:31:24 2018
New Revision: 337014
URL: https://svnweb.freebsd.org/changeset/base/337014

Log:
  9421 zdb should detect and print out the number of "leaked" objects
  9422 zfs diff and zdb should explicitly mark objects that are on the deleted 
queue
  
  illumos/illumos-gate@20b5dafb425396adaebd0267d29e1026fc4dc413
  
  Reviewed by: Matt Ahrens <[email protected]>
  Reviewed by: Pavel Zakharov <[email protected]>
  Approved by: Matt Ahrens <[email protected]>
  Author:     Paul Dagnelie <[email protected]>

Modified:
  vendor-sys/illumos/dist/uts/common/fs/zfs/zfs_znode.c

Changes in other areas also in this revision:
Modified:
  vendor/illumos/dist/cmd/zdb/zdb.c
  vendor/illumos/dist/lib/libzfs/common/libzfs_diff.c

Modified: vendor-sys/illumos/dist/uts/common/fs/zfs/zfs_znode.c
==============================================================================
--- vendor-sys/illumos/dist/uts/common/fs/zfs/zfs_znode.c       Tue Jul 31 
21:26:03 2018        (r337013)
+++ vendor-sys/illumos/dist/uts/common/fs/zfs/zfs_znode.c       Tue Jul 31 
21:31:24 2018        (r337014)
@@ -2036,6 +2036,17 @@ zfs_obj_to_path_impl(objset_t *osp, uint64_t obj, sa_h
        *path = '\0';
        sa_hdl = hdl;
 
+       uint64_t deleteq_obj;
+       VERIFY0(zap_lookup(osp, MASTER_NODE_OBJ,
+           ZFS_UNLINKED_SET, sizeof (uint64_t), 1, &deleteq_obj));
+       error = zap_lookup_int(osp, deleteq_obj, obj);
+       if (error == 0) {
+               return (ESTALE);
+       } else if (error != ENOENT) {
+               return (error);
+       }
+       error = 0;
+
        for (;;) {
                uint64_t pobj;
                char component[MAXNAMELEN + 2];
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "[email protected]"

Reply via email to