From nobody Sun Dec 14 22:15:31 2025 Received: from bali.collaboradmins.com (bali.collaboradmins.com [148.251.105.195]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id D12602EBB87; Wed, 8 Oct 2025 16:55:05 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=148.251.105.195 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1759942508; cv=none; b=M+HgL9RK63bcxkNa35hiGW2l64v18KxIjNIA356d6PK8G4shGay99buUvV0r3w6t0JYkvCsxB8Rr9FzlHfIjsilPj10MpDzB77p7o2biNO17FQ+q7PBqtXf/qRnb0erAhJvjPRjaQ4Ek7Fpp9PCFL7dw/wtNecM5BCwiLqhQ72M= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1759942508; c=relaxed/simple; bh=23HXs/BzkHecZCbZPBCOLZ0W6C+gh3KPP6L425XDanU=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=rkMNuIu7PJWthkmsqasCwogaC+idUaxxWFqtdjI8fa9FNvwPVh3yg+heT/ByIGeNuSL66t6edCJ1alYYOo8RpUzFWAAnsi6xl6fLNxHIFgxi/4AgSHx4dxYq5HSL4FA7r7KLOSWxaO+arfra+6HoAyhEicL6fBaPYmZe3L80IxE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=collabora.com; spf=pass smtp.mailfrom=collabora.com; dkim=pass (2048-bit key) header.d=collabora.com header.i=@collabora.com header.b=SkIdyrQe; arc=none smtp.client-ip=148.251.105.195 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=collabora.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=collabora.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=collabora.com header.i=@collabora.com header.b="SkIdyrQe" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1759942497; bh=23HXs/BzkHecZCbZPBCOLZ0W6C+gh3KPP6L425XDanU=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=SkIdyrQeCKFw6dKwU2EcVj8HgskBpgjBr5Gjjr10aQ4Oqp6xD2djZygks4vPRIYFy 6rfQJJwR0EI8tCcQsfbQLy1m56MW9+IJim7QM1e8r8384ktk7+cvz1/wm0ao1Yf3Mh DsLqdpJ6Xj6E/g5HZToBJH3WqJUuGJ9XjktzpqkecrZY3WHfd0Nf2/wErp7avtye4p h+awfY1znV8iLGkAI31jEbMQsRT1pauHjnB5FDeSVApiXXnUoCIZKde4BK2DwjDLTK 8HkNxYapkeP8vKLTNrpZtqygqJQpplTvt/vhBFcnGWqeu/2HciWpIFL4IXY2Ch7iCJ nUIDaVJ+HX+uA== Received: from localhost (unknown [82.79.138.145]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (prime256v1) server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: cristicc) by bali.collaboradmins.com (Postfix) with UTF8SMTPSA id 7D5E817E0A28; Wed, 8 Oct 2025 18:54:57 +0200 (CEST) From: Cristian Ciocaltea Date: Wed, 08 Oct 2025 19:54:26 +0300 Subject: [PATCH v2 1/2] usb: vhci-hcd: Switch to dev_err_probe() in probe path Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20251008-vhci-hcd-cleanup-v2-1-b6acc4dd6e44@collabora.com> References: <20251008-vhci-hcd-cleanup-v2-0-b6acc4dd6e44@collabora.com> In-Reply-To: <20251008-vhci-hcd-cleanup-v2-0-b6acc4dd6e44@collabora.com> To: Valentina Manea , Shuah Khan , Hongren Zheng , Greg Kroah-Hartman Cc: kernel@collabora.com, linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org, Shuah Khan X-Mailer: b4 0.14.3 Replace pr_err() calls in vhci_hcd_probe() with dev_err_probe(), to simplify error handling a bit and improve consistency. Acked-by: Shuah Khan Signed-off-by: Cristian Ciocaltea --- drivers/usb/usbip/vhci_hcd.c | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/drivers/usb/usbip/vhci_hcd.c b/drivers/usb/usbip/vhci_hcd.c index 0d6c10a8490c..275391844aec 100644 --- a/drivers/usb/usbip/vhci_hcd.c +++ b/drivers/usb/usbip/vhci_hcd.c @@ -1372,10 +1372,9 @@ static int vhci_hcd_probe(struct platform_device *pd= ev) * Our private data is also allocated automatically. */ hcd_hs =3D usb_create_hcd(&vhci_hc_driver, &pdev->dev, dev_name(&pdev->de= v)); - if (!hcd_hs) { - pr_err("create primary hcd failed\n"); - return -ENOMEM; - } + if (!hcd_hs) + return dev_err_probe(&pdev->dev, -ENOMEM, "create primary hcd failed\n"); + hcd_hs->has_tt =3D 1; =20 /* @@ -1383,22 +1382,21 @@ static int vhci_hcd_probe(struct platform_device *p= dev) * Call the driver's reset() and start() routines. */ ret =3D usb_add_hcd(hcd_hs, 0, 0); - if (ret !=3D 0) { - pr_err("usb_add_hcd hs failed %d\n", ret); + if (ret) { + dev_err_probe(&pdev->dev, ret, "usb_add_hcd hs failed\n"); goto put_usb2_hcd; } =20 hcd_ss =3D usb_create_shared_hcd(&vhci_hc_driver, &pdev->dev, dev_name(&pdev->dev), hcd_hs); if (!hcd_ss) { - ret =3D -ENOMEM; - pr_err("create shared hcd failed\n"); + ret =3D dev_err_probe(&pdev->dev, -ENOMEM, "create shared hcd failed\n"); goto remove_usb2_hcd; } =20 ret =3D usb_add_hcd(hcd_ss, 0, 0); if (ret) { - pr_err("usb_add_hcd ss failed %d\n", ret); + dev_err_probe(&pdev->dev, ret, "usb_add_hcd ss failed\n"); goto put_usb3_hcd; } =20 --=20 2.51.0 From nobody Sun Dec 14 22:15:31 2025 Received: from bali.collaboradmins.com (bali.collaboradmins.com [148.251.105.195]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id D117B261B70; Wed, 8 Oct 2025 16:55:05 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=148.251.105.195 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1759942508; cv=none; b=qcQdxPMaAx6duNK5axDmdvLLdR4inAOpi8SR7TATVV+/RE8bN8KscuLUj6pYM1PBwYYkba6NPlT+EsUJUNYTy4qIiYBVpYVky8z79pFzi3H8UVzGfpw4fu7AK1POoE5myNgHETnq14F5Xj0Kv4smkbjc/+n3jyO20d5rTZTHgo4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1759942508; c=relaxed/simple; bh=YahqDDuhRZa4g13oY+WjhTtVkJAzOwJQm4YBAXCNn1s=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=iKSJTR6zCJGyn7UvPlS8UyISQKF0HdKm1gVB7gN4im6Tb/dmcwnfguIOlEbIVj5QutySzb6RgmdV4qtufPNOYfoTLpn6KazdvxQ5iwRVjGbaip6+blB43sYae8D3uyLnjnuH4FZklhW1gQZXwNYxdrWyO//XDuLnIQCOhp6IS6s= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=collabora.com; spf=pass smtp.mailfrom=collabora.com; dkim=pass (2048-bit key) header.d=collabora.com header.i=@collabora.com header.b=ehA5i2Va; arc=none smtp.client-ip=148.251.105.195 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=collabora.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=collabora.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=collabora.com header.i=@collabora.com header.b="ehA5i2Va" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1759942498; bh=YahqDDuhRZa4g13oY+WjhTtVkJAzOwJQm4YBAXCNn1s=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=ehA5i2VaPbUuteclN3ozLjGgbMAA9cK8QQoYpStTVafMiEm+KnFtY38YiV6H1klO5 Pgx2JnVOxZ7yYfBQJxkEZ5k14zvnm77Ibr33C1urTUUclAu4ofTVTGsIgG0PaahbEP QNQx/guladkbwrqjGwlh/7N7BZFF7zRBltudcjEVe6AAZnB02xczsG9MEPAk5gTyx5 +uUnhhpM2W99LS2SPwsUrPQwZ2DHaMEwQKJWgDMNPQMoW95fif7JFbsGhSPjZxjX0K 1mRdAu0IXKp6oMZHPKPj51Y3DY1M1mOkLnlYw3KVxyblbGqfZlv5kTua8VCpfsqH0c cDaxc4A4N/HFg== Received: from localhost (unknown [82.79.138.145]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (prime256v1) server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: cristicc) by bali.collaboradmins.com (Postfix) with UTF8SMTPSA id 507B817E0CF8; Wed, 8 Oct 2025 18:54:58 +0200 (CEST) From: Cristian Ciocaltea Date: Wed, 08 Oct 2025 19:54:27 +0300 Subject: [PATCH v2 2/2] usb: vhci-hcd: Replace pr_*() with dev_*() logging Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20251008-vhci-hcd-cleanup-v2-2-b6acc4dd6e44@collabora.com> References: <20251008-vhci-hcd-cleanup-v2-0-b6acc4dd6e44@collabora.com> In-Reply-To: <20251008-vhci-hcd-cleanup-v2-0-b6acc4dd6e44@collabora.com> To: Valentina Manea , Shuah Khan , Hongren Zheng , Greg Kroah-Hartman Cc: kernel@collabora.com, linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org, Shuah Khan X-Mailer: b4 0.14.3 Where possible, use driver model logging helpers dev_*() instead of pr_*() to ensure the messages are always associated with the corresponding device/driver. While at it, join the split strings to make checkpatch happy and regain ability to grep for those log messages in the source code: WARNING: quoted string split across lines Acked-by: Shuah Khan Signed-off-by: Cristian Ciocaltea --- drivers/usb/usbip/vhci_hcd.c | 74 +++++++++++++++++++++++-----------------= ---- 1 file changed, 39 insertions(+), 35 deletions(-) diff --git a/drivers/usb/usbip/vhci_hcd.c b/drivers/usb/usbip/vhci_hcd.c index 275391844aec..72e9a8e74931 100644 --- a/drivers/usb/usbip/vhci_hcd.c +++ b/drivers/usb/usbip/vhci_hcd.c @@ -346,9 +346,10 @@ static int vhci_hub_control(struct usb_hcd *hcd, u16 t= ypeReq, u16 wValue, if (wIndex < 1 || wIndex > VHCI_HC_PORTS) { invalid_rhport =3D true; if (wIndex > VHCI_HC_PORTS) - pr_err("invalid port number %d\n", wIndex); - } else + dev_err(hcd_dev(hcd), "invalid port number %d\n", wIndex); + } else { rhport =3D wIndex - 1; + } =20 vhci_hcd =3D hcd_to_vhci_hcd(hcd); vhci =3D vhci_hcd->vhci; @@ -368,14 +369,14 @@ static int vhci_hub_control(struct usb_hcd *hcd, u16 = typeReq, u16 wValue, break; case ClearPortFeature: if (invalid_rhport) { - pr_err("invalid port number %d\n", wIndex); + dev_err(hcd_dev(hcd), "invalid port number %d\n", wIndex); goto error; } switch (wValue) { case USB_PORT_FEAT_SUSPEND: if (hcd->speed >=3D HCD_USB3) { - pr_err(" ClearPortFeature: USB_PORT_FEAT_SUSPEND req not " - "supported for USB 3.0 roothub\n"); + dev_err(hcd_dev(hcd), + "ClearPortFeature: USB_PORT_FEAT_SUSPEND req not supported for USB 3.= 0 roothub\n"); goto error; } usbip_dbg_vhci_rh( @@ -408,7 +409,8 @@ static int vhci_hub_control(struct usb_hcd *hcd, u16 ty= peReq, u16 wValue, if (hcd->speed >=3D HCD_USB3 && (wLength < USB_DT_SS_HUB_SIZE || wValue !=3D (USB_DT_SS_HUB << 8))) { - pr_err("Wrong hub descriptor type for USB 3.0 roothub.\n"); + dev_err(hcd_dev(hcd), + "Wrong hub descriptor type for USB 3.0 roothub.\n"); goto error; } if (hcd->speed >=3D HCD_USB3) @@ -433,7 +435,7 @@ static int vhci_hub_control(struct usb_hcd *hcd, u16 ty= peReq, u16 wValue, case GetPortStatus: usbip_dbg_vhci_rh(" GetPortStatus port %x\n", wIndex); if (invalid_rhport) { - pr_err("invalid port number %d\n", wIndex); + dev_err(hcd_dev(hcd), "invalid port number %d\n", wIndex); retval =3D -EPIPE; goto error; } @@ -483,7 +485,7 @@ static int vhci_hub_control(struct usb_hcd *hcd, u16 ty= peReq, u16 wValue, USB_PORT_STAT_LOW_SPEED; break; default: - pr_err("vhci_device speed not set\n"); + dev_err(hcd_dev(hcd), "vhci_device speed not set\n"); break; } } @@ -505,8 +507,8 @@ static int vhci_hub_control(struct usb_hcd *hcd, u16 ty= peReq, u16 wValue, usbip_dbg_vhci_rh( " SetPortFeature: USB_PORT_FEAT_LINK_STATE\n"); if (hcd->speed < HCD_USB3) { - pr_err("USB_PORT_FEAT_LINK_STATE req not " - "supported for USB 2.0 roothub\n"); + dev_err(hcd_dev(hcd), + "USB_PORT_FEAT_LINK_STATE req not supported for USB 2.0 roothub\n"); goto error; } /* @@ -523,8 +525,8 @@ static int vhci_hub_control(struct usb_hcd *hcd, u16 ty= peReq, u16 wValue, " SetPortFeature: USB_PORT_FEAT_U2_TIMEOUT\n"); /* TODO: add suspend/resume support! */ if (hcd->speed < HCD_USB3) { - pr_err("USB_PORT_FEAT_U1/2_TIMEOUT req not " - "supported for USB 2.0 roothub\n"); + dev_err(hcd_dev(hcd), + "USB_PORT_FEAT_U1/2_TIMEOUT req not supported for USB 2.0 roothub\n"); goto error; } break; @@ -533,13 +535,13 @@ static int vhci_hub_control(struct usb_hcd *hcd, u16 = typeReq, u16 wValue, " SetPortFeature: USB_PORT_FEAT_SUSPEND\n"); /* Applicable only for USB2.0 hub */ if (hcd->speed >=3D HCD_USB3) { - pr_err("USB_PORT_FEAT_SUSPEND req not " - "supported for USB 3.0 roothub\n"); + dev_err(hcd_dev(hcd), + "USB_PORT_FEAT_SUSPEND req not supported for USB 3.0 roothub\n"); goto error; } =20 if (invalid_rhport) { - pr_err("invalid port number %d\n", wIndex); + dev_err(hcd_dev(hcd), "invalid port number %d\n", wIndex); goto error; } =20 @@ -549,7 +551,7 @@ static int vhci_hub_control(struct usb_hcd *hcd, u16 ty= peReq, u16 wValue, usbip_dbg_vhci_rh( " SetPortFeature: USB_PORT_FEAT_POWER\n"); if (invalid_rhport) { - pr_err("invalid port number %d\n", wIndex); + dev_err(hcd_dev(hcd), "invalid port number %d\n", wIndex); goto error; } if (hcd->speed >=3D HCD_USB3) @@ -561,13 +563,13 @@ static int vhci_hub_control(struct usb_hcd *hcd, u16 = typeReq, u16 wValue, usbip_dbg_vhci_rh( " SetPortFeature: USB_PORT_FEAT_BH_PORT_RESET\n"); if (invalid_rhport) { - pr_err("invalid port number %d\n", wIndex); + dev_err(hcd_dev(hcd), "invalid port number %d\n", wIndex); goto error; } /* Applicable only for USB3.0 hub */ if (hcd->speed < HCD_USB3) { - pr_err("USB_PORT_FEAT_BH_PORT_RESET req not " - "supported for USB 2.0 roothub\n"); + dev_err(hcd_dev(hcd), + "USB_PORT_FEAT_BH_PORT_RESET req not supported for USB 2.0 roothub\n"= ); goto error; } fallthrough; @@ -575,7 +577,7 @@ static int vhci_hub_control(struct usb_hcd *hcd, u16 ty= peReq, u16 wValue, usbip_dbg_vhci_rh( " SetPortFeature: USB_PORT_FEAT_RESET\n"); if (invalid_rhport) { - pr_err("invalid port number %d\n", wIndex); + dev_err(hcd_dev(hcd), "invalid port number %d\n", wIndex); goto error; } /* if it's already enabled, disable */ @@ -598,7 +600,7 @@ static int vhci_hub_control(struct usb_hcd *hcd, u16 ty= peReq, u16 wValue, usbip_dbg_vhci_rh(" SetPortFeature: default %d\n", wValue); if (invalid_rhport) { - pr_err("invalid port number %d\n", wIndex); + dev_err(hcd_dev(hcd), "invalid port number %d\n", wIndex); goto error; } if (wValue >=3D 32) @@ -618,8 +620,8 @@ static int vhci_hub_control(struct usb_hcd *hcd, u16 ty= peReq, u16 wValue, case GetPortErrorCount: usbip_dbg_vhci_rh(" GetPortErrorCount\n"); if (hcd->speed < HCD_USB3) { - pr_err("GetPortErrorCount req not " - "supported for USB 2.0 roothub\n"); + dev_err(hcd_dev(hcd), + "GetPortErrorCount req not supported for USB 2.0 roothub\n"); goto error; } /* We'll always return 0 since this is a dummy hub */ @@ -628,13 +630,14 @@ static int vhci_hub_control(struct usb_hcd *hcd, u16 = typeReq, u16 wValue, case SetHubDepth: usbip_dbg_vhci_rh(" SetHubDepth\n"); if (hcd->speed < HCD_USB3) { - pr_err("SetHubDepth req not supported for " - "USB 2.0 roothub\n"); + dev_err(hcd_dev(hcd), + "SetHubDepth req not supported for USB 2.0 roothub\n"); goto error; } break; default: - pr_err("default hub control req: %04x v%04x i%04x l%d\n", + dev_err(hcd_dev(hcd), + "default hub control req: %04x v%04x i%04x l%d\n", typeReq, wValue, wIndex, wLength); error: /* "protocol stall" on error */ @@ -642,7 +645,7 @@ static int vhci_hub_control(struct usb_hcd *hcd, u16 ty= peReq, u16 wValue, } =20 if (usbip_dbg_flag_vhci_rh) { - pr_debug("port %d\n", rhport); + dev_dbg(hcd_dev(hcd), "%s port %d\n", __func__, rhport); /* Only dump valid port status */ if (!invalid_rhport) { dump_port_status_diff(prev_port_status[rhport], @@ -702,7 +705,7 @@ static int vhci_urb_enqueue(struct usb_hcd *hcd, struct= urb *urb, gfp_t mem_flag unsigned long flags; =20 if (portnum > VHCI_HC_PORTS) { - pr_err("invalid port number %d\n", portnum); + dev_err(hcd_dev(hcd), "invalid port number %d\n", portnum); return -ENODEV; } vdev =3D &vhci_hcd->vdev[portnum-1]; @@ -958,7 +961,7 @@ static int vhci_urb_dequeue(struct usb_hcd *hcd, struct= urb *urb, int status) =20 unlink->seqnum =3D atomic_inc_return(&vhci_hcd->seqnum); if (unlink->seqnum =3D=3D 0xffff) - pr_info("seqnum max\n"); + dev_info(hcd_dev(hcd), "seqnum max\n"); =20 unlink->unlink_seqnum =3D priv->seqnum; =20 @@ -1036,10 +1039,11 @@ static void vhci_device_unlink_cleanup(struct vhci_= device *vdev) static void vhci_shutdown_connection(struct usbip_device *ud) { struct vhci_device *vdev =3D container_of(ud, struct vhci_device, ud); + struct usb_hcd *hcd =3D vhci_hcd_to_hcd(vdev_to_vhci_hcd(vdev)); =20 /* need this? see stub_dev.c */ if (ud->tcp_socket) { - pr_debug("shutdown tcp_socket %d\n", ud->sockfd); + dev_dbg(hcd_dev(hcd), "shutdown tcp_socket %d\n", ud->sockfd); kernel_sock_shutdown(ud->tcp_socket, SHUT_RDWR); } =20 @@ -1052,7 +1056,7 @@ static void vhci_shutdown_connection(struct usbip_dev= ice *ud) kthread_stop_put(vdev->ud.tcp_tx); vdev->ud.tcp_tx =3D NULL; } - pr_info("stop threads\n"); + dev_info(hcd_dev(hcd), "stop threads\n"); =20 /* active connection is closed */ if (vdev->ud.tcp_socket) { @@ -1060,7 +1064,7 @@ static void vhci_shutdown_connection(struct usbip_dev= ice *ud) vdev->ud.tcp_socket =3D NULL; vdev->ud.sockfd =3D -1; } - pr_info("release socket\n"); + dev_info(hcd_dev(hcd), "release socket\n"); =20 vhci_device_unlink_cleanup(vdev); =20 @@ -1086,7 +1090,7 @@ static void vhci_shutdown_connection(struct usbip_dev= ice *ud) */ rh_port_disconnect(vdev); =20 - pr_info("disconnect device\n"); + dev_info(hcd_dev(hcd), "disconnect device\n"); } =20 static void vhci_device_reset(struct usbip_device *ud) @@ -1222,7 +1226,7 @@ static int vhci_start(struct usb_hcd *hcd) =20 id =3D hcd_name_to_id(hcd_name(hcd)); if (id < 0) { - pr_err("invalid vhci name %s\n", hcd_name(hcd)); + dev_err(hcd_dev(hcd), "invalid vhci name %s\n", hcd_name(hcd)); return -EINVAL; } =20 @@ -1239,7 +1243,7 @@ static int vhci_start(struct usb_hcd *hcd) vhci_finish_attr_group(); return err; } - pr_info("created sysfs %s\n", hcd_name(hcd)); + dev_info(hcd_dev(hcd), "created sysfs %s\n", hcd_name(hcd)); } =20 return 0; --=20 2.51.0