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

Bug#990893: unblock: libserialport/0.1.1-3



Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: unblock

Please unblock package libserialport

[ Reason ]

I've been made aware in bug #990863 that linux 5.10.38-1, uploaded late
May, has removed support for termiox. This has broken the libserialport
package, which uses termiox when it's discovered.

(I'm aware this is extremely late in the release cycle, but the bug was
only raised yesterday.)

[ Impact ]

With the attached debdiff, taken from upstream, detection of termiox is
disabled and we fall back to the supported termios2.

[ Tests ]

Tim Small, the original reporter of the bug, has confirmed this fixes
the issue on bullseye.

[ Risks ]

Although the regression has been caused by a kernel update during the
freeze rather than any change to libserialport it seems that this is the
more correct fix and limits any risk only to users of the libserialport
package. Without the patch serial port usage via libserialport will
fail, so the package is entirely non-functional.

[ Checklist ]

  [x] all debian/ changes are documented in the d/changelog
  [x] I reviewed all debian/ changes and I approve them
  [x] attach debian/ diff against the package in testing

unblock libserialport/0.1.1-3

diff -Nru libserialport-0.1.1/debian/changelog libserialport-0.1.1/debian/changelog
--- libserialport-0.1.1/debian/changelog	2018-05-18 09:44:24.000000000 +0100
+++ libserialport-0.1.1/debian/changelog	2021-07-10 17:21:59.000000000 +0100
@@ -1,3 +1,10 @@
+libserialport (0.1.1-4) unstable; urgency=high
+
+  * Avoid the use of termiox now the kernel has dropped support for it.
+    Thanks to Tim Small. (Closes: #990863)
+
+ -- Jonathan McDowell <noodles@earth.li>  Sat, 10 Jul 2021 17:21:59 +0100
+
 libserialport (0.1.1-3) unstable; urgency=medium
 
   * VCS is at Salsa.
diff -Nru libserialport-0.1.1/debian/patches/avoid-termiox.diff libserialport-0.1.1/debian/patches/avoid-termiox.diff
--- libserialport-0.1.1/debian/patches/avoid-termiox.diff	1970-01-01 01:00:00.000000000 +0100
+++ libserialport-0.1.1/debian/patches/avoid-termiox.diff	2021-07-10 17:20:33.000000000 +0100
@@ -0,0 +1,34 @@
+Subject: Don't even check for termiox
+Origin: https://sigrok.org/gitweb/?p=libserialport.git;a=commit;h=6f9b03e597ea7200eb616a4e410add3dd1690cb1
+Bug: https://sigrok.org/bugzilla/show_bug.cgi?id=1687
+Bug-Debian: https://bugs.debian.org/990863
+Author: Karl Palsson <karlp@etactica.com>
+Last-Update: 2021-07-10
+
+Don't check for termiox, as it has been remove from Linux in e0efb3168d34
+
+Some more information available in https://www.spinics.net/lists/linux-serial/msg41926.html
+
+Attempting to use the termiox ioctls on more modern kernels results in
+"Inappropriate IOCTL" errors.
+
+While the "right" solution might be to remove the termiox code from the
+linux path, simply not checking for termiox builds a libserialport that
+functions on modern linux kernels.
+
+diff --git a/configure.ac b/configure.ac
+index b1af16f..a26b851 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -112,7 +112,7 @@ AC_SYS_LARGEFILE
+ AC_TYPE_SIZE_T
+ 
+ # Check for specific termios structures.
+-AC_CHECK_TYPES([struct termios2, struct termiox],,,
++AC_CHECK_TYPES([struct termios2],,,
+ 	[[#include <linux/termios.h>]])
+ AC_CHECK_MEMBERS([struct termios.c_ispeed, struct termios.c_ospeed,
+ 		struct termios2.c_ispeed, struct termios2.c_ospeed],,,
+-- 
+2.30.2
+
diff -Nru libserialport-0.1.1/debian/patches/series libserialport-0.1.1/debian/patches/series
--- libserialport-0.1.1/debian/patches/series	2018-05-18 09:44:24.000000000 +0100
+++ libserialport-0.1.1/debian/patches/series	2021-07-10 17:20:45.000000000 +0100
@@ -1,2 +1,3 @@
 non-linux-build-fix.diff
 fix_for_alpha_where_BOTHER_is_not_defined.diff
+avoid-termiox.diff


Reply to: