Skip to content

Commit

Permalink
spa: Let spa_taskq_param_get()'s addition of a newline be optional
Browse files Browse the repository at this point in the history
For FreeBSD sysctls, we don't want the extra newline, since the
sysctl(8) utility will format strings appropriately.

Signed-off-by: Mark Johnston <[email protected]>
  • Loading branch information
markjdb authored and robn committed Jan 11, 2024
1 parent e5230fb commit 4cf9437
Showing 1 changed file with 7 additions and 6 deletions.
13 changes: 7 additions & 6 deletions module/zfs/spa.c
Original file line number Diff line number Diff line change
Expand Up @@ -1292,7 +1292,7 @@ spa_taskq_param_set(zio_type_t t, char *cfg)
}

static int
spa_taskq_param_get(zio_type_t t, char *buf)
spa_taskq_param_get(zio_type_t t, char *buf, boolean_t add_newline)
{
int pos = 0;

Expand All @@ -1310,7 +1310,8 @@ spa_taskq_param_get(zio_type_t t, char *buf)
sep = " ";
}

buf[pos++] = '\n';
if (add_newline)
buf[pos++] = '\n';
buf[pos] = '\0';

return (pos);
Expand All @@ -1328,7 +1329,7 @@ spa_taskq_read_param_set(const char *val, zfs_kernel_param_t *kp)
static int
spa_taskq_read_param_get(char *buf, zfs_kernel_param_t *kp)
{
return (spa_taskq_param_get(ZIO_TYPE_READ, buf));
return (spa_taskq_param_get(ZIO_TYPE_READ, buf, TRUE));
}

static int
Expand All @@ -1342,7 +1343,7 @@ spa_taskq_write_param_set(const char *val, zfs_kernel_param_t *kp)
static int
spa_taskq_write_param_get(char *buf, zfs_kernel_param_t *kp)
{
return (spa_taskq_param_get(ZIO_TYPE_WRITE, buf));
return (spa_taskq_param_get(ZIO_TYPE_WRITE, buf, TRUE));
}
#else
/*
Expand All @@ -1357,7 +1358,7 @@ spa_taskq_read_param(ZFS_MODULE_PARAM_ARGS)
char buf[SPA_TASKQ_PARAM_MAX];
int err;

(void) spa_taskq_param_get(ZIO_TYPE_READ, buf);
(void) spa_taskq_param_get(ZIO_TYPE_READ, buf, FALSE);
err = sysctl_handle_string(oidp, buf, sizeof (buf), req);
if (err || req->newptr == NULL)
return (err);
Expand All @@ -1370,7 +1371,7 @@ spa_taskq_write_param(ZFS_MODULE_PARAM_ARGS)
char buf[SPA_TASKQ_PARAM_MAX];
int err;

(void) spa_taskq_param_get(ZIO_TYPE_WRITE, buf);
(void) spa_taskq_param_get(ZIO_TYPE_WRITE, buf, FALSE);
err = sysctl_handle_string(oidp, buf, sizeof (buf), req);
if (err || req->newptr == NULL)
return (err);
Expand Down

0 comments on commit 4cf9437

Please sign in to comment.