[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <87shxyds7o.fsf@intel.com>
Date: Wed, 04 May 2016 13:37:31 +0300
From: Felipe Balbi <balbi@...nel.org>
To: Jim Lin <jilin@...dia.com>
Cc: linux-usb@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] usb: gadget: f_fs: Fix kernel panic for SuperSpeed
Hi,
Jim Lin <jilin@...dia.com> writes:
<snip>
>>> In f_fs.c
>>> "
>>> static int __ffs_data_do_os_desc(enum ffs_os_desc_type type,
>>> struct usb_os_desc_header *h, void *data,
>>> unsigned len, void *priv)
>>> {
>>> struct ffs_data *ffs = priv;
>>> u8 length;
>>>
>>> ENTER();
>>>
>>> switch (type) {
>>> case FFS_OS_DESC_EXT_COMPAT: {
>>> struct usb_ext_compat_desc *d = data;
>>> int i;
>>>
>>> if (len < sizeof(*d) ||
>>> d->bFirstInterfaceNumber >= ffs->interfaces_count ||
>>> d->Reserved1)
>>> return -EINVAL;
>>> "
>> that's fine, but this is only failing because something else is
>> returning the wrong set of descriptors (SS vs HS). That's the bug we
>> want to fix, not work around it.
>>
> Thanks.
you're welcome, but to fix that bug we need more information. Why is
composite.c using the wrong set of descriptors ? What is your setup ?
Are you using an in-kernel gadget ? which one ? Using configfs or legacy
gadgets ? gadgetfs ? f_fs ? How to trigger this ? Can you provide
instructions and (in case of gadgetfs/ffs) code to create a gadget that
hits this problem ?
--
balbi
Download attachment "signature.asc" of type "application/pgp-signature" (819 bytes)
Powered by blists - more mailing lists