NetBSD Problem Report #55068
From sc.dying@gmail.com Fri Mar 13 01:45:21 2020
Return-Path: <sc.dying@gmail.com>
Received: from mail.netbsd.org (mail.netbsd.org [199.233.217.200])
(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
(Client CN "mail.NetBSD.org", Issuer "mail.NetBSD.org CA" (not verified))
by mollari.NetBSD.org (Postfix) with ESMTPS id 18CAF1A9213
for <gnats-bugs@gnats.NetBSD.org>; Fri, 13 Mar 2020 01:45:21 +0000 (UTC)
Message-Id: <23623508-3e2c-adb9-e947-f9ed851b640c@gmail.com>
Date: Fri, 13 Mar 2020 01:45:14 +0000
From: sc.dying@gmail.com
Reply-To:
To: gnats-bugs@NetBSD.org
Subject: string format in kernhist
>Number: 55068
>Category: kern
>Synopsis: string format in kernhist
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: kern-bug-people
>State: closed
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Fri Mar 13 01:50:00 +0000 2020
>Closed-Date: Sun Mar 15 08:31:24 +0000 2020
>Last-Modified: Sun Mar 15 08:31:24 +0000 2020
>Originator: sc.dying@gmail.com
>Release: NetBSD-current 20200310
>Organization:
>Environment:
>Description:
As mentioned in man of kernhist(9), KERNHIST_LOG strings won't work
in vmstat.
These patches replaces such expressions.
>How-To-Repeat:
>Fix:
Attached diffs provide fixes.
--------------1515D7106EB60E99E37A64F0
Content-Type: text/plain; charset=UTF-8;
name="aue.diff"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
filename="aue.diff"
--- src/sys/dev/usb/if_aue.c.orig 2020-01-29 06:26:12.577923974 +0000
+++ src/sys/dev/usb/if_aue.c 2020-03-09 12:25:32.962025757 +0000
@@ -394,7 +394,7 @@ aue_csr_write_2(struct aue_softc *sc, in
if (err) {
AUEHIST_FUNC();
- AUEHIST_CALLARGS("%s: aue_csr_write_2: reg=%#x err=%d",
+ AUEHIST_CALLARGS("aue%jd: aue_csr_write_2: reg=%#jx err=%jd",
device_unit(un->un_dev), reg, err, 0);
return -1;
}
--------------1515D7106EB60E99E37A64F0
Content-Type: text/plain; charset=UTF-8;
name="usbdi2.diff"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
filename="usbdi2.diff"
--- src/sys/dev/usb/usbdi.c.orig 2020-02-19 22:47:11.374371239 +0000
+++ src/sys/dev/usb/usbdi.c 2020-03-07 12:45:38.601937331 +0000
@@ -396,7 +396,7 @@ usbd_transfer(struct usbd_xfer *xfer)
* accepted by the HCD for some reason. It needs removing
* from the pipe queue.
*/
- USBHIST_LOG(usbdebug, "xfer failed: %s, reinserting",
+ USBHIST_LOG(usbdebug, "xfer failed: %jd, reinserting",
err, 0, 0, 0);
usbd_lock_pipe(pipe);
SDT_PROBE1(usb, device, xfer, preabort, xfer);
@@ -1006,7 +1006,7 @@ usb_transfer_complete(struct usbd_xfer *
xfer->ux_status == USBD_TIMEOUT &&
!usbd_xfer_isread(xfer)) {
USBHIST_LOG(usbdebug, "Possible output ack miss for xfer %#jx: "
- "hiding write timeout to %d.%s for %d bytes written",
+ "hiding write timeout to %jd.%jd for %ju bytes written",
(uintptr_t)xfer, curlwp->l_proc->p_pid, curlwp->l_lid,
xfer->ux_length);
--------------1515D7106EB60E99E37A64F0
Content-Type: text/plain; charset=UTF-8;
name="xhci2.diff"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
filename="xhci2.diff"
--- src/sys/dev/usb/xhci.c.orig 2020-02-15 13:33:57.694031242 +0000
+++ xhci.c 2020-03-09 13:09:45.235825958 +0000
@@ -1307,8 +1307,8 @@ xhci_intr1(struct xhci_softc * const sc)
XHCIHIST_CALLARGS("USBSTS %08jx", usbsts, 0, 0, 0);
if ((usbsts & (XHCI_STS_HSE | XHCI_STS_EINT | XHCI_STS_PCD |
XHCI_STS_HCE)) == 0) {
- DPRINTFN(16, "ignored intr not for %s",
- (uintptr_t)device_xname(sc->sc_dev), 0, 0, 0);
+ DPRINTFN(16, "ignored intr not for xhci%jd",
+ device_unit(sc->sc_dev), 0, 0, 0);
return 0;
}
--------------1515D7106EB60E99E37A64F0--
>Release-Note:
>Audit-Trail:
From: "Christos Zoulas" <christos@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc:
Subject: PR/55068 CVS commit: src/sys/dev/usb
Date: Fri, 13 Mar 2020 14:17:42 -0400
Module Name: src
Committed By: christos
Date: Fri Mar 13 18:17:41 UTC 2020
Modified Files:
src/sys/dev/usb: aubtfwl.c auvitek.c ehci.c emdtv.c emdtv_dtv.c
ezload.c if_athn_usb.c if_atu.c if_aue.c if_axen.c if_cue.c
if_mue.c if_otus.c if_rum.c if_run.c if_smsc.c if_udav.c if_umb.c
if_upgt.c if_ural.c if_ure.c if_url.c if_urndis.c if_urtw.c
if_urtwn.c if_zyd.c irmce.c motg.c ohci.c pseye.c uatp.c uaudio.c
ubsa.c ubsa_common.c uchcom.c ucom.c ucycom.c udsbr.c udsir.c
uftdi.c ugen.c ugensa.c uhci.c uhidev.c uhmodem.c uhso.c uipaq.c
uirda.c ukbd.c ulpt.c umass.c umass_isdata.c umass_scsipi.c umct.c
umodem_common.c uplcom.c usb_quirks.c usbdi.c usbdi_util.c usbnet.c
uslsa.c usscanner.c ustir.c uthum.c utoppy.c uts.c uvideo.c
uvisor.c uvscom.c vhci.c xhci.c
Log Message:
PR/55068: sc.dying: Fix printf formats:
- no %s/%p for kernel log
- 0x% -> %#
- always %j for kernel log
To generate a diff of this commit:
cvs rdiff -u -r1.7 -r1.8 src/sys/dev/usb/aubtfwl.c
cvs rdiff -u -r1.10 -r1.11 src/sys/dev/usb/auvitek.c src/sys/dev/usb/uts.c
cvs rdiff -u -r1.275 -r1.276 src/sys/dev/usb/ehci.c
cvs rdiff -u -r1.13 -r1.14 src/sys/dev/usb/emdtv.c
cvs rdiff -u -r1.12 -r1.13 src/sys/dev/usb/emdtv_dtv.c \
src/sys/dev/usb/if_umb.c src/sys/dev/usb/ubsa_common.c
cvs rdiff -u -r1.17 -r1.18 src/sys/dev/usb/ezload.c
cvs rdiff -u -r1.36 -r1.37 src/sys/dev/usb/if_athn_usb.c \
src/sys/dev/usb/if_run.c src/sys/dev/usb/uvscom.c
cvs rdiff -u -r1.70 -r1.71 src/sys/dev/usb/if_atu.c src/sys/dev/usb/if_axen.c
cvs rdiff -u -r1.163 -r1.164 src/sys/dev/usb/if_aue.c \
src/sys/dev/usb/uaudio.c
cvs rdiff -u -r1.89 -r1.90 src/sys/dev/usb/if_cue.c
cvs rdiff -u -r1.57 -r1.58 src/sys/dev/usb/if_mue.c
cvs rdiff -u -r1.41 -r1.42 src/sys/dev/usb/if_otus.c
cvs rdiff -u -r1.66 -r1.67 src/sys/dev/usb/if_rum.c
cvs rdiff -u -r1.64 -r1.65 src/sys/dev/usb/if_smsc.c \
src/sys/dev/usb/umass_scsipi.c
cvs rdiff -u -r1.74 -r1.75 src/sys/dev/usb/if_udav.c
cvs rdiff -u -r1.28 -r1.29 src/sys/dev/usb/if_upgt.c src/sys/dev/usb/uslsa.c
cvs rdiff -u -r1.62 -r1.63 src/sys/dev/usb/if_ural.c
cvs rdiff -u -r1.35 -r1.36 src/sys/dev/usb/if_ure.c src/sys/dev/usb/usbnet.c
cvs rdiff -u -r1.73 -r1.74 src/sys/dev/usb/if_url.c
cvs rdiff -u -r1.37 -r1.38 src/sys/dev/usb/if_urndis.c
cvs rdiff -u -r1.21 -r1.22 src/sys/dev/usb/if_urtw.c \
src/sys/dev/usb/uhmodem.c
cvs rdiff -u -r1.81 -r1.82 src/sys/dev/usb/if_urtwn.c \
src/sys/dev/usb/usbdi_util.c
cvs rdiff -u -r1.56 -r1.57 src/sys/dev/usb/if_zyd.c
cvs rdiff -u -r1.4 -r1.5 src/sys/dev/usb/irmce.c
cvs rdiff -u -r1.33 -r1.34 src/sys/dev/usb/motg.c src/sys/dev/usb/utoppy.c
cvs rdiff -u -r1.298 -r1.299 src/sys/dev/usb/ohci.c
cvs rdiff -u -r1.25 -r1.26 src/sys/dev/usb/pseye.c
cvs rdiff -u -r1.23 -r1.24 src/sys/dev/usb/uatp.c
cvs rdiff -u -r1.39 -r1.40 src/sys/dev/usb/ubsa.c
cvs rdiff -u -r1.34 -r1.35 src/sys/dev/usb/uchcom.c
cvs rdiff -u -r1.125 -r1.126 src/sys/dev/usb/ucom.c
cvs rdiff -u -r1.49 -r1.50 src/sys/dev/usb/ucycom.c
cvs rdiff -u -r1.29 -r1.30 src/sys/dev/usb/udsbr.c
cvs rdiff -u -r1.9 -r1.10 src/sys/dev/usb/udsir.c
cvs rdiff -u -r1.72 -r1.73 src/sys/dev/usb/uftdi.c
cvs rdiff -u -r1.148 -r1.149 src/sys/dev/usb/ugen.c
cvs rdiff -u -r1.40 -r1.41 src/sys/dev/usb/ugensa.c src/sys/dev/usb/umct.c
cvs rdiff -u -r1.294 -r1.295 src/sys/dev/usb/uhci.c
cvs rdiff -u -r1.76 -r1.77 src/sys/dev/usb/uhidev.c
cvs rdiff -u -r1.32 -r1.33 src/sys/dev/usb/uhso.c
cvs rdiff -u -r1.27 -r1.28 src/sys/dev/usb/uipaq.c
cvs rdiff -u -r1.45 -r1.46 src/sys/dev/usb/uirda.c
cvs rdiff -u -r1.143 -r1.144 src/sys/dev/usb/ukbd.c
cvs rdiff -u -r1.104 -r1.105 src/sys/dev/usb/ulpt.c
cvs rdiff -u -r1.180 -r1.181 src/sys/dev/usb/umass.c
cvs rdiff -u -r1.42 -r1.43 src/sys/dev/usb/umass_isdata.c
cvs rdiff -u -r1.30 -r1.31 src/sys/dev/usb/umodem_common.c
cvs rdiff -u -r1.86 -r1.87 src/sys/dev/usb/uplcom.c
cvs rdiff -u -r1.92 -r1.93 src/sys/dev/usb/usb_quirks.c
cvs rdiff -u -r1.195 -r1.196 src/sys/dev/usb/usbdi.c
cvs rdiff -u -r1.46 -r1.47 src/sys/dev/usb/usscanner.c
cvs rdiff -u -r1.44 -r1.45 src/sys/dev/usb/ustir.c
cvs rdiff -u -r1.18 -r1.19 src/sys/dev/usb/uthum.c
cvs rdiff -u -r1.54 -r1.55 src/sys/dev/usb/uvideo.c src/sys/dev/usb/uvisor.c
cvs rdiff -u -r1.6 -r1.7 src/sys/dev/usb/vhci.c
cvs rdiff -u -r1.119 -r1.120 src/sys/dev/usb/xhci.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
From: sc.dying@gmail.com
To: gnats-bugs@netbsd.org, kern-bug-people@netbsd.org,
gnats-admin@netbsd.org, netbsd-bugs@netbsd.org
Cc:
Subject: Re: PR/55068 CVS commit: src/sys/dev/usb
Date: Sat, 14 Mar 2020 01:26:08 +0000
This is a multi-part message in MIME format.
--------------859BE39AD9E5193BDC5435DE
Content-Type: text/plain; charset=windows-1252
Content-Transfer-Encoding: 7bit
On 2020/03/13 18:20, Christos Zoulas wrote:
> The following reply was made to PR kern/55068; it has been noted by GNATS.
>
> From: "Christos Zoulas" <christos@netbsd.org>
> To: gnats-bugs@gnats.NetBSD.org
> Cc:
> Subject: PR/55068 CVS commit: src/sys/dev/usb
> Date: Fri, 13 Mar 2020 14:17:42 -0400
>
> Module Name: src
> Committed By: christos
> Date: Fri Mar 13 18:17:41 UTC 2020
>
> Modified Files:
> src/sys/dev/usb: aubtfwl.c auvitek.c ehci.c emdtv.c emdtv_dtv.c
> ezload.c if_athn_usb.c if_atu.c if_aue.c if_axen.c if_cue.c
> if_mue.c if_otus.c if_rum.c if_run.c if_smsc.c if_udav.c if_umb.c
> if_upgt.c if_ural.c if_ure.c if_url.c if_urndis.c if_urtw.c
> if_urtwn.c if_zyd.c irmce.c motg.c ohci.c pseye.c uatp.c uaudio.c
> ubsa.c ubsa_common.c uchcom.c ucom.c ucycom.c udsbr.c udsir.c
> uftdi.c ugen.c ugensa.c uhci.c uhidev.c uhmodem.c uhso.c uipaq.c
> uirda.c ukbd.c ulpt.c umass.c umass_isdata.c umass_scsipi.c umct.c
> umodem_common.c uplcom.c usb_quirks.c usbdi.c usbdi_util.c usbnet.c
> uslsa.c usscanner.c ustir.c uthum.c utoppy.c uts.c uvideo.c
> uvisor.c uvscom.c vhci.c xhci.c
>
> Log Message:
> PR/55068: sc.dying: Fix printf formats:
> - no %s/%p for kernel log
> - 0x% -> %#
> - always %j for kernel log
Thank you for fixing these.
A little bit more fixes are attached.
--------------859BE39AD9E5193BDC5435DE
Content-Type: text/plain; charset=UTF-8;
name="usbdi3.diff"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
filename="usbdi3.diff"
--- src/sys/dev/usb/usbdi.c.orig 2020-03-13 23:49:31.928263913 +0000
+++ src/sys/dev/usb/usbdi.c 2020-03-14 00:17:43.088159492 +0000
@@ -1006,7 +1006,7 @@ usb_transfer_complete(struct usbd_xfer *
xfer->ux_status == USBD_TIMEOUT &&
!usbd_xfer_isread(xfer)) {
USBHIST_LOG(usbdebug, "Possible output ack miss for xfer %#jx: "
- "hiding write timeout to %d.%s for %d bytes written",
+ "hiding write timeout to %jd.%jd for %ju bytes written",
(uintptr_t)xfer, curlwp->l_proc->p_pid, curlwp->l_lid,
xfer->ux_length);
--------------859BE39AD9E5193BDC5435DE
Content-Type: text/plain; charset=UTF-8;
name="aue2.diff"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
filename="aue2.diff"
--- src/sys/dev/usb/if_aue.c.orig 2020-03-13 23:49:24.716319736 +0000
+++ src/sys/dev/usb/if_aue.c 2020-03-14 00:23:04.916166672 +0000
@@ -330,7 +330,7 @@ aue_csr_read_2(struct aue_softc *sc, int
if (err) {
AUEHIST_FUNC();
- AUEHIST_CALLARGS("auw%jd: reg=%#jx err=%jd",
+ AUEHIST_CALLARGS("aue%jd: reg=%#jx err=%jd",
device_unit(un->un_dev), reg, err, 0);
return 0;
}
@@ -362,7 +362,7 @@ aue_csr_write_1(struct aue_softc *sc, in
if (err) {
AUEHIST_FUNC();
- AUEHIST_CALLARGS("%jd: reg=%#jx err=%jd",
+ AUEHIST_CALLARGS("aue%jd: reg=%#jx err=%jd",
device_unit(un->un_dev), reg, err, 0);
return -1;
}
@@ -533,7 +533,7 @@ aue_mii_write_reg(struct usbnet *un, int
}
if (i == AUE_TIMEOUT) {
- DPRINTF("%d: phy=%#jx reg=%#jx val=%#jx write timed out",
+ DPRINTF("aue%d: phy=%#jx reg=%#jx val=%#jx write timed out",
device_unit(un->un_dev), phy, reg, val);
return ETIMEDOUT;
}
@@ -587,7 +587,7 @@ aue_mii_statchg(struct ifnet *ifp)
usbnet_unlock_mii(un);
if (usbnet_havelink(un) != hadlink) {
- DPRINTFN(5, "%d: exit link %d",
+ DPRINTFN(5, "aue%d: exit link %d",
device_unit(un->un_dev), usbnet_havelink(un), 0, 0);
}
}
@@ -736,7 +736,7 @@ aue_reset(struct aue_softc *sc)
delay(10000); /* XXX */
//usbd_delay_ms(un->un_udev, 10); /* XXX */
- DPRINTFN(2, "%d: exit", device_unit(un->un_dev), 0, 0, 0);
+ DPRINTFN(2, "aue%d: exit", device_unit(un->un_dev), 0, 0, 0);
}
/*
@@ -959,7 +959,7 @@ aue_tx_prepare(struct usbnet *un, struct
buf[1] = (uint8_t)(m->m_pkthdr.len >> 8);
total_len = m->m_pkthdr.len + 2;
- DPRINTFN(5, "%d: send %d bytes",
+ DPRINTFN(5, "aue%d: send %d bytes",
device_unit(un->un_dev), total_len, 0, 0);
return total_len;
--------------859BE39AD9E5193BDC5435DE--
From: sc.dying@gmail.com
To: gnats-bugs@netbsd.org, kern-bug-people@netbsd.org,
gnats-admin@netbsd.org, netbsd-bugs@netbsd.org
Cc:
Subject: Re: PR/55068 CVS commit: src/sys/dev/usb
Date: Sat, 14 Mar 2020 02:13:44 +0000
On 2020/03/14 01:26, sc.dying@gmail.com wrote:
> On 2020/03/13 18:20, Christos Zoulas wrote:
>> The following reply was made to PR kern/55068; it has been noted by GNATS.
>>
>> From: "Christos Zoulas" <christos@netbsd.org>
>> To: gnats-bugs@gnats.NetBSD.org
>> Cc:
>> Subject: PR/55068 CVS commit: src/sys/dev/usb
>> Date: Fri, 13 Mar 2020 14:17:42 -0400
>>
>> Module Name: src
>> Committed By: christos
>> Date: Fri Mar 13 18:17:41 UTC 2020
>>
>> Modified Files:
>> src/sys/dev/usb: aubtfwl.c auvitek.c ehci.c emdtv.c emdtv_dtv.c
>> ezload.c if_athn_usb.c if_atu.c if_aue.c if_axen.c if_cue.c
>> if_mue.c if_otus.c if_rum.c if_run.c if_smsc.c if_udav.c if_umb.c
>> if_upgt.c if_ural.c if_ure.c if_url.c if_urndis.c if_urtw.c
>> if_urtwn.c if_zyd.c irmce.c motg.c ohci.c pseye.c uatp.c uaudio.c
>> ubsa.c ubsa_common.c uchcom.c ucom.c ucycom.c udsbr.c udsir.c
>> uftdi.c ugen.c ugensa.c uhci.c uhidev.c uhmodem.c uhso.c uipaq.c
>> uirda.c ukbd.c ulpt.c umass.c umass_isdata.c umass_scsipi.c umct.c
>> umodem_common.c uplcom.c usb_quirks.c usbdi.c usbdi_util.c usbnet.c
>> uslsa.c usscanner.c ustir.c uthum.c utoppy.c uts.c uvideo.c
>> uvisor.c uvscom.c vhci.c xhci.c
>>
>> Log Message:
>> PR/55068: sc.dying: Fix printf formats:
>> - no %s/%p for kernel log
>> - 0x% -> %#
>> - always %j for kernel log
>
> Thank you for fixing these.
>
> A little bit more fixes are attached.
Oops, one more.
--- src/sys/dev/usb/xhci.c.orig 2020-03-13 23:49:33.471927504 +0000
+++ src/sys/dev/usb/xhci.c 2020-03-14 02:08:25.182149848 +0000
@@ -1308,7 +1308,7 @@ xhci_intr1(struct xhci_softc * const sc)
if ((usbsts & (XHCI_STS_HSE | XHCI_STS_EINT | XHCI_STS_PCD |
XHCI_STS_HCE)) == 0) {
DPRINTFN(16, "ignored intr not for %jd",
- device_uinit(sc->sc_dev), 0, 0, 0);
+ device_unit(sc->sc_dev), 0, 0, 0);
return 0;
}
From: "Christos Zoulas" <christos@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc:
Subject: PR/55068 CVS commit: src/sys/dev/usb
Date: Fri, 13 Mar 2020 22:22:16 -0400
Module Name: src
Committed By: christos
Date: Sat Mar 14 02:22:16 UTC 2020
Modified Files:
src/sys/dev/usb: if_aue.c usbdi.c
Log Message:
more changes from sc.dying in PR/55068
To generate a diff of this commit:
cvs rdiff -u -r1.164 -r1.165 src/sys/dev/usb/if_aue.c
cvs rdiff -u -r1.196 -r1.197 src/sys/dev/usb/usbdi.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
From: sc dying <sc.dying@gmail.com>
To: kern-bug-people@netbsd.org, gnats-admin@netbsd.org, netbsd-bugs@netbsd.org,
gnats-bugs@netbsd.org
Cc:
Subject: Re: kern/55068: string format in kernhist
Date: Sun, 15 Mar 2020 00:38:52 +0000
Thank you.
The problems that I reported have been fixed.
State-Changed-From-To: open->closed
State-Changed-By: wiz@NetBSD.org
State-Changed-When: Sun, 15 Mar 2020 08:31:24 +0000
State-Changed-Why:
christos fixed it. Thanks for the confirmation!
>Unformatted:
This is a multi-part message in MIME format.
--------------1515D7106EB60E99E37A64F0
Content-Type: text/plain; charset=windows-1252
Content-Transfer-Encoding: 7bit
(Contact us)
$NetBSD: query-full-pr,v 1.46 2020/01/03 16:35:01 leot Exp $
$NetBSD: gnats_config.sh,v 1.9 2014/08/02 14:16:04 spz Exp $
Copyright © 1994-2020
The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.