← Back to team overview

touch-packages team mailing list archive

[Bug 1378788] [NEW] [dash] creates and destroys thread repeatedly

 

Public bug reported:

Running unity8-dash in gdb, I noticed these messages repeating
continually:

[New Thread 0xa69b6450 (LWP 22737)]
[Thread 0xa69b6450 (LWP 22737) exited]
[New Thread 0xa69b6450 (LWP 22740)]
[Thread 0xa69b6450 (LWP 22740) exited]
[New Thread 0xa69b6450 (LWP 22743)]
[Thread 0xa69b6450 (LWP 22743) exited]
[New Thread 0xa69b6450 (LWP 22746)]
[Thread 0xa69b6450 (LWP 22746) exited]
...

Breaking on thread creation:
(gdb) break __pthread_create_2_1

Breakpoint 1, __pthread_create_2_1 (newthread=newthread@entry=0xb1b9a414, attr=0x2ba330, start_routine=start_routine@entry=0xb5d2dc71 <timer_sigev_thread>, arg=0xadc0e0f0) at pthread_create.c:461
461	pthread_create.c: No such file or directory.

I could get only get this:

(gdb) bt
#0  __pthread_create_2_1 (newthread=newthread@entry=0xb1b9a414, attr=0x2ba330, start_routine=start_routine@entry=0xb5d2dc71 <timer_sigev_thread>, arg=0xadc0e0f0) at pthread_create.c:461
#1  0xb5d2dc40 in timer_helper_thread (arg=<optimized out>) at ../nptl/sysdeps/unix/sysv/linux/timer_routines.c:126
#2  0xb6092f98 in start_thread (arg=0xb1b9ab40) at pthread_create.c:311
#3  0xb625922c in ?? () at ../ports/sysdeps/unix/sysv/linux/arm/nptl/../clone.S:92 from /lib/arm-linux-gnueabihf/libc.so.6

Here's the list of current threads:

(gdb) info threads
  Id   Target Id         Frame 
  48   Thread 0x9ae55450 (LWP 25686) "unity8-dash" __GI___nptl_death_event () at events.c:31
  39   Thread 0xb2ee0450 (LWP 16847) "Client IO loop" 0xb6259f50 in recvmsg () at ../sysdeps/unix/syscall-template.S:81
  38   Thread 0xb23bc450 (LWP 16850) "arch_worker" Cannot access memory at address 0x0
