123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- // SPDX-License-Identifier: GPL-2.0
- /*
- * IOMMU debugfs core infrastructure
- *
- * Copyright (C) 2018 Advanced Micro Devices, Inc.
- *
- * Author: Gary R Hook <[email protected]>
- */
- #include <linux/pci.h>
- #include <linux/iommu.h>
- #include <linux/debugfs.h>
- struct dentry *iommu_debugfs_dir;
- EXPORT_SYMBOL_GPL(iommu_debugfs_dir);
- /**
- * iommu_debugfs_setup - create the top-level iommu directory in debugfs
- *
- * Provide base enablement for using debugfs to expose internal data of an
- * IOMMU driver. When called, this function creates the
- * /sys/kernel/debug/iommu directory.
- *
- * Emit a strong warning at boot time to indicate that this feature is
- * enabled.
- *
- * This function is called from iommu_init; drivers may then use
- * iommu_debugfs_dir to instantiate a vendor-specific directory to be used
- * to expose internal data.
- */
- void iommu_debugfs_setup(void)
- {
- if (!iommu_debugfs_dir) {
- iommu_debugfs_dir = debugfs_create_dir("iommu", NULL);
- pr_warn("\n");
- pr_warn("*************************************************************\n");
- pr_warn("** NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE **\n");
- pr_warn("** **\n");
- pr_warn("** IOMMU DebugFS SUPPORT HAS BEEN ENABLED IN THIS KERNEL **\n");
- pr_warn("** **\n");
- pr_warn("** This means that this kernel is built to expose internal **\n");
- pr_warn("** IOMMU data structures, which may compromise security on **\n");
- pr_warn("** your system. **\n");
- pr_warn("** **\n");
- pr_warn("** If you see this message and you are not debugging the **\n");
- pr_warn("** kernel, report this immediately to your vendor! **\n");
- pr_warn("** **\n");
- pr_warn("** NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE **\n");
- pr_warn("*************************************************************\n");
- }
- }
|