[ https://issues.apache.org/jira/browse/CB-11870?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15504038#comment-15504038 ]
Pat Deegan commented on CB-11870: --------------------------------- Couldn't see how to upload a file, so here's a snip of the strace of the process, where the storm of (potentially) related polls on FD 6 begin (the /tmp/.X11-unix/X0 socket): mprotect(0x7f680f340000, 4096, PROT_READ) = 0 mprotect(0x7f680f546000, 4096, PROT_READ) = 0 munmap(0x7f6814128000, 160365) = 0 socket(PF_LOCAL, SOCK_STREAM|SOCK_CLOEXEC, 0) = 6 connect(6, {sa_family=AF_LOCAL, sun_path=@"/tmp/.X11-unix/X0"}, 20) = 0 getpeername(6, {sa_family=AF_LOCAL, sun_path=@"/tmp/.X11-unix/X0"}, [20]) = 0 uname({sysname="Linux", nodename="AlephOne", ...}) = 0 access("/home/user/.Xauthority", R_OK) = 0 open("/home/user/.Xauthority", O_RDONLY) = 7 fstat(7, {st_mode=S_IFREG|0600, st_size=53, ...}) = 0 read(7, "\1\0\0\10AlephOne\0\0010\0\22MIT-MAGIC-COOKI"..., 4096) = 53 read(7, "", 4096) = 0 close(7) = 0 getsockname(6, {sa_family=AF_LOCAL, NULL}, [2]) = 0 fcntl(6, F_GETFL) = 0x2 (flags O_RDWR) fcntl(6, F_SETFL, O_RDWR|O_NONBLOCK) = 0 fcntl(6, F_SETFD, FD_CLOEXEC) = 0 poll([{fd=6, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=6, revents=POLLOUT}]) writev(6, [{"l\0\v\0\0\0\22\0\20\0\0\0", 12}, {"", 0}, {"MIT-MAGIC-COOKIE-1", 18}, {"\0\0", 2}, {"\223R/\334X\205\f\213_\3136\36\34\343dJ", 16}, {"", 0}], 6) = 48 recvfrom(6, "\1\0\v\0\0\0#\1", 8, 0, NULL, NULL) = 8 recvfrom(6, "x\31\264\0\0\0\340\4\377\377\37\0\0\1\0\0\24\0\377\377\1\7\0\0 \10\377\0\0\0\0"..., 1164, 0, NULL, NULL) = 1164 poll([{fd=6, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=6, revents=POLLOUT}]) writev(6, [{"b\0\5\0\f\0\0\0BIG-REQUESTS", 20}], 1) = 20 poll([{fd=6, events=POLLIN}], 1, -1) = 1 ([{fd=6, revents=POLLIN}]) recvmsg(6, {msg_name(0)=NULL, msg_iov(1)=[{"\1\0\1\0\0\0\0\0\1\205\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 4096}], msg_controllen=0, msg_flags=0}, 0) = 32 poll([{fd=6, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=6, revents=POLLOUT}]) writev(6, [{"\205\0\1\0", 4}], 1) = 4 poll([{fd=6, events=POLLIN}], 1, -1) = 1 ([{fd=6, revents=POLLIN}]) recvmsg(6, {msg_name(0)=NULL, msg_iov(1)=[{"\1\0\2\0\0\0\0\0\377\377?\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 4096}], msg_controllen=0, msg_flags=0}, 0) = 32 recvmsg(6, 0x7ffe56802b10, 0) = -1 EAGAIN (Resource temporarily unavailable) poll([{fd=6, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=6, revents=POLLOUT}]) writev(6, [{"7\0\5\0\0\0\340\4\266\0\0\0\10\0\0\0\377\377\377\0\24\0\6\0\266\0\0\0\27\0\0\0"..., 44}, {NULL, 0}, {"", 0}], 3) = 44 poll([{fd=6, events=POLLIN}], 1, -1) = 1 ([{fd=6, revents=POLLIN}]) recvmsg(6, {msg_name(0)=NULL, msg_iov(1)=[{"\1\10\4\0&\0\0\0\37\0\0\0\0\0\0\0\225\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 4096}], msg_controllen=0, msg_flags=0}, 0) = 184 recvmsg(6, 0x7ffe56802b50, 0) = -1 EAGAIN (Resource temporarily unavailable) poll([{fd=6, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=6, revents=POLLOUT}]) writev(6, [{"b\0\5\0\t\0\340\4", 8}, {"XKEYBOARD", 9}, {"\0\0\0", 3}], 3) = 20 poll([{fd=6, events=POLLIN}], 1, -1) = 1 ([{fd=6, revents=POLLIN}]) recvmsg(6, {msg_name(0)=NULL, msg_iov(1)=[{"\1\0\5\0\0\0\0\0\1\207U\211\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 4096}], msg_controllen=0, msg_flags=0}, 0) = 32 recvmsg(6, 0x7ffe56802a20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802a20, 0) = -1 EAGAIN (Resource temporarily unavailable) poll([{fd=6, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=6, revents=POLLOUT}]) writev(6, [{"\207\0\2\0\1\0\0\0", 8}, {NULL, 0}, {"", 0}], 3) = 8 poll([{fd=6, events=POLLIN}], 1, -1) = 1 ([{fd=6, revents=POLLIN}]) recvmsg(6, {msg_name(0)=NULL, msg_iov(1)=[{"\1\1\6\0\0\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 4096}], msg_controllen=0, msg_flags=0}, 0) = 32 recvmsg(6, 0x7ffe56802ad0, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802ad0, 0) = -1 EAGAIN (Resource temporarily unavailable) futex(0x7f68227a1428, FUTEX_WAKE_PRIVATE, 2147483647) = 0 poll([{fd=6, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=6, revents=POLLOUT}]) writev(6, [{"\20\0\5\0\v\0\0\0UTF8_STRING\0\20\0\6\0\20\0\0\0WM_C"..., 916}, {NULL, 0}, {"", 0}], 3) = 916 poll([{fd=6, events=POLLIN}], 1, -1) = 1 ([{fd=6, revents=POLLIN}]) recvmsg(6, {msg_name(0)=NULL, msg_iov(1)=[{"\1\0\7\0\0\0\0\0 \1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 4096}], msg_controllen=0, msg_flags=0}, 0) = 1088 recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) poll([{fd=6, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=6, revents=POLLOUT}]) writev(6, [{"b\0\4\0\5\0\0\0", 8}, {"RANDR", 5}, {"\0\0\0", 3}], 3) = 16 poll([{fd=6, events=POLLIN}], 1, -1) = 1 ([{fd=6, revents=POLLIN}]) recvmsg(6, {msg_name(0)=NULL, msg_iov(1)=[{"\1\0)\0\0\0\0\0\1\214Y\223\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 4096}], msg_controllen=0, msg_flags=0}, 0) = 32 recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily unavailable) poll([{fd=6, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=6, revents=POLLOUT}]) writev(6, [{"b\0\10\0\27\0\0\0", 8}, {"Generic Event Extension", 23}, {"\0", 1}], 3) = 32 poll([{fd=6, events=POLLIN}], 1, -1) = 1 ([{fd=6, revents=POLLIN}]) recvmsg(6, {msg_name(0)=NULL, msg_iov(1)=[{"\1\0*\0\0\0\0\0\1\200\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 4096}], msg_controllen=0, msg_flags=0}, 0) = 32 recvmsg(6, 0x7ffe56802a80, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802a80, 0) = -1 EAGAIN (Resource temporarily unavailable) poll([{fd=6, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=6, revents=POLLOUT}]) writev(6, [{"\200\0\2\0\1\0\0\0", 8}, {NULL, 0}, {"", 0}], 3) = 8 poll([{fd=6, events=POLLIN}], 1, -1) = 1 ([{fd=6, revents=POLLIN}]) recvmsg(6, {msg_name(0)=NULL, msg_iov(1)=[{"\1\0+\0\0\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 4096}], msg_controllen=0, msg_flags=0}, 0) = 32 recvmsg(6, 0x7ffe56802b40, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffe56802b40, 0) = -1 EAGAIN (Resource temporarily unavailable) > Unable to drive display on Ubuntu 16.04 (black window) > ------------------------------------------------------ > > Key: CB-11870 > URL: https://issues.apache.org/jira/browse/CB-11870 > Project: Apache Cordova > Issue Type: Bug > Components: Ubuntu > Affects Versions: 6.3.1 > Environment: Node version: v6.6.0 > Cordova version: 6.3.1 > Ubuntu: 16.04 > Compiz/Unity plugins: 'core', 'composite', 'opengl', 'regex', 'resize', > 'commands', 'animation', 'snap', 'wall', 'place', 'compiztoolbox', 'imgpng', > 'mousepoll', 'grid', 'unitymtgrabhandles', 'vpswitch', 'copytex', 'move', > 'workarounds', 'session', 'fade', 'scale', 'expo', 'ezoom', 'unityshell' > Reporter: Pat Deegan > Assignee: Maxim Ermilov > Labels: blackwindow, ubuntu > > On a fresh install of both Ubuntu (16.04) and node/cordova, doing a standard > "hello world" create/build/run: > $ cordova create hello com.example.hello HelloWorld > $ cd hello/ > $ cordova platforms add ubuntu > $ cordova build ubuntu > $ cordova run ubuntu > yields a black screen. Checking debug console (using chromium) seems to show > the program is running correctly. > However, an strace of the process shows that the program starts up and then > goes into a tight loop of polling on the /tmp/.X11-unix/X0 which gives a > series of EAGAIN (resource unavailable) messages, e.g. > recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily > unavailable) > recvmsg(6, 0x7ffe56802b20, 0) = -1 EAGAIN (Resource temporarily > unavailable) > Quick demo of entire process and result uploaded to > https://youtu.be/dmsCJvHKyOs -- This message was sent by Atlassian JIRA (v6.3.4#6332) --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@cordova.apache.org For additional commands, e-mail: issues-h...@cordova.apache.org