Re: [PATCH v2] usb: core: downgrade log severity to info when descriptor unavailable

From: Scot Doyle
Date: Wed Sep 24 2014 - 13:57:31 EST

On Tue, 23 Sep 2014, Greg Kroah-Hartman wrote:
On Tue, Sep 23, 2014 at 07:12:40PM +0000, Scot Doyle wrote:
According to commit 0cce2eda19923e5e5ccc8b042dec5af87b3ffad0
USB: fix LANGID=0 regression

usb devices are not required to report string descriptors. Since they are
optional, log an info message instead of an error message.

Signed-off-by: Scot Doyle <lkml14@xxxxxxxxxxxxx>
drivers/usb/core/message.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/drivers/usb/core/message.c b/drivers/usb/core/message.c
index 0c8a7fc..da2f1f2 100644
--- a/drivers/usb/core/message.c
+++ b/drivers/usb/core/message.c
@@ -780,8 +780,12 @@ static int usb_get_langid(struct usb_device *dev, unsigned char *tbuf)
* deal with strings at all. Set string_langid to -1 in order to
* prevent any string to be retrieved from the device */
if (err < 0) {
- dev_err(&dev->dev, "string descriptor 0 read error: %d\n",
- err);
+ if (err == -EPIPE)
+ dev_info(&dev->dev,
+ "string descriptor 0 read error: -EPIPE\n");
+ else
+ dev_err(&dev->dev,
+ "string descriptor 0 read error: %d\n", err);

What real difference does this patch make? What would a user do with

Not much difference, except e.g. a log line that isn't red.

And USB devices _are_ required to provide a string descriptor if they
provide a string id, so your changelog body doesn't make much sense. I
suggest rewriting it to say they aren't required to provide a string
descriptor for string "0".

But even then, I don't understand the goal of this patch.

I'm happy to drop this patch request, since in my case the return value is -ENODATA, which is covered by the other patch: "[RFC PATCH] usb: core: log more general message on malformed LANGID descriptor"

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at