Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src Fix return code of rmdir(nonempty) in zfs: ENOTEMPTY, not EE...



details:   https://anonhg.NetBSD.org/src/rev/37f701f548d3
branches:  trunk
changeset: 337274:37f701f548d3
user:      riastradh <riastradh%NetBSD.org@localhost>
date:      Thu Apr 09 05:02:28 2015 +0000

description:
Fix return code of rmdir(nonempty) in zfs: ENOTEMPTY, not EEXIST.

diffstat:

 external/cddl/osnet/dist/uts/common/fs/zfs/zfs_dir.c |  2 +-
 tests/fs/vfs/t_vnops.c                               |  4 +---
 2 files changed, 2 insertions(+), 4 deletions(-)

diffs (30 lines):

diff -r 208599cf44ba -r 37f701f548d3 external/cddl/osnet/dist/uts/common/fs/zfs/zfs_dir.c
--- a/external/cddl/osnet/dist/uts/common/fs/zfs/zfs_dir.c      Thu Apr 09 00:38:29 2015 +0000
+++ b/external/cddl/osnet/dist/uts/common/fs/zfs/zfs_dir.c      Thu Apr 09 05:02:28 2015 +0000
@@ -801,7 +801,7 @@
                if (zp_is_dir && !zfs_dirempty(zp)) {   /* dir not empty */
                        mutex_exit(&zp->z_lock);
                        vn_vfsunlock(vp);
-                       return (EEXIST);
+                       return (ENOTEMPTY);
                }
                if (zp->z_phys->zp_links <= zp_is_dir) {
                        zfs_panic_recover("zfs: link count on vnode %p is %u, "
diff -r 208599cf44ba -r 37f701f548d3 tests/fs/vfs/t_vnops.c
--- a/tests/fs/vfs/t_vnops.c    Thu Apr 09 00:38:29 2015 +0000
+++ b/tests/fs/vfs/t_vnops.c    Thu Apr 09 05:02:28 2015 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: t_vnops.c,v 1.45 2015/03/24 23:24:55 riastradh Exp $   */
+/*     $NetBSD: t_vnops.c,v 1.46 2015/04/09 05:02:28 riastradh Exp $   */
 
 /*-
  * Copyright (c) 2010 The NetBSD Foundation, Inc.
@@ -179,8 +179,6 @@
        rump_sys_close(fd);
 
        rv = rump_sys_rmdir(pb);
-       if (FSTYPE_ZFS(tc))
-               atf_tc_expect_fail("PR kern/47656: Test known to be broken");
        if (rv != -1 || errno != ENOTEMPTY)
                atf_tc_fail("non-empty directory removed succesfully");
 



Home | Main Index | Thread Index | Old Index