blob: 251482b306c2c9d2376c321080e6f53e6804e692 [file] [log] [blame]
// Copyright 2025 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "components/viz/service/gl/exit_code.h"
#include "base/logging.h"
#include "components/viz/service/gl/gpu_log_message_manager.h"
namespace viz {
void RestartGpuProcessForContextLoss(std::string_view reason) {
LOG(ERROR) << "Restarting GPU process due to unrecoverable error. " << reason;
// Terminate the GPU process on IO thread to ensure previous mojo messages are
// in message queue.
GpuLogMessageManager::GetInstance()->TerminateProcess(
static_cast<int>(ExitCode::RESULT_CODE_GPU_EXIT_ON_CONTEXT_LOST));
}
} // namespace viz