Patchwork Apply OPTION_BLACKLIST_SENDSETUP also for ZTE MF626

login
register
mail settings
Submitter Herton Ronaldo Krzesinski
Date March 9, 2011, 9:19 a.m.
Message ID <1299662388-2819-1-git-send-email-herton.krzesinski@canonical.com>
Download mbox | patch
Permalink /patch/86094/
State New
Headers show

Comments

Herton Ronaldo Krzesinski - March 9, 2011, 9:19 a.m.
On https://bugs.launchpad.net/ubuntu/+source/linux/+bug/636091, one of
the cases reported is a big timeout on option_send_setup, which causes
some side effects as tty_lock is held. Looks like some of ZTE MF626
devices also don't like the RTS/DTR setting in option_send_setup, like
with 4G XS Stick W14. The reporter confirms which this it solves the
long freezes in his system.

Signed-off-by: Herton Ronaldo Krzesinski <herton.krzesinski@canonical.com>
---
 drivers/usb/serial/option.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)
Tim Gardner - March 9, 2011, 9:45 a.m.
On 03/09/2011 09:19 AM, Herton Ronaldo Krzesinski wrote:
> On https://bugs.launchpad.net/ubuntu/+source/linux/+bug/636091, one of
> the cases reported is a big timeout on option_send_setup, which causes
> some side effects as tty_lock is held. Looks like some of ZTE MF626
> devices also don't like the RTS/DTR setting in option_send_setup, like
> with 4G XS Stick W14. The reporter confirms which this it solves the
> long freezes in his system.
>
> Signed-off-by: Herton Ronaldo Krzesinski<herton.krzesinski@canonical.com>
> ---
>   drivers/usb/serial/option.c |    3 ++-
>   1 files changed, 2 insertions(+), 1 deletions(-)
>
> diff --git a/drivers/usb/serial/option.c b/drivers/usb/serial/option.c
> index 5f46838..75c7f45 100644
> --- a/drivers/usb/serial/option.c
> +++ b/drivers/usb/serial/option.c
> @@ -652,7 +652,8 @@ static const struct usb_device_id option_ids[] = {
>   	{ USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0028, 0xff, 0xff, 0xff) },
>   	{ USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0029, 0xff, 0xff, 0xff) },
>   	{ USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0030, 0xff, 0xff, 0xff) },
> -	{ USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, ZTE_PRODUCT_MF626, 0xff, 0xff, 0xff) },
> +	{ USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, ZTE_PRODUCT_MF626, 0xff,
> +	  0xff, 0xff), .driver_info = (kernel_ulong_t)&four_g_w14_blacklist },
>   	{ USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0032, 0xff, 0xff, 0xff) },
>   	{ USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0033, 0xff, 0xff, 0xff) },
>   	{ USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0034, 0xff, 0xff, 0xff) },

Don't forget to nominate this patch for stable where appropriate. You 
might also have to provide backported patches for some kernel versions.

rtg
Herton Ronaldo Krzesinski - March 9, 2011, 2:08 p.m.
On Wed, Mar 09, 2011 at 09:45:00AM +0000, Tim Gardner wrote:
> On 03/09/2011 09:19 AM, Herton Ronaldo Krzesinski wrote:
> >On https://bugs.launchpad.net/ubuntu/+source/linux/+bug/636091, one of
> >the cases reported is a big timeout on option_send_setup, which causes
> >some side effects as tty_lock is held. Looks like some of ZTE MF626
> >devices also don't like the RTS/DTR setting in option_send_setup, like
> >with 4G XS Stick W14. The reporter confirms which this it solves the
> >long freezes in his system.
> >
> >Signed-off-by: Herton Ronaldo Krzesinski<herton.krzesinski@canonical.com>
> >---
> >  drivers/usb/serial/option.c |    3 ++-
> >  1 files changed, 2 insertions(+), 1 deletions(-)
> >
> >diff --git a/drivers/usb/serial/option.c b/drivers/usb/serial/option.c
> >index 5f46838..75c7f45 100644
> >--- a/drivers/usb/serial/option.c
> >+++ b/drivers/usb/serial/option.c
> >@@ -652,7 +652,8 @@ static const struct usb_device_id option_ids[] = {
> >  	{ USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0028, 0xff, 0xff, 0xff) },
> >  	{ USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0029, 0xff, 0xff, 0xff) },
> >  	{ USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0030, 0xff, 0xff, 0xff) },
> >-	{ USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, ZTE_PRODUCT_MF626, 0xff, 0xff, 0xff) },
> >+	{ USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, ZTE_PRODUCT_MF626, 0xff,
> >+	  0xff, 0xff), .driver_info = (kernel_ulong_t)&four_g_w14_blacklist },
> >  	{ USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0032, 0xff, 0xff, 0xff) },
> >  	{ USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0033, 0xff, 0xff, 0xff) },
> >  	{ USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0034, 0xff, 0xff, 0xff) },
> 
> Don't forget to nominate this patch for stable where appropriate.
> You might also have to provide backported patches for some kernel
> versions.

Yep, will do that once it goes to Linus tree.

> 
> rtg
> -- 
> Tim Gardner tim.gardner@canonical.com
>

--
[]'s
Herton
Andy Whitcroft - March 11, 2011, 3:11 p.m.
Applied to Natty.

-apw
gregkh@suse.de - March 11, 2011, 3:50 p.m.
On Fri, Mar 11, 2011 at 03:11:08PM +0000, Andy Whitcroft wrote:
> Applied to Natty.

How nice.  But we really don't care about seeing distro commit messages
on public mailing lists.

Please fix your scripts to never do this again.

thanks,

greg k-h

Patch

diff --git a/drivers/usb/serial/option.c b/drivers/usb/serial/option.c
index 5f46838..75c7f45 100644
--- a/drivers/usb/serial/option.c
+++ b/drivers/usb/serial/option.c
@@ -652,7 +652,8 @@  static const struct usb_device_id option_ids[] = {
 	{ USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0028, 0xff, 0xff, 0xff) },
 	{ USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0029, 0xff, 0xff, 0xff) },
 	{ USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0030, 0xff, 0xff, 0xff) },
-	{ USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, ZTE_PRODUCT_MF626, 0xff, 0xff, 0xff) },
+	{ USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, ZTE_PRODUCT_MF626, 0xff,
+	  0xff, 0xff), .driver_info = (kernel_ulong_t)&four_g_w14_blacklist },
 	{ USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0032, 0xff, 0xff, 0xff) },
 	{ USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0033, 0xff, 0xff, 0xff) },
 	{ USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0034, 0xff, 0xff, 0xff) },