weston-1.4.0: rpi-backend is broken
Yann E. MORIN
yann.morin.1998 at free.fr
Mon Jan 27 15:49:06 PST 2014
Pekka, All,
On 2014-01-26 21:15 +0100, Yann E. MORIN spake thusly:
> On 2014-01-26 21:51 +0200, Pekka Paalanen spake thusly:
> > On Sun, 26 Jan 2014 19:08:47 +0100
> > "Yann E. MORIN" <yann.morin.1998 at free.fr> wrote:
> > > I'm trying to run wayland+weston 1.4.0 on the raspberry pi with
> > > the rpi-backend.
> > >
> > > Running weston freezes while still in the console, just after
> > > displaying "Initializing Raspberry Pi backend".
> > >
> > > Ctrl-C, Ctrl-Alt-Backspace don't do anything. The system is still
> > > responsive via ssh.
> > >
> > > I bisected it (bisect range: 1.3.0..1.4.0) to the first bad
> > > commit: 17bccae... input: Handle unplugging the output for a
> > > touchscreen
> > >
> > > I tried applying 8fe412d:
> > > Revert part of 17bccae[...]
> > >
> > > (17bccae is the failing cset), but this does not fix the breakage.
> > >
> > > The RPi userland and firmware I use are the latest from their
> > > repositories, namely:
> > > userland: cset 5cecd5a
> > > firmware: cset 940dc3b
>
> > could you get the log.txt from 'weston-launch &> log.txt' while
> > using weston master revision?
> > The fbcon stops updating the moment the rpi gfx backend
> > initializes (also in normal cases), but weston may still print
> > useful stuff after that.
>
> I'm not using weston-launch, but directly calling 'weston' from the
> command line, as root.
>
> Here's the complete log of 'weston >weston.log 2>&1' :
>
> ---8<---
> Date: 2014-01-26 UTC
> [20:03:09.606] weston 1.4.0
> http://wayland.freedesktop.org/
> Bug reports to:
> https://bugs.freedesktop.org/enter_bug.cgi?product=Wayland&component=weston&version=1.4.0
> Build:
> [20:03:09.607] OS: Linux, 3.12.7, #1 PREEMPT Sat Jan 25 14:09:48 CET
> 2014, armv6l
> [20:03:09.608] Starting with no config file.
> [20:03:09.611] Loading module '/usr/lib/weston/rpi-backend.so'
> [20:03:09.648] initializing Raspberry Pi backend
> [20:03:09.652] Dispmanx planes are double buffered.
> [20:03:09.656] launching '/usr/libexec/weston-keyboard'
> [20:03:09.909] input device HID 046a:0023, /dev/input/event0 is a
> keyboard
> Failed to process Wayland connection: Connection reset by peer
> failed to create display: Connection reset by peer
> Segmentation fault
> ---8<---
And here is the backtrace (as asked by Daniel on IRC):
---8<---
(gdb) target remote 192.168.127.167:1234
Remote debugging using 192.168.127.167:1234
Reading symbols from /lib/ld-linux-armhf.so.3...(no debugging symbols found)...done.
Loaded symbols for /lib/ld-linux-armhf.so.3
0xb6fdad10 in ?? () from /lib/ld-linux-armhf.so.3
(gdb) continue
Continuing.
Cannot access memory at address 0x0
Program received signal SIGSEGV, Segmentation fault.
0xb6fce9b4 in wl_list_insert (list=0xb6ef6760, elm=0x40290) at wayland-util.c:46
46 list->next = elm;
(gdb) bt
#0 0xb6fce9b4 in wl_list_insert (list=0xb6ef6760, elm=0x40290) at wayland-util.c:46
#1 0xb6ceefc0 in wl_signal_add (signal=0x39ec4, listener=0x40290)
at /home/ymorin/dev/buildroot/br.config/build/rpi/wayland/output/host/usr/arm-buildroot-linux-gnueabihf/sysroot/usr/include/wayland-server.h:223
#2 0xb6cf09e0 in evdev_device_set_output (device=0x40278, output=0x39d20) at evdev.c:620
#3 0xb6cee3e8 in device_added (udev_device=0x3b3b0, input=0x39e20) at udev-seat.c:133
#4 0xb6cee4fc in udev_input_add_devices (input=0x39e20, udev=0x3ab90) at udev-seat.c:165
#5 0xb6cee9a4 in udev_input_enable (input=0x39e20, udev=0x3ab90) at udev-seat.c:273
#6 0xb6ceebbc in udev_input_init (input=0x39e20, c=0x39c70, udev=0x3ab90, seat_id=0xb6cf5c1c "seat0")
at udev-seat.c:321
#7 0xb6cea34c in rpi_compositor_create (display=0x38060, argc=0xbefffb5c, argv=0xbefffd94, config=0x0,
param=0xbefffb30) at compositor-rpi.c:530
#8 0xb6cea608 in backend_init (display=0x38060, argc=0xbefffb5c, argv=0xbefffd94, config=0x0) at compositor-rpi.c:612
#9 0x00018944 in main (argc=1, argv=0xbefffd94) at compositor.c:4217
(gdb)
---8<---
Hope this helps.
wayland and weston are both 1.4.0.
Note that since the framebuffer freezes and no longer updates after the
rpi-backend is loaded, I had to run through gdbserver, and attach from a
cross-gdb running on my dev machine.
Regards,
Yann E. MORIN.
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
More information about the wayland-devel
mailing list