cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

pretimeout_panic.c (1039B)


      1// SPDX-License-Identifier: GPL-2.0-or-later
      2/*
      3 * Copyright (C) 2015-2016 Mentor Graphics
      4 */
      5
      6#include <linux/kernel.h>
      7#include <linux/module.h>
      8#include <linux/watchdog.h>
      9
     10#include "watchdog_pretimeout.h"
     11
     12/**
     13 * pretimeout_panic - Panic on watchdog pretimeout event
     14 * @wdd - watchdog_device
     15 *
     16 * Panic, watchdog has not been fed till pretimeout event.
     17 */
     18static void pretimeout_panic(struct watchdog_device *wdd)
     19{
     20	panic("watchdog pretimeout event\n");
     21}
     22
     23static struct watchdog_governor watchdog_gov_panic = {
     24	.name		= "panic",
     25	.pretimeout	= pretimeout_panic,
     26};
     27
     28static int __init watchdog_gov_panic_register(void)
     29{
     30	return watchdog_register_governor(&watchdog_gov_panic);
     31}
     32
     33static void __exit watchdog_gov_panic_unregister(void)
     34{
     35	watchdog_unregister_governor(&watchdog_gov_panic);
     36}
     37module_init(watchdog_gov_panic_register);
     38module_exit(watchdog_gov_panic_unregister);
     39
     40MODULE_AUTHOR("Vladimir Zapolskiy <vladimir_zapolskiy@mentor.com>");
     41MODULE_DESCRIPTION("Panic watchdog pretimeout governor");
     42MODULE_LICENSE("GPL");