Skip to content

Commit

Permalink
Don't scale zfs_zevent_len_max by CPU count
Browse files Browse the repository at this point in the history
The lower bound for this scaling to too low and the upper bound is too
high.  Use a fixed default length of 512 instead, which is a reasonable
value on any system.

Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Ryan Moeller <ryan@iXsystems.com>
Closes openzfs#11822
  • Loading branch information
Ryan Moeller committed May 6, 2021
1 parent 2ca4c2e commit e44c45e
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 9 deletions.
9 changes: 4 additions & 5 deletions man/man5/zfs-module-parameters.5
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
.\" CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your
.\" own identifying information:
.\" Portions Copyright [yyyy] [name of copyright owner]
.TH ZFS-MODULE-PARAMETERS 5 "Aug 24, 2020" OpenZFS
.TH ZFS-MODULE-PARAMETERS 5 "Mar 31, 2021" OpenZFS
.SH NAME
zfs\-module\-parameters \- ZFS module parameters
.SH DESCRIPTION
Expand Down Expand Up @@ -3745,11 +3745,10 @@ Use \fB1\fR for yes and \fB0\fR for no (default).
\fBzfs_zevent_len_max\fR (int)
.ad
.RS 12n
Max event queue length. A value of 0 will result in a calculated value which
increases with the number of CPUs in the system (minimum 64 events). Events
in the queue can be viewed with the \fBzpool events\fR command.
Max event queue length.
Events in the queue can be viewed with the \fBzpool events\fR command.
.sp
Default value: \fB0\fR.
Default value: \fB512\fR.
.RE

.sp
Expand Down
5 changes: 1 addition & 4 deletions module/zfs/fm.c
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@
#include <sys/time.h>
#include <sys/zfs_ioctl.h>

int zfs_zevent_len_max = 0;
int zfs_zevent_len_max = 512;
int zfs_zevent_cols = 80;
int zfs_zevent_console = 0;

Expand Down Expand Up @@ -1621,9 +1621,6 @@ fm_init(void)
zevent_len_cur = 0;
zevent_flags = 0;

if (zfs_zevent_len_max == 0)
zfs_zevent_len_max = ERPT_MAX_ERRS * MAX(max_ncpus, 4);

/* Initialize zevent allocation and generation kstats */
fm_ksp = kstat_create("zfs", 0, "fm", "misc", KSTAT_TYPE_NAMED,
sizeof (struct erpt_kstat) / sizeof (kstat_named_t),
Expand Down

0 comments on commit e44c45e

Please sign in to comment.