0xb4532840 in ?? ()
* 37   Thread 0xb1b9ab40 (LWP 16851) "unity8-dash" __pthread_create_2_1 (newthread=newthread@entry=0xb1b9a414, attr=0x2ba330, start_routine=start_routine@entry=0xb5d2dc71 <timer_sigev_thread>, 
    arg=0xadc0e430) at pthread_create.c:461
  36   Thread 0xb19ff450 (LWP 16852) "SWD-GPU Job" __libc_do_syscall () at ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:43
  35   Thread 0xb11ff450 (LWP 16853) "SWD-Frame" __libc_do_syscall () at ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:43
  34   Thread 0xb09ff450 (LWP 16854) "QQmlThread" 0xb6252aa2 in poll () at ../sysdeps/unix/syscall-template.S:81
  33   Thread 0xaefc9450 (LWP 16856) "dconf worker" 0xb6252aa2 in poll () at ../sysdeps/unix/syscall-template.S:81
  32   Thread 0xae5ff450 (LWP 16857) "gdbus" 0xb6252aa2 in poll () at ../sysdeps/unix/syscall-template.S:81
  31   Thread 0xad3ff450 (LWP 16896) "Qt bearer threa" 0xb6252aa2 in poll () at ../sysdeps/unix/syscall-template.S:81
  30   Thread 0xacb95450 (LWP 16913) "QThread" __libc_do_syscall () at ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:43
  29   Thread 0xac395450 (LWP 16915) "QThread" 0xb6252aa2 in poll () at ../sysdeps/unix/syscall-template.S:81
  28   Thread 0xabb95450 (LWP 16916) "QProcessManager" 0xb6254992 in select () at ../sysdeps/unix/syscall-template.S:81
  27   Thread 0xaafed450 (LWP 16924) "unity8-dash" 0xb6259712 in epoll_wait () at ../sysdeps/unix/syscall-template.S:81
  26   Thread 0xa98eb450 (LWP 17088) "QQuickPixmapRea" 0xb6252aa2 in poll () at ../sysdeps/unix/syscall-template.S:81
  25   Thread 0xa8eec450 (LWP 17094) "unity8-dash" 0xb6259712 in epoll_wait () at ../sysdeps/unix/syscall-template.S:81
  24   Thread 0xa86ac450 (LWP 17096) "QSGRenderThread" __libc_do_syscall () at ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:43
  23   Thread 0xa7eac450 (LWP 17098) "Swap Worker" __libc_do_syscall () at ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:43
  22   Thread 0xa75f4450 (LWP 18972) "Qt HTTP thread" 0xb6252aa2 in poll () at ../sysdeps/unix/syscall-template.S:81
  21   Thread 0xa5368450 (LWP 18977) "scopes_ng::Scop" __libc_do_syscall () at ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:43
  20   Thread 0xa4b68450 (LWP 18978) "scopes_ng::Scop" __libc_do_syscall () at ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:43
  19   Thread 0xa4368450 (LWP 18979) "scopes_ng::Scop" __libc_do_syscall () at ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:43
  18   Thread 0xa3b68450 (LWP 18980) "scopes_ng::Scop" __libc_do_syscall () at ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:43
  17   Thread 0xa3368450 (LWP 18981) "scopes_ng::Scop" __libc_do_syscall () at ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:43
  16   Thread 0xa2b68450 (LWP 18982) "scopes_ng::Scop" __libc_do_syscall () at ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:43
  15   Thread 0xa2368450 (LWP 18983) "scopes_ng::Scop" __libc_do_syscall () at ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:43
  14   Thread 0xa1b68450 (LWP 18984) "scopes_ng::Scop" __libc_do_syscall () at ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:43
  13   Thread 0xa1368450 (LWP 18985) "scopes_ng::Scop" __libc_do_syscall () at ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:43
  12   Thread 0xa0b68450 (LWP 18986) "scopes_ng::Scop" __libc_do_syscall () at ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:43
  11   Thread 0xa0368450 (LWP 18987) "scopes_ng::Scop" __libc_do_syscall () at ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:43
  10   Thread 0x9fb68450 (LWP 18988) "scopes_ng::Scop" 0xb6259712 in epoll_wait () at ../sysdeps/unix/syscall-template.S:81
  9    Thread 0x9f368450 (LWP 18989) "scopes_ng::Scop" 0xb6259712 in epoll_wait () at ../sysdeps/unix/syscall-template.S:81
  8    Thread 0xa5b68450 (LWP 18990) "unity8-dash" __libc_do_syscall () at ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:43
  7    Thread 0x9eb68450 (LWP 18991) "unity8-dash" 0xb6252aa2 in poll () at ../sysdeps/unix/syscall-template.S:81
  6    Thread 0x9e368450 (LWP 19030) "unity8-dash" __libc_do_syscall () at ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:43
  5    Thread 0x9db68450 (LWP 19031) "unity8-dash" __libc_do_syscall () at ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:43
  4    Thread 0x9d368450 (LWP 19032) "unity8-dash" 0xb6252aa2 in poll () at ../sysdeps/unix/syscall-template.S:81
  3    Thread 0x9cb68450 (LWP 19033) "unity8-dash" 0xb6252aa2 in poll () at ../sysdeps/unix/syscall-template.S:81
  2    Thread 0x9c267450 (LWP 19109) "Qt HTTP thread" 0xb6252aa2 in poll () at ../sysdeps/unix/syscall-template.S:81
  1    Thread 0xb6fda220 (LWP 16845) "unity8-dash" 0xb6252aa2 in poll () at ../sysdeps/unix/syscall-template.S:81

Thread 48 is the newest, 
(gdb) thread 48
[Switching to thread 48 (Thread 0x9ae55450 (LWP 25686))]
#0  __GI___nptl_death_event () at events.c:31
31	events.c: No such file or directory.
(gdb) bt
#0  __GI___nptl_death_event () at events.c:31
#1  0xb609312c in start_thread (arg=0x9ae55450) at pthread_create.c:358
#2  0xb625922c in ?? () at ../ports/sysdeps/unix/sysv/linux/arm/nptl/../clone.S:92 from /lib/arm-linux-gnueabihf/libc.so.6
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Here's a full thread backtrace of the state at new thread spawn:
http://pastebin.ubuntu.com/8520408/

Is something repeatedly creating a timer with a very small timeout?

** Affects: unity8 (Ubuntu)
     Importance: Undecided
         Status: New

** Summary changed:

- dash creates and destroys thread repeatedly
+ [dash] creates and destroys thread repeatedly

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to unity8 in Ubuntu.
https://bugs.launchpad.net/bugs/1378788

Title:
  [dash] creates and destroys thread repeatedly

Status in “unity8” package in Ubuntu:
  New

Bug description:
  Running unity8-dash in gdb, I noticed these messages repeating
  continually:

  [New Thread 0xa69b6450 (LWP 22737)]
  [Thread 0xa69b6450 (LWP 22737) exited]
  [New Thread 0xa69b6450 (LWP 22740)]
  [Thread 0xa69b6450 (LWP 22740) exited]
  [New Thread 0xa69b6450 (LWP 22743)]
  [Thread 0xa69b6450 (LWP 22743) exited]
  [New Thread 0xa69b6450 (LWP 22746)]
  [Thread 0xa69b6450 (LWP 22746) exited]
  ...

  Breaking on thread creation:
  (gdb) break __pthread_create_2_1

  Breakpoint 1, __pthread_create_2_1 (newthread=newthread@entry=0xb1b9a414, attr=0x2ba330, start_routine=start_routine@entry=0xb5d2dc71 <timer_sigev_thread>, arg=0xadc0e0f0) at pthread_create.c:461
  461	pthread_create.c: No such file or directory.

  I could get only get this:

  (gdb) bt
  #0  __pthread_create_2_1 (newthread=newthread@entry=0xb1b9a414, attr=0x2ba330, start_routine=start_routine@entry=0xb5d2dc71 <timer_sigev_thread>, arg=0xadc0e0f0) at pthread_create.c:461
  #1  0xb5d2dc40 in timer_helper_thread (arg=<optimized out>) at ../nptl/sysdeps/unix/sysv/linux/timer_routines.c:126
  #2  0xb6092f98 in start_thread (arg=0xb1b9ab40) at pthread_create.c:311
  #3  0xb625922c in ?? () at ../ports/sysdeps/unix/sysv/linux/arm/nptl/../clone.S:92 from /lib/arm-linux-gnueabihf/libc.so.6

  Here's the list of current threads:

  (gdb) info threads
    Id   Target Id         Frame 
    48   Thread 0x9ae55450 (LWP 25686) "unity8-dash" __GI___nptl_death_event () at events.c:31
    39   Thread 0xb2ee0450 (LWP 16847) "Client IO loop" 0xb6259f50 in recvmsg () at ../sysdeps/unix/syscall-template.S:81
    38   Thread 0xb23bc450 (LWP 16850) "arch_worker" Cannot access memory at address 0x0
  0xb4532840 in ?? ()
  * 37   Thread 0xb1b9ab40 (LWP 16851) "unity8-dash" __pthread_create_2_1 (newthread=newthread@entry=0xb1b9a414, attr=0x2ba330, start_routine=start_routine@entry=0xb5d2dc71 <timer_sigev_thread>, 
      arg=0xadc0e430) at pthread_create.c:461
    36   Thread 0xb19ff450 (LWP 16852) "SWD-GPU Job" __libc_do_syscall () at ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:43
    35   Thread 0xb11ff450 (LWP 16853) "SWD-Frame" __libc_do_syscall () at ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:43
    34   Thread 0xb09ff450 (LWP 16854) "QQmlThread" 0xb6252aa2 in poll () at ../sysdeps/unix/syscall-template.S:81
    33   Thread 0xaefc9450 (LWP 16856) "dconf worker" 0xb6252aa2 in poll () at ../sysdeps/unix/syscall-template.S:81
    32   Thread 0xae5ff450 (LWP 16857) "gdbus" 0xb6252aa2 in poll () at ../sysdeps/unix/syscall-template.S:81
    31   Thread 0xad3ff450 (LWP 16896) "Qt bearer threa" 0xb6252aa2 in poll () at ../sysdeps/unix/syscall-template.S:81
    30   Thread 0xacb95450 (LWP 16913) "QThread" __libc_do_syscall () at ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:43
    29   Thread 0xac395450 (LWP 16915) "QThread" 0xb6252aa2 in poll () at ../sysdeps/unix/syscall-template.S:81
    28   Thread 0xabb95450 (LWP 16916) "QProcessManager" 0xb6254992 in select () at ../sysdeps/unix/syscall-template.S:81
    27   Thread 0xaafed450 (LWP 16924) "unity8-dash" 0xb6259712 in epoll_wait () at ../sysdeps/unix/syscall-template.S:81
    26   Thread 0xa98eb450 (LWP 17088) "QQuickPixmapRea" 0xb6252aa2 in poll () at ../sysdeps/unix/syscall-template.S:81
    25   Thread 0xa8eec450 (LWP 17094) "unity8-dash" 0xb6259712 in epoll_wait () at ../sysdeps/unix/syscall-template.S:81
    24   Thread 0xa86ac450 (LWP 17096) "QSGRenderThread" __libc_do_syscall () at ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:43
    23   Thread 0xa7eac450 (LWP 17098) "Swap Worker" __libc_do_syscall () at ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:43
    22   Thread 0xa75f4450 (LWP 18972) "Qt HTTP thread" 0xb6252aa2 in poll () at ../sysdeps/unix/syscall-template.S:81
    21   Thread 0xa5368450 (LWP 18977) "scopes_ng::Scop" __libc_do_syscall () at ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:43
    20   Thread 0xa4b68450 (LWP 18978) "scopes_ng::Scop" __libc_do_syscall () at ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:43
    19   Thread 0xa4368450 (LWP 18979) "scopes_ng::Scop" __libc_do_syscall () at ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:43
    18   Thread 0xa3b68450 (LWP 18980) "scopes_ng::Scop" __libc_do_syscall () at ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:43
    17   Thread 0xa3368450 (LWP 18981) "scopes_ng::Scop" __libc_do_syscall () at ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:43
    16   Thread 0xa2b68450 (LWP 18982) "scopes_ng::Scop" __libc_do_syscall () at ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:43
    15   Thread 0xa2368450 (LWP 18983) "scopes_ng::Scop" __libc_do_syscall () at ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:43
    14   Thread 0xa1b68450 (LWP 18984) "scopes_ng::Scop" __libc_do_syscall () at ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:43
    13   Thread 0xa1368450 (LWP 18985) "scopes_ng::Scop" __libc_do_syscall () at ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:43
    12   Thread 0xa0b68450 (LWP 18986) "scopes_ng::Scop" __libc_do_syscall () at ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:43
    11   Thread 0xa0368450 (LWP 18987) "scopes_ng::Scop" __libc_do_syscall () at ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:43
    10   Thread 0x9fb68450 (LWP 18988) "scopes_ng::Scop" 0xb6259712 in epoll_wait () at ../sysdeps/unix/syscall-template.S:81
    9    Thread 0x9f368450 (LWP 18989) "scopes_ng::Scop" 0xb6259712 in epoll_wait () at ../sysdeps/unix/syscall-template.S:81
    8    Thread 0xa5b68450 (LWP 18990) "unity8-dash" __libc_do_syscall () at ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:43
    7    Thread 0x9eb68450 (LWP 18991) "unity8-dash" 0xb6252aa2 in poll () at ../sysdeps/unix/syscall-template.S:81
    6    Thread 0x9e368450 (LWP 19030) "unity8-dash" __libc_do_syscall () at ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:43
    5    Thread 0x9db68450 (LWP 19031) "unity8-dash" __libc_do_syscall () at ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:43
    4    Thread 0x9d368450 (LWP 19032) "unity8-dash" 0xb6252aa2 in poll () at ../sysdeps/unix/syscall-template.S:81
    3    Thread 0x9cb68450 (LWP 19033) "unity8-dash" 0xb6252aa2 in poll () at ../sysdeps/unix/syscall-template.S:81
    2    Thread 0x9c267450 (LWP 19109) "Qt HTTP thread" 0xb6252aa2 in poll () at ../sysdeps/unix/syscall-template.S:81
    1    Thread 0xb6fda220 (LWP 16845) "unity8-dash" 0xb6252aa2 in poll () at ../sysdeps/unix/syscall-template.S:81

  Thread 48 is the newest, 
  (gdb) thread 48
  [Switching to thread 48 (Thread 0x9ae55450 (LWP 25686))]
  #0  __GI___nptl_death_event () at events.c:31
  31	events.c: No such file or directory.
  (gdb) bt
  #0  __GI___nptl_death_event () at events.c:31
  #1  0xb609312c in start_thread (arg=0x9ae55450) at pthread_create.c:358
  #2  0xb625922c in ?? () at ../ports/sysdeps/unix/sysv/linux/arm/nptl/../clone.S:92 from /lib/arm-linux-gnueabihf/libc.so.6
  Backtrace stopped: previous frame identical to this frame (corrupt stack?)

  Here's a full thread backtrace of the state at new thread spawn:
  http://pastebin.ubuntu.com/8520408/

  Is something repeatedly creating a timer with a very small timeout?

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/unity8/+bug/1378788/+subscriptions


Follow ups

References