Re: [RESEND PATCH -next] USB: serial: pl2303: implement reset_resume member

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

 



On Tue, Apr 19, 2022 at 02:54:08PM +0800, Hongyu Xie wrote:
> From: Hongyu Xie <xiehongyu1@xxxxxxxxxx>
> 
> pl2303.c doesn't have reset_resume for hibernation.
> So needs_binding will be set to 1 duiring hibernation.
> usb_forced_unbind_intf will be called, and the port minor
> will be released (x in ttyUSBx).

Please use the full 72 columns that you are allowed in a changelog text.


> It works fine if you have only one USB-to-serial device.
> Assume you have 2 USB-to-serial device, nameing A and B.
> A gets a smaller minor(ttyUSB0), B gets a bigger one.
> And start to hibernate. When your PC is in hibernation,
> unplug device A. Then wake up your PC by pressing the
> power button. After waking up the whole system, device
> B gets ttyUSB0. This will casuse a problem if you were
> using those to ports(like opened two minicom process)
> before hibernation.
> So member reset_resume is needed in usb_serial_driver
> pl2303_device.

If you want persistent device naming, use the symlinks that udev creates
for your for all your serial devices.  Never rely on the number of a USB
to serial device.

> Codes in pl2303_reset_resume are borrowed from pl2303_open.
> 
> As a matter of fact, all driver under drivers/usb/serial
> has the same problem except ch341.c.
> 
> Cc: stable@xxxxxxxxxxxxxxx

How does this meet the stable kernel rule requirements?  It would be a
new feature if it were accepted, right?


thanks,

greg k-h



[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux