TaskSchedulerTaskTrackerTest failing on low mem devices |
||
Issue description
[2453/2453] TaskSchedulerTaskTrackerTest.LoadWillPostAndRunBeforeShutdown (CRASHED)
Retrying 3 tests (retry #3)
[ RUN ] TaskSchedulerTaskTrackerTest.LoadWillPostBeforeShutdownAndRunDuringShutdown
[25012:25012:0411/171103.192307:1735363035:ERROR:platform_thread_posix.cc(119)] pthread_create: Resource temporarily unavailable
[25012:25012:0411/171103.192580:1735363301:FATAL:simple_thread.cc(46)] Check failed: success.
[2454/2456] TaskSchedulerTaskTrackerTest.LoadWillPostBeforeShutdownAndRunDuringShutdown (CRASHED)
[ RUN ] TaskSchedulerTaskTrackerTest.LoadWillPostAndRunDuringShutdown
[25262:25262:0411/171103.428481:1735599208:ERROR:platform_thread_posix.cc(119)] pthread_create: Resource temporarily unavailable
[25262:25262:0411/171103.428763:1735599487:FATAL:simple_thread.cc(46)] Check failed: success.
[2455/2456] TaskSchedulerTaskTrackerTest.LoadWillPostAndRunDuringShutdown (CRASHED)
[ RUN ] TaskSchedulerTaskTrackerTest.LoadWillPostAndRunBeforeShutdown
[25514:25514:0411/171103.655488:1735826216:ERROR:platform_thread_posix.cc(119)] pthread_create: Resource temporarily unavailable
[25514:25514:0411/171103.655775:1735826497:FATAL:simple_thread.cc(46)] Check failed: success.
[2456/2456] TaskSchedulerTaskTrackerTest.LoadWillPostAndRunBeforeShutdown (CRASHED)
3 tests crashed:
TaskSchedulerTaskTrackerTest.LoadWillPostAndRunBeforeShutdown (../../base/task_scheduler/task_tracker_unittest.cc:722)
TaskSchedulerTaskTrackerTest.LoadWillPostAndRunDuringShutdown (../../base/task_scheduler/task_tracker_unittest.cc:804)
TaskSchedulerTaskTrackerTest.LoadWillPostBeforeShutdownAndRunDuringShutdown (../../base/task_scheduler/task_tracker_unittest.cc:754)
It apperas the tests are spawning 300 threads: https://cs.chromium.org/chromium/src/base/task_scheduler/task_tracker_unittest.cc?type=cs&q=LoadWillPostAndRunBeforeShutdown&l=728
pthread_create: Resource temporarily unavailable => EAGAIN
so it seems we are hitting a resource constraint on these devices:
EAGAIN A system-imposed limit on the number of threads was
encountered. There are a number of limits that may trigger
this error: the RLIMIT_NPROC soft resource limit (set via
setrlimit(2)), which limits the number of processes and
threads for a real user ID, was reached; the kernel's system-
wide limit on the number of processes and threads,
/proc/sys/kernel/threads-max, was reached (see proc(5)); or
the maximum number of PIDs, /proc/sys/kernel/pid_max, was
reached (see proc(5)).
http://man7.org/linux/man-pages/man3/pthread_create.3.html
,
Apr 11 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/311fdefdd2885ff3e93c8a16e469a41ed14cb1c2 commit 311fdefdd2885ff3e93c8a16e469a41ed14cb1c2 Author: mbjorge <mbjorge@chromium.org> Date: Tue Apr 11 19:51:45 2017 Reduce the number of threads created by the load TaskTracker tests. Creating 300 threads on low memory devices fails, resulting in pthread_create returning EAGAIN and the tests crashing. Reduce the created threads by 25%, as local testing shows this is about the limit the devices can handle. BUG= 710561 TESt=base_unittests on device Review-Url: https://codereview.chromium.org/2812073002 Cr-Commit-Position: refs/heads/master@{#463734} [modify] https://crrev.com/311fdefdd2885ff3e93c8a16e469a41ed14cb1c2/base/task_scheduler/task_tracker_unittest.cc
,
Apr 18 2017
|
||
►
Sign in to add a comment |
||
Comment 1 by mbjorge@chromium.org
, Apr 11 2017