Re: gtk3-demo dies with EAGAIN when running under Weston



On Thu, Mar 19, 2015 at 11:10:31PM -0400, Lyude wrote:
Hi! So, I'm stuck on an issue here that's unfortunately making it
impossible for me to test any of the changes I make to GTK+ under
Wayland. For whatever reason, all of a sudden gtk3-demo is crashing
under Weston whenever a pointer moves over any of it's wl_surfaces. The
error message that GDK returns is as follows:

(gtk3-demo:29056): Gdk-ERROR **: Error sending request: Resource temporarily unavailable

I've brought this up in some of the IRC channels, and they managed to
help me trace it down to this strace:

…
sendmsg(3, {msg_name(0)=NULL, 
msg_iov(2)=[{"\v\0\0\0\10\0\f\0\1\0\0\0\v\0\0\0\2\0\30\0\0\0\0\0\0\0\0\0\30\0\0\0"..., 1592}, 
{"\1\0\0\0\v\0\0\0\2\0\30\0\0\0\0\0\0\0\0\0\30\0\0\0\30\0\0\0\v\0\0\0"..., 2500}], msg_controllen=0, 
msg_flags=0}, MSG_DONTWAIT|MSG_NOSIGNAL) = 4092
sendmsg(3, {msg_name(0)=NULL, 
msg_iov(2)=[{"\20\0\0\0\0\0\30\0\322\3\0\0\v\0\0\0\v\0\0\0\v\0\0\0\v\0\0\0\1\0\24\0"..., 1596}, 
{"\v\0\0\0\v\0\0\0\v\0\0\0\v\0\0\0\1\0\24\0\22\0\0\0\0\0\0\0\0\0\0\0"..., 2496}], msg_controllen=0, 
msg_flags=0}, MSG_DONTWAIT|MSG_NOSIGNAL) = 4092
sendmsg(3, {msg_name(0)=NULL, 
msg_iov(2)=[{"\v\0\0\0\10\0\f\0\1\0\0\0\v\0\0\0\2\0\30\0\0\0\0\0\0\0\0\0\30\0\0\0"..., 1600}, 
{"\2\0\30\0\0\0\0\0\0\0\0\0\30\0\0\0\30\0\0\0\v\0\0\0\6\0\10\0\20\0\0\0"..., 2492}], msg_controllen=0, 
msg_flags=0}, MSG_DONTWAIT|MSG_NOSIGNAL) = 4092
sendmsg(3, {msg_name(0)=NULL, 
msg_iov(2)=[{"\20\0\0\0\0\0\30\0\322\3\0\0\v\0\0\0\v\0\0\0\v\0\0\0\v\0\0\0\1\0\24\0"..., 1604}, 
{"\v\0\0\0\v\0\0\0\1\0\24\0\22\0\0\0\0\0\0\0\0\0\0\0\v\0\0\0\10\0\f\0"..., 2488}], msg_controllen=0, 
msg_flags=0}, MSG_DONTWAIT|MSG_NOSIGNAL) = 4092
sendmsg(3, {msg_name(0)=NULL, 
msg_iov(2)=[{"\v\0\0\0\10\0\f\0\1\0\0\0\v\0\0\0\2\0\30\0\0\0\0\0\0\0\0\0\30\0\0\0"..., 1608}, 
{"\0\0\0\0\30\0\0\0\30\0\0\0\v\0\0\0\6\0\10\0\20\0\0\0\0\0\30\0\322\3\0\0"..., 2484}], msg_controllen=0, 
msg_flags=0}, MSG_DONTWAIT|MSG_NOSIGNAL) = 4092
sendmsg(3, {msg_name(0)=NULL, 
msg_iov(2)=[{"\20\0\0\0\0\0\30\0\322\3\0\0\v\0\0\0\v\0\0\0\v\0\0\0\v\0\0\0\1\0\24\0"..., 1612}, 
{"\1\0\24\0\22\0\0\0\0\0\0\0\0\0\0\0\v\0\0\0\10\0\f\0\1\0\0\0\v\0\0\0"..., 2480}], msg_controllen=0, 
msg_flags=0}, MSG_DONTWAIT|MSG_NOSIGNAL) = 4092
sendmsg(3, {msg_name(0)=NULL, 
msg_iov(1)=[{"\v\0\0\0\10\0\f\0\1\0\0\0\v\0\0\0\2\0\30\0\0\0\0\0\0\0\0\0\30\0\0\0"..., 1364}], 
msg_controllen=0, msg_flags=0}, MSG_DONTWAIT|MSG_NOSIGNAL) = 1364
poll([{fd=3, events=POLLIN}, {fd=4, events=POLLIN}], 2, 0) = 1 ([{fd=3, revents=POLLIN}])
poll([{fd=3, events=POLLIN}], 1, 4294967295) = 1 ([{fd=3, revents=POLLIN}])
recvmsg(3, {msg_name(0)=NULL, 
msg_iov(2)=[{"\1\0\f\0\f\0\0\0\v\0\0\0\0\0\f\0\f\0\0\0\v\0\0\0\1\0\f\0\f\0\0\0"..., 3552}, 
{"\1\0\f\0\f\0\0\0\v\0\0\0\0\0\f\0\f\0\0\0\v\0\0\0\1\0\f\0\f\0\0\0"..., 540}], msg_controllen=0, 
msg_flags=MSG_CMSG_CLOEXEC}, MSG_DONTWAIT|MSG_CMSG_CLOEXEC) = 4092
sendmsg(3, {msg_name(0)=NULL, 
msg_iov(2)=[{"\20\0\0\0\0\0\30\0\322\3\0\0\v\0\0\0\v\0\0\0\v\0\0\0\v\0\0\0\1\0\24\0"..., 252}, 
{"\30\0\0\0\v\0\0\0\6\0\10\0\20\0\0\0\0\0\30\0\322\3\0\0\v\0\0\0\v\0\0\0"..., 3840}], msg_controllen=0, 
msg_flags=0}, MSG_DONTWAIT|MSG_NOSIGNAL) = 4092
sendmsg(3, {msg_name(0)=NULL, 
msg_iov(2)=[{"\v\0\0\0\10\0\f\0\1\0\0\0\v\0\0\0\2\0\30\0\0\0\0\0\0\0\0\0\30\0\0\0"..., 256}, 
{"\0\0\0\0\0\0\0\0\v\0\0\0\10\0\f\0\1\0\0\0\v\0\0\0\2\0\30\0\0\0\0\0"..., 3836}], msg_controllen=0, 
msg_flags=0}, MSG_DONTWAIT|MSG_NOSIGNAL) = 4092
sendmsg(3, {msg_name(0)=NULL, 
msg_iov(2)=[{"\20\0\0\0\0\0\30\0\322\3\0\0\v\0\0\0\v\0\0\0\v\0\0\0\v\0\0\0\1\0\24\0"..., 260}, 
{"\6\0\10\0\20\0\0\0\0\0\30\0\322\3\0\0\v\0\0\0\v\0\0\0\v\0\0\0\v\0\0\0"..., 3832}], msg_controllen=0, 
msg_flags=0}, MSG_DONTWAIT|MSG_NOSIGNAL) = 4092
sendmsg(3, {msg_name(0)=NULL, 
msg_iov(2)=[{"\v\0\0\0\10\0\f\0\1\0\0\0\v\0\0\0\2\0\30\0\0\0\0\0\0\0\0\0\30\0\0\0"..., 264}, 
{"\v\0\0\0\10\0\f\0\1\0\0\0\v\0\0\0\2\0\30\0\0\0\0\0\0\0\0\0\30\0\0\0"..., 3828}], msg_controllen=0, 
msg_flags=0}, MSG_DONTWAIT|MSG_NOSIGNAL) = 4092
sendmsg(3, {msg_name(0)=NULL, 
msg_iov(2)=[{"\20\0\0\0\0\0\30\0\322\3\0\0\v\0\0\0\v\0\0\0\v\0\0\0\v\0\0\0\1\0\24\0"..., 268}, 
{"\0\0\30\0\322\3\0\0\v\0\0\0\v\0\0\0\v\0\0\0\v\0\0\0\1\0\24\0\22\0\0\0"..., 3824}], msg_controllen=0, 
msg_flags=0}, MSG_DONTWAIT|MSG_NOSIGNAL) = -1 EAGAIN (Resource temporarily unavailable)
write(2, "\n(gtk3-demo:5198): Gdk-ERROR **:"..., 90
(gtk3-demo:5198): Gdk-ERROR **: Error sending request: Resource temporarily unavailable

) = 90
--- SIGTRAP {si_signo=SIGTRAP, si_code=SI_KERNEL, si_value={int=1, ptr=0x1}} ---
+++ killed by SIGTRAP +++

So for some reason, gtk3-demo seems to be getting an EAGAIN error from
the compositor, and then it gives up and dies. I've tried using earlier
versions of Weston and Wayland without much luck, so I have a feeling it
might be something on my system. I talked with the people from #gtk+ on
GIMPNet, and they suggested that since GTK+ shouldn't be getting an
EAGAIN from a Wayland compositor to begin with, that it's probably an
issue within weston. If I recall, I don't think this error began coming
up until after I updated my system. The only problem is I don't know
what I updated, so I'm going to have to go through portage's logs and
see if I could figure out what could potentially be the culprit here.

I've been trying to debug this myself, but unfortunately this goes into
an area of Weston I'm really not familiar with. This is all of the
useful information I have for now since I'm not entirely sure what to
include here. So if there's any more information you need, so feel free
to ask if you need more!

Try to apply this patch http://patchwork.freedesktop.org/patch/44994/ .


Jonas


Cheers,
      Lyude



_______________________________________________
wayland-devel mailing list
wayland-devel lists freedesktop org
http://lists.freedesktop.org/mailman/listinfo/wayland-devel



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