Commit 1c0f151e by Shahbaz Youssefi Committed by Commit Bot

Implement missing posix utils

Bug: angleproject:2923 Change-Id: I35fee6303f07c7b3a931f876a8d9d4ba54c91630 Reviewed-on: https://chromium-review.googlesource.com/c/1315607 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org>
parent 6ba22ee1
...@@ -44,13 +44,41 @@ void SetLowPriorityProcess() ...@@ -44,13 +44,41 @@ void SetLowPriorityProcess()
void WriteDebugMessage(const char *format, ...) void WriteDebugMessage(const char *format, ...)
{ {
// TODO(jmadill): Implement this va_list vararg;
va_start(vararg, format);
vfprintf(stderr, format, vararg);
va_end(vararg);
} }
bool StabilizeCPUForBenchmarking() bool StabilizeCPUForBenchmarking()
{ {
// TODO(jmadill): Implement this. http://anglebug.com/2923 bool success = true;
return true; errno = 0;
setpriority(PRIO_PROCESS, getpid(), -20);
if (errno)
{
// A friendly warning in case the test was run without appropriate permission.
perror(
"Warning: setpriority failed in StabilizeCPUForBenchmarking. Process will retain "
"default priority");
success = false;
}
#if ANGLE_PLATFORM_LINUX
cpu_set_t affinity;
CPU_SET(0, &affinity);
errno = 0;
if (sched_setaffinity(getpid(), sizeof(affinity), &affinity))
{
perror(
"Warning: sched_setaffinity failed in StabilizeCPUForBenchmarking. Process will retain "
"default affinity");
success = false;
}
#else
// TODO(jmadill): Implement for non-linux. http://anglebug.com/2923
#endif
return success;
} }
} // namespace angle } // namespace angle
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment