diff options
| author | Arne Jansen <jansen@webgods.de> | 2016-07-08 15:05:13 +0200 |
|---|---|---|
| committer | Dan McDonald <danmcd@joyent.com> | 2022-02-04 10:10:10 -0500 |
| commit | c2270953142194d5f260d803d60104fad12ab076 (patch) | |
| tree | a50b91db96799cd063af2c2596e58160263e5cba | |
| parent | b8aa3def2e2531e693fba6d1f00a74339a4a663d (diff) | |
| download | illumos-joyent-c2270953142194d5f260d803d60104fad12ab076.tar.gz | |
6779 kernel panic in zfs_readdir shortly after mount
Reviewed by: Toomas Soome <tsoome@me.com>
Reviewed by: Marcel Telka <marcel@telka.sk>
Approved by: Dan McDonald <danmcd@joyent.com>
| -rw-r--r-- | usr/src/uts/common/fs/zfs/zfs_dir.c | 1 | ||||
| -rw-r--r-- | usr/src/uts/common/fs/zfs/zfs_znode.c | 2 |
2 files changed, 3 insertions, 0 deletions
diff --git a/usr/src/uts/common/fs/zfs/zfs_dir.c b/usr/src/uts/common/fs/zfs/zfs_dir.c index 3841c11d11..5d377a109e 100644 --- a/usr/src/uts/common/fs/zfs/zfs_dir.c +++ b/usr/src/uts/common/fs/zfs/zfs_dir.c @@ -717,6 +717,7 @@ zfs_rmnode(znode_t *zp) dmu_tx_hold_free(tx, acl_obj, 0, DMU_OBJECT_END); zfs_sa_upgrade_txholds(tx, zp); + dmu_tx_mark_netfree(tx); error = dmu_tx_assign(tx, TXG_WAIT); if (error) { /* diff --git a/usr/src/uts/common/fs/zfs/zfs_znode.c b/usr/src/uts/common/fs/zfs/zfs_znode.c index 257d5b2a35..84ba5947fa 100644 --- a/usr/src/uts/common/fs/zfs/zfs_znode.c +++ b/usr/src/uts/common/fs/zfs/zfs_znode.c @@ -1246,6 +1246,8 @@ zfs_zget(zfsvfs_t *zfsvfs, uint64_t obj_num, znode_t **zpp) if (zp == NULL) { err = SET_ERROR(ENOENT); } else { + if (zp->z_links == 0) + zp->z_unlinked = B_TRUE; *zpp = zp; } ZFS_OBJ_HOLD_EXIT(zfsvfs, obj_num); |
