Re: [PATCH 1/1] HID: Print specific timeout error in probe

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 10 Nov 2022, Andreas Bergmeier wrote:

> When -ETIMEOUT gets reported ensure that the error message mentiones
> timeout.
> 
> Signed-off-by: Andreas Bergmeier <abergmeier@xxxxxxx>
> ---
>  drivers/hid/hid-logitech-hidpp.c | 8 ++++++--
>  1 file changed, 6 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/hid/hid-logitech-hidpp.c b/drivers/hid/hid-logitech-hidpp.c
> index 20ae7f73ef08..a0c148a8df6c 100644
> --- a/drivers/hid/hid-logitech-hidpp.c
> +++ b/drivers/hid/hid-logitech-hidpp.c
> @@ -4438,12 +4438,16 @@ static int hidpp_probe(struct hid_device *hdev, const struct hid_device_id *id)
>  	if (hidpp->quirks & HIDPP_QUIRK_UNIFYING)
>  		hidpp_unifying_init(hidpp);
> 
> -	connected = hidpp_root_get_protocol_version(hidpp) == 0;
> +	ret = hidpp_root_get_protocol_version(hidpp);
> +	connected = ret == 0;
>  	atomic_set(&hidpp->connected, connected);
>  	if (!(hidpp->quirks & HIDPP_QUIRK_UNIFYING)) {
>  		if (!connected) {
> +			if (ret == -ETIMEDOUT)
> +				hid_err(hdev, "Device connection timed out");
> +			else
> +				hid_err(hdev, "Device not connected");
>  			ret = -ENODEV;
> -			hid_err(hdev, "Device not connected");

Printing as specific error as possible makes sense to me.

I am however wondering whether the better aproach (covering all the cases, 
not just ETIMEDOUT specifically) wouldn't be to convert all the dbg_hid() 
in hidpp_send_message_sync() to be proper error messages instead? That 
would cover also your case, as ETIMEDOUT is handled there as well with 
debugging message.

Thanks,

-- 
Jiri Kosina
SUSE Labs




[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux