diff options
author | np <np@FreeBSD.org> | 2015-04-08 01:25:26 +0000 |
---|---|---|
committer | np <np@FreeBSD.org> | 2015-04-08 01:25:26 +0000 |
commit | 406b6dc8fbf65c592dac719ca5937c1dcd684008 (patch) | |
tree | d33a09742b2d32bb83e5ecf91422b029e78f462b /sys | |
parent | b8f1e4d961a8e2c1edd31f3e3313f58dc6a0e22b (diff) | |
download | FreeBSD-src-406b6dc8fbf65c592dac719ca5937c1dcd684008.zip FreeBSD-src-406b6dc8fbf65c592dac719ca5937c1dcd684008.tar.gz |
MFC r280403:
cxgbe(4): Do not call sbuf_trim on an sbuf with a drain function.
Diffstat (limited to 'sys')
-rw-r--r-- | sys/dev/cxgbe/t4_main.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/sys/dev/cxgbe/t4_main.c b/sys/dev/cxgbe/t4_main.c index ddc0842..506386d 100644 --- a/sys/dev/cxgbe/t4_main.c +++ b/sys/dev/cxgbe/t4_main.c @@ -4951,13 +4951,16 @@ cxgbe_sysctls(struct port_info *pi) static int sysctl_int_array(SYSCTL_HANDLER_ARGS) { - int rc, *i; + int rc, *i, space = 0; struct sbuf sb; sbuf_new(&sb, NULL, 32, SBUF_AUTOEXTEND); - for (i = arg1; arg2; arg2 -= sizeof(int), i++) - sbuf_printf(&sb, "%d ", *i); - sbuf_trim(&sb); + for (i = arg1; arg2; arg2 -= sizeof(int), i++) { + if (space) + sbuf_printf(&sb, " "); + sbuf_printf(&sb, "%d", *i); + space = 1; + } sbuf_finish(&sb); rc = sysctl_handle_string(oidp, sbuf_data(&sb), sbuf_len(&sb), req); sbuf_delete(&sb); |