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

842_debugfs.h (1305B)


      1/* SPDX-License-Identifier: GPL-2.0 */
      2
      3#ifndef __842_DEBUGFS_H__
      4#define __842_DEBUGFS_H__
      5
      6#include <linux/debugfs.h>
      7
      8static bool sw842_template_counts;
      9module_param_named(template_counts, sw842_template_counts, bool, 0444);
     10
     11static atomic_t template_count[OPS_MAX], template_repeat_count,
     12	template_zeros_count, template_short_data_count, template_end_count;
     13
     14static struct dentry *sw842_debugfs_root;
     15
     16static int __init sw842_debugfs_create(void)
     17{
     18	umode_t m = S_IRUGO | S_IWUSR;
     19	int i;
     20
     21	if (!debugfs_initialized())
     22		return -ENODEV;
     23
     24	sw842_debugfs_root = debugfs_create_dir(MODULE_NAME, NULL);
     25
     26	for (i = 0; i < ARRAY_SIZE(template_count); i++) {
     27		char name[32];
     28
     29		snprintf(name, 32, "template_%02x", i);
     30		debugfs_create_atomic_t(name, m, sw842_debugfs_root,
     31					&template_count[i]);
     32	}
     33	debugfs_create_atomic_t("template_repeat", m, sw842_debugfs_root,
     34				&template_repeat_count);
     35	debugfs_create_atomic_t("template_zeros", m, sw842_debugfs_root,
     36				&template_zeros_count);
     37	debugfs_create_atomic_t("template_short_data", m, sw842_debugfs_root,
     38				&template_short_data_count);
     39	debugfs_create_atomic_t("template_end", m, sw842_debugfs_root,
     40				&template_end_count);
     41
     42	return 0;
     43}
     44
     45static void __exit sw842_debugfs_remove(void)
     46{
     47	debugfs_remove_recursive(sw842_debugfs_root);
     48}
     49
     50#endif