New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 710561 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Last visit > 30 days ago
Closed: Apr 2017
Cc:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug



Sign in to add a comment

TaskSchedulerTaskTrackerTest failing on low mem devices

Project Member Reported by mbjorge@chromium.org, Apr 11 2017

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


 
I have tested locally, and reducing the loop iterations from 100 to 75 allows the test to succeed even on these mem devices
Project Member

Comment 2 by bugdroid1@chromium.org, 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

Comment 3 by fdoray@chromium.org, Apr 18 2017

Status: Fixed (was: Untriaged)

Sign in to add a comment