Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/external/cddl/osnet/dist/uts/common/fs/zfs With zfs_netbsd_r...
details: https://anonhg.NetBSD.org/src/rev/0ae6b14f9717
branches: trunk
changeset: 970315:0ae6b14f9717
user: hannken <hannken%NetBSD.org@localhost>
date: Fri Mar 20 08:26:01 2020 +0000
description:
With zfs_netbsd_reclaim() no longer doing an unconditional
zil commit dmu_buf_get_user() may return a NULL handle when
the znode already disappeared.
diffstat:
external/cddl/osnet/dist/uts/common/fs/zfs/zfs_znode.c | 6 +++++-
1 files changed, 5 insertions(+), 1 deletions(-)
diffs (16 lines):
diff -r 83ee3d2aa460 -r 0ae6b14f9717 external/cddl/osnet/dist/uts/common/fs/zfs/zfs_znode.c
--- a/external/cddl/osnet/dist/uts/common/fs/zfs/zfs_znode.c Fri Mar 20 08:02:55 2020 +0000
+++ b/external/cddl/osnet/dist/uts/common/fs/zfs/zfs_znode.c Fri Mar 20 08:26:01 2020 +0000
@@ -1315,7 +1315,11 @@
return (SET_ERROR(EINVAL));
}
hdl = dmu_buf_get_user(db);
- ASSERT3P(hdl, !=, NULL);
+ if (hdl == NULL) {
+ sa_buf_rele(db, NULL);
+ ZFS_OBJ_HOLD_EXIT(zfsvfs, obj_num);
+ return (SET_ERROR(EINVAL));
+ }
zp = sa_get_userdata(hdl);
ASSERT3U(zp->z_id, ==, obj_num);
sa_buf_rele(db, NULL);
Home |
Main Index |
Thread Index |
Old Index