svn commit: r348921 - stable/12/cddl/contrib/opensolaris/lib/libzfs/common
Alexander Motin
mav at FreeBSD.org
Tue Jun 11 14:29:22 UTC 2019
Author: mav
Date: Tue Jun 11 14:29:21 2019
New Revision: 348921
URL: https://svnweb.freebsd.org/changeset/base/348921
Log:
MFC r348581: MFV r348580:
9559 zfs diff handles files on delete queue in fromsnap poorly
illumos/illumos-gate at 20633e304b57bc98f70fdb194081b7023adf527b
Reviewed by: Joshua M. Clulow <josh at sysmgr.org>
Approved by: Richard Lowe <richlowe at richlowe.net>
Author: Paul Dagnelie <pcd at delphix.com>
Modified:
stable/12/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_diff.c
Directory Properties:
stable/12/ (props changed)
Modified: stable/12/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_diff.c
==============================================================================
--- stable/12/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_diff.c Tue Jun 11 14:28:16 2019 (r348920)
+++ stable/12/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_diff.c Tue Jun 11 14:29:21 2019 (r348921)
@@ -22,7 +22,7 @@
/*
* Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
* Copyright 2015 Nexenta Systems, Inc. All rights reserved.
- * Copyright (c) 2015, 2017 by Delphix. All rights reserved.
+ * Copyright (c) 2015, 2018 by Delphix. All rights reserved.
* Copyright 2016 Joyent, Inc.
* Copyright 2016 Igor Kozhukhov <ikozhukhov at gmail.com>
*/
@@ -47,7 +47,7 @@
#include "libzfs_impl.h"
#define ZDIFF_SNAPDIR "/.zfs/snapshot/"
-#define ZDIFF_SHARESDIR "/.zfs/shares/"
+#define ZDIFF_SHARESDIR "/.zfs/shares/"
#define ZDIFF_PREFIX "zfs-diff-%d"
#define ZDIFF_ADDED '+'
@@ -361,12 +361,12 @@ describe_free(FILE *fp, differ_info_t *di, uint64_t ob
if (get_stats_for_obj(di, di->fromsnap, object, namebuf,
maxlen, &sb) != 0) {
- /* Let it slide, if in the delete queue on from side */
- if (di->zerr == ENOENT && sb.zs_links == 0) {
- di->zerr = 0;
- return (0);
- }
return (-1);
+ }
+ /* Don't print if in the delete queue on from side */
+ if (di->zerr == ESTALE) {
+ di->zerr = 0;
+ return (0);
}
print_file(fp, di, ZDIFF_REMOVED, namebuf, &sb);
More information about the svn-src-all
mailing list