← Back to team overview

kernel-packages team mailing list archive

[Bug 1501345] Re: linux-image-3.13.0-65-generic 3.13.0-65 breaks Python based Serial communication


I realize my issue is not related to Python but I find the same problem
when I use the serial port from Perl using the Device::SerialPort class.
My scripts have run for almost 10 years without a problem till the last
system upgrade to kernel ending in -65. I find that reverting to kernel
ending in -63 the problem does not exist, but it clearly exists under
kernel -65...

I concur with the poster above who considers this a bug in the serial
port driver or possibly in the kernel's poll() or select() function. For
the time being our organization has a policy to not upgrade to any new
kernels till this issue is resolved.

We consider this a very very bad bug in the OS... We have been loyal
Ubuntu users since 2008 (Ubuntu 8.04) and have been very happy with the
distro... I hope that the kernel developers consider this a HIGH
PRIORITY issue and repair it by the next kernel release.

Thank you,
Michael Uman

You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux-lts-trusty in Ubuntu.

  linux-image-3.13.0-65-generic 3.13.0-65 breaks Python based Serial

Status in linux-lts-trusty package in Ubuntu:

Bug description:
  Today after updating to the linux-image-3.13.0-65-generic 3.13.0-65
  Kernel on Lubuntu 14.04.3 LTS two different programs that rely on
  PySerial quit working. miniterm.py and my ROS (Robot Operating System)
  based Python node quit working.

  When rebooted and selected 3.13.0-63-generic via GRUB everything
  worked again.

  Here are the steps to create the issue with miniterm.py, note that you
  need something connected via a USB to Serial adapter for this to work.
  I am working with a Parallax Activity Board, but an Arduino should
  also exhibit the same behavior.

  sudo apt install linux-image-3.13.0-65-generic
  sudo apt install linux-image-extra-3.13.0-65-generic

   $ miniterm.py /dev/ttyUSB0 115200
  --- Miniterm on /dev/ttyUSB0: 115200,8,N,1 ---
  --- Quit: Ctrl+]  |  Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H ---

  --- exit ---
  Exception in thread Thread-1:
  Traceback (most recent call last):
    File "/usr/lib/python2.7/threading.py", line 810, in __bootstrap_inner
    File "/usr/lib/python2.7/threading.py", line 763, in run
      self.__target(*self.__args, **self.__kwargs)
    File "/usr/bin/miniterm.py", line 220, in reader
      data = character(self.serial.read(1))
    File "/usr/lib/python2.7/dist-packages/serial/serialposix.py", line 460, in read
      raise SerialException('device reports readiness to read but returned no data (device disconnected?)')
  SerialException: device reports readiness to read but returned no data (device disconnected?)

  Reverting to the 3.13.0-63 kernel allows miniterm.py and other Python
  Serial based programs to work normally.

To manage notifications about this bug go to: