diff options
author | Mateusz Guzik <mjg@FreeBSD.org> | 2020-01-12 06:07:54 +0000 |
---|---|---|
committer | Mateusz Guzik <mjg@FreeBSD.org> | 2020-01-12 06:07:54 +0000 |
commit | 879e0604ee6ac0ded87f6754141e7af25f4b7d5a (patch) | |
tree | 377214dcbc05356fc2c2709c00fb9f037b59573b /sys/cddl/contrib/opensolaris/uts | |
parent | 76a49ebaa6f20a6d11c310fd675b53bfb99360f3 (diff) | |
download | src-879e0604ee6ac0ded87f6754141e7af25f4b7d5a.tar.gz src-879e0604ee6ac0ded87f6754141e7af25f4b7d5a.zip |
Add KERNEL_PANICKED macro for use in place of direct panicstr tests
Notes
Notes:
svn path=/head/; revision=356655
Diffstat (limited to 'sys/cddl/contrib/opensolaris/uts')
-rw-r--r-- | sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c | 2 | ||||
-rw-r--r-- | sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c | 2 | ||||
-rw-r--r-- | sys/cddl/contrib/opensolaris/uts/common/os/fm.c | 8 |
3 files changed, 6 insertions, 6 deletions
diff --git a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c index 26bb522a8427..4c225dc40371 100644 --- a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c +++ b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c @@ -7296,7 +7296,7 @@ zfs_shutdown(void *arg __unused, int howto __unused) /* * ZFS fini routines can not properly work in a panic-ed system. */ - if (panicstr == NULL) + if (!KERNEL_PANICKED()) (void)zfs__fini(); } diff --git a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c index 6dfbac499e0b..a4bad68ded4a 100644 --- a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c +++ b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c @@ -293,7 +293,7 @@ zfs_sync(vfs_t *vfsp, int waitfor) * Data integrity is job one. We don't want a compromised kernel * writing to the storage pool, so we never sync during panic. */ - if (panicstr) + if (KERNEL_PANICKED()) return (0); /* diff --git a/sys/cddl/contrib/opensolaris/uts/common/os/fm.c b/sys/cddl/contrib/opensolaris/uts/common/os/fm.c index 57b23356b12d..21aac7a1b49d 100644 --- a/sys/cddl/contrib/opensolaris/uts/common/os/fm.c +++ b/sys/cddl/contrib/opensolaris/uts/common/os/fm.c @@ -119,7 +119,7 @@ fm_drain(void *private, void *data, errorq_elem_t *eep) { nvlist_t *nvl = errorq_elem_nvl(ereport_errorq, eep); - if (!panicstr) + if (!KERNEL_PANICKED()) (void) fm_ereport_post(nvl, EVCH_TRYHARD); else fm_nvprint(nvl); @@ -420,7 +420,7 @@ fm_banner(void) if (!fm_panicstr) return; /* panic was not initiated by fm_panic(); do nothing */ - if (panicstr) { + if (KERNEL_PANICKED()) { tod = panic_hrestime; now = panic_hrtime; } else { @@ -472,7 +472,7 @@ fm_ereport_dump(void) char *buf; size_t len; - if (panicstr) { + if (KERNEL_PANICKED()) { tod = panic_hrestime; now = panic_hrtime; } else { @@ -486,7 +486,7 @@ fm_ereport_dump(void) * In the panic case, sysevent_evc_walk_init() will return NULL. */ if ((chq = sysevent_evc_walk_init(ereport_chan, NULL)) == NULL && - !panicstr) + !KERNEL_PANICKED()) return; /* event channel isn't initialized yet */ while ((sep = sysevent_evc_walk_step(chq)) != NULL) { |