Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH] python: fix termios build for xtensa
@ 2014-07-18  3:32 Baruch Siach
  2014-07-18 11:42 ` Max Filippov
  2014-07-18 18:04 ` Thomas Petazzoni
  0 siblings, 2 replies; 5+ messages in thread
From: Baruch Siach @ 2014-07-18  3:32 UTC (permalink / raw)
  To: buildroot

The xtensa ioctls.h header references struct serial_multiport_struct that is
not defined in this header or included headers. ioctls.h also references
tty_struct that is not exported to userspace at all. Add a patch fixing these
issues.

This is only a workaround as the real problem should be fixed in the kernel
(by removing all struct references like all other archs). But since we support
older kernel versions we'll have to carry this patch for some time.

Fixes:
http://autobuild.buildroot.net/results/12b/12b5612828d7f1fc7d1f69fc01341d5a6e628db5/

Cc: Max Filippov <jcmvbkbc@gmail.com>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
---
 .../python-015-serial-ioctl-workaround.patch       | 23 ++++++++++++++++++++++
 1 file changed, 23 insertions(+)
 create mode 100644 package/python/python-015-serial-ioctl-workaround.patch

diff --git a/package/python/python-015-serial-ioctl-workaround.patch b/package/python/python-015-serial-ioctl-workaround.patch
new file mode 100644
index 000000000000..9ff775fd6d8d
--- /dev/null
+++ b/package/python/python-015-serial-ioctl-workaround.patch
@@ -0,0 +1,23 @@
+Serial ioctl() workaround
+
+The ioctls.h of some architectures (notably xtensa) references structs from
+linux/serial.h. Make sure to include this header as well.
+
+Also, undef TIOCTTYGSTRUCT that require reference to internal kernel tty_struct,
+but isn't actually referenced in modern kernels.
+
+Signed-off-by: Baruch Siach <baruch@tkos.co.il>
+---
+diff -Nuar Python-2.7.8-orig/Modules/termios.c Python-2.7.8/Modules/termios.c
+--- Python-2.7.8-orig/Modules/termios.c	2014-06-30 05:05:44.000000000 +0300
++++ Python-2.7.8/Modules/termios.c	2014-07-18 06:16:43.393010357 +0300
+@@ -16,7 +16,9 @@
+  * so this needs to be included first on that platform. */
+ #include <termio.h>
+ #endif
++#include <linux/serial.h>
+ #include <sys/ioctl.h>
++#undef TIOCTTYGSTRUCT
+ 
+ /* HP-UX requires that this be included to pick up MDCD, MCTS, MDSR,
+  * MDTR, MRI, and MRTS (appearantly used internally by some things
-- 
2.0.1

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [Buildroot] [PATCH] python: fix termios build for xtensa
  2014-07-18  3:32 [Buildroot] [PATCH] python: fix termios build for xtensa Baruch Siach
@ 2014-07-18 11:42 ` Max Filippov
  2014-07-18 13:30   ` Baruch Siach
  2014-07-18 18:04 ` Thomas Petazzoni
  1 sibling, 1 reply; 5+ messages in thread
From: Max Filippov @ 2014-07-18 11:42 UTC (permalink / raw)
  To: buildroot

On Fri, Jul 18, 2014 at 7:32 AM, Baruch Siach <baruch@tkos.co.il> wrote:
> The xtensa ioctls.h header references struct serial_multiport_struct that is
> not defined in this header or included headers. ioctls.h also references
> tty_struct that is not exported to userspace at all. Add a patch fixing these
> issues.
>
> This is only a workaround as the real problem should be fixed in the kernel
> (by removing all struct references like all other archs). But since we support
> older kernel versions we'll have to carry this patch for some time.
>
> Fixes:
> http://autobuild.buildroot.net/results/12b/12b5612828d7f1fc7d1f69fc01341d5a6e628db5/
>
> Cc: Max Filippov <jcmvbkbc@gmail.com>
> Signed-off-by: Baruch Siach <baruch@tkos.co.il>
> ---
>  .../python-015-serial-ioctl-workaround.patch       | 23 ++++++++++++++++++++++
>  1 file changed, 23 insertions(+)
>  create mode 100644 package/python/python-015-serial-ioctl-workaround.patch

Thank you, Baruch.
I'll send corresponding linux patches. I definitely saw this issue
some time ago,
but I couldn't find any trace of that ):

-- 
Thanks.
-- Max

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Buildroot] [PATCH] python: fix termios build for xtensa
  2014-07-18 11:42 ` Max Filippov
@ 2014-07-18 13:30   ` Baruch Siach
  2014-07-19  0:06     ` Max Filippov
  0 siblings, 1 reply; 5+ messages in thread
From: Baruch Siach @ 2014-07-18 13:30 UTC (permalink / raw)
  To: buildroot

Hi Max,

On Fri, Jul 18, 2014 at 03:42:43PM +0400, Max Filippov wrote:
> On Fri, Jul 18, 2014 at 7:32 AM, Baruch Siach <baruch@tkos.co.il> wrote:
> > The xtensa ioctls.h header references struct serial_multiport_struct that is
> > not defined in this header or included headers. ioctls.h also references
> > tty_struct that is not exported to userspace at all. Add a patch fixing these
> > issues.
> >
> > This is only a workaround as the real problem should be fixed in the kernel
> > (by removing all struct references like all other archs). But since we support
> > older kernel versions we'll have to carry this patch for some time.
> >
> > Fixes:
> > http://autobuild.buildroot.net/results/12b/12b5612828d7f1fc7d1f69fc01341d5a6e628db5/
> >
> > Cc: Max Filippov <jcmvbkbc@gmail.com>
> > Signed-off-by: Baruch Siach <baruch@tkos.co.il>
> > ---
> >  .../python-015-serial-ioctl-workaround.patch       | 23 ++++++++++++++++++++++
> >  1 file changed, 23 insertions(+)
> >  create mode 100644 package/python/python-015-serial-ioctl-workaround.patch
> 
> Thank you, Baruch.
> I'll send corresponding linux patches. I definitely saw this issue
> some time ago,
> but I couldn't find any trace of that ):

You mean commit b973b4c91be8f (xtensa: fix TIOCGSERIAL and TIOCSSERIAL 
definitions)? It solved part of the problem.

It seems most other architectures migrated to asm-generic/ioctls.h.

baruch

-- 
     http://baruch.siach.name/blog/                  ~. .~   Tk Open Systems
=}------------------------------------------------ooO--U--Ooo------------{=
   - baruch at tkos.co.il - tel: +972.2.679.5364, http://www.tkos.co.il -

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Buildroot] [PATCH] python: fix termios build for xtensa
  2014-07-18  3:32 [Buildroot] [PATCH] python: fix termios build for xtensa Baruch Siach
  2014-07-18 11:42 ` Max Filippov
@ 2014-07-18 18:04 ` Thomas Petazzoni
  1 sibling, 0 replies; 5+ messages in thread
From: Thomas Petazzoni @ 2014-07-18 18:04 UTC (permalink / raw)
  To: buildroot

Dear Baruch Siach,

On Fri, 18 Jul 2014 06:32:40 +0300, Baruch Siach wrote:
> The xtensa ioctls.h header references struct serial_multiport_struct that is
> not defined in this header or included headers. ioctls.h also references
> tty_struct that is not exported to userspace at all. Add a patch fixing these
> issues.
> 
> This is only a workaround as the real problem should be fixed in the kernel
> (by removing all struct references like all other archs). But since we support
> older kernel versions we'll have to carry this patch for some time.
> 
> Fixes:
> http://autobuild.buildroot.net/results/12b/12b5612828d7f1fc7d1f69fc01341d5a6e628db5/
> 
> Cc: Max Filippov <jcmvbkbc@gmail.com>
> Signed-off-by: Baruch Siach <baruch@tkos.co.il>
> ---
>  .../python-015-serial-ioctl-workaround.patch       | 23 ++++++++++++++++++++++
>  1 file changed, 23 insertions(+)
>  create mode 100644 package/python/python-015-serial-ioctl-workaround.patch

Applied, thanks.

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Buildroot] [PATCH] python: fix termios build for xtensa
  2014-07-18 13:30   ` Baruch Siach
@ 2014-07-19  0:06     ` Max Filippov
  0 siblings, 0 replies; 5+ messages in thread
From: Max Filippov @ 2014-07-19  0:06 UTC (permalink / raw)
  To: buildroot

On Fri, Jul 18, 2014 at 5:30 PM, Baruch Siach <baruch@tkos.co.il> wrote:
> Hi Max,
>
> On Fri, Jul 18, 2014 at 03:42:43PM +0400, Max Filippov wrote:
>> On Fri, Jul 18, 2014 at 7:32 AM, Baruch Siach <baruch@tkos.co.il> wrote:
>> > The xtensa ioctls.h header references struct serial_multiport_struct that is
>> > not defined in this header or included headers. ioctls.h also references
>> > tty_struct that is not exported to userspace at all. Add a patch fixing these
>> > issues.
>> >
>> > This is only a workaround as the real problem should be fixed in the kernel
>> > (by removing all struct references like all other archs). But since we support
>> > older kernel versions we'll have to carry this patch for some time.
>> >
>> > Fixes:
>> > http://autobuild.buildroot.net/results/12b/12b5612828d7f1fc7d1f69fc01341d5a6e628db5/
>> >
>> > Cc: Max Filippov <jcmvbkbc@gmail.com>
>> > Signed-off-by: Baruch Siach <baruch@tkos.co.il>
>> > ---
>> >  .../python-015-serial-ioctl-workaround.patch       | 23 ++++++++++++++++++++++
>> >  1 file changed, 23 insertions(+)
>> >  create mode 100644 package/python/python-015-serial-ioctl-workaround.patch
>>
>> Thank you, Baruch.
>> I'll send corresponding linux patches. I definitely saw this issue
>> some time ago,
>> but I couldn't find any trace of that ):
>
> You mean commit b973b4c91be8f (xtensa: fix TIOCGSERIAL and TIOCSSERIAL
> definitions)? It solved part of the problem.

Oh, right, other similar symbols.

> It seems most other architectures migrated to asm-generic/ioctls.h.

This would change existing IOCTL codes, so I don't think we can do it.

-- 
Thanks.
-- Max

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2014-07-19  0:06 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-07-18  3:32 [Buildroot] [PATCH] python: fix termios build for xtensa Baruch Siach
2014-07-18 11:42 ` Max Filippov
2014-07-18 13:30   ` Baruch Siach
2014-07-19  0:06     ` Max Filippov
2014-07-18 18:04 ` Thomas Petazzoni

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox