# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

NAME = "platform_KernelErrorPaths.CORRUPT_STACK"
AUTHOR = "Chrome OS Team"
ATTRIBUTES = "suite:kernel_per-build_regression, suite:partners, suite:cr50_stress_experimental"
TIME = "SHORT"
TEST_CATEGORY = "Functional"
TEST_CLASS = "platform"
TEST_TYPE = "server"

DOC = """
This test uses /proc/breakme to cause the machine to have various
serious failures (kernel panic, kernel bug, deadlock, etc.), and then
check to make sure that these failures were properly logged and had
appropritate consequences (reboot, logging, etc.).

Pass the kernel crashes as a comma-delimited string of crash types.
"""

def run_kernel_error_paths(machine):
    host = hosts.create_host(machine)
    job.run_test("platform_KernelErrorPaths", kcrashes="CORRUPT_STACK",
                  tag="CORRUPT_STACK", host=host)

parallel_simple(run_kernel_error_paths, machines)
