/linux-6.1.9/Documentation/translations/zh_CN/filesystems/ |
D | debugfs.rst | 5 :Original: Documentation/filesystems/debugfs.rst 24 信息。也不像sysfs,具有严格的“每个文件一个值“的规则。debugfs根本没有规则,开发 25 人员可以在这里放置他们想要的任何信息。debugfs文件系统也不能用作稳定的ABI接口。 26 从理论上讲,debugfs导出文件的时候没有任何约束。但是[1]实际情况并不总是那么 27 简单。即使是debugfs接口,也最好根据需要进行设计,并尽量保持接口不变。 32 mount -t debugfs none /sys/kernel/debug 35 debugfs根目录默认仅可由root用户访问。要更改对文件树的访问,请使用“ uid”,“ gid” 36 和“ mode”挂载选项。请注意,debugfs API仅按照GPL协议导出到模块。 38 使用debugfs的代码应包含<linux/debugfs.h>。然后,首先是创建至少一个目录来保存 39 一组debugfs文件:: [all …]
|
/linux-6.1.9/Documentation/translations/zh_TW/filesystems/ |
D | debugfs.rst | 5 :Original: :doc:`../../../filesystems/debugfs` 26 信息。也不像sysfs,具有嚴格的「每個文件一個值「的規則。debugfs根本沒有規則,開發 27 人員可以在這裡放置他們想要的任何信息。debugfs文件系統也不能用作穩定的ABI接口。 28 從理論上講,debugfs導出文件的時候沒有任何約束。但是[1]實際情況並不總是那麼 29 簡單。即使是debugfs接口,也最好根據需要進行設計,並儘量保持接口不變。 34 mount -t debugfs none /sys/kernel/debug 37 debugfs根目錄默認僅可由root用戶訪問。要更改對文件樹的訪問,請使用「 uid」,「 gid」 38 和「 mode」掛載選項。請注意,debugfs API僅按照GPL協議導出到模塊。 40 使用debugfs的代碼應包含<linux/debugfs.h>。然後,首先是創建至少一個目錄來保存 41 一組debugfs文件:: [all …]
|
/linux-6.1.9/drivers/memory/tegra/ |
D | tegra186-emc.c | 31 } debugfs; member 106 *rate = emc->debugfs.min_rate; in tegra186_emc_debug_min_rate_get() 123 emc->debugfs.min_rate = rate; in tegra186_emc_debug_min_rate_set() 136 *rate = emc->debugfs.max_rate; in tegra186_emc_debug_max_rate_get() 153 emc->debugfs.max_rate = rate; in tegra186_emc_debug_max_rate_set() 206 emc->debugfs.min_rate = ULONG_MAX; in tegra186_emc_probe() 207 emc->debugfs.max_rate = 0; in tegra186_emc_probe() 224 if (emc->dvfs[i].rate < emc->debugfs.min_rate) in tegra186_emc_probe() 225 emc->debugfs.min_rate = emc->dvfs[i].rate; in tegra186_emc_probe() 227 if (emc->dvfs[i].rate > emc->debugfs.max_rate) in tegra186_emc_probe() [all …]
|
D | tegra20-emc.c | 213 } debugfs; member 863 *rate = emc->debugfs.min_rate; in tegra_emc_debug_min_rate_get() 880 emc->debugfs.min_rate = rate; in tegra_emc_debug_min_rate_set() 893 *rate = emc->debugfs.max_rate; in tegra_emc_debug_max_rate_get() 910 emc->debugfs.max_rate = rate; in tegra_emc_debug_max_rate_set() 925 emc->debugfs.min_rate = ULONG_MAX; in tegra_emc_debugfs_init() 926 emc->debugfs.max_rate = 0; in tegra_emc_debugfs_init() 929 if (emc->timings[i].rate < emc->debugfs.min_rate) in tegra_emc_debugfs_init() 930 emc->debugfs.min_rate = emc->timings[i].rate; in tegra_emc_debugfs_init() 932 if (emc->timings[i].rate > emc->debugfs.max_rate) in tegra_emc_debugfs_init() [all …]
|
D | tegra124-emc.c | 502 } debugfs; member 1185 *rate = emc->debugfs.min_rate; in tegra_emc_debug_min_rate_get() 1202 emc->debugfs.min_rate = rate; in tegra_emc_debug_min_rate_set() 1215 *rate = emc->debugfs.max_rate; in tegra_emc_debug_max_rate_get() 1232 emc->debugfs.max_rate = rate; in tegra_emc_debug_max_rate_set() 1246 emc->debugfs.min_rate = ULONG_MAX; in emc_debugfs_init() 1247 emc->debugfs.max_rate = 0; in emc_debugfs_init() 1250 if (emc->timings[i].rate < emc->debugfs.min_rate) in emc_debugfs_init() 1251 emc->debugfs.min_rate = emc->timings[i].rate; in emc_debugfs_init() 1253 if (emc->timings[i].rate > emc->debugfs.max_rate) in emc_debugfs_init() [all …]
|
D | tegra210-emc-core.c | 620 if (!emc->debugfs.temperature) in tegra210_emc_poll_refresh() 623 temperature = emc->debugfs.temperature; in tegra210_emc_poll_refresh() 1643 *rate = emc->debugfs.min_rate; in tegra210_emc_debug_min_rate_get() 1660 emc->debugfs.min_rate = rate; in tegra210_emc_debug_min_rate_set() 1673 *rate = emc->debugfs.max_rate; in tegra210_emc_debug_max_rate_get() 1690 emc->debugfs.max_rate = rate; in tegra210_emc_debug_max_rate_set() 1704 if (!emc->debugfs.temperature) in tegra210_emc_debug_temperature_get() 1707 value = emc->debugfs.temperature; in tegra210_emc_debug_temperature_get() 1721 emc->debugfs.temperature = temperature; in tegra210_emc_debug_temperature_set() 1736 emc->debugfs.min_rate = ULONG_MAX; in tegra210_emc_debugfs_init() [all …]
|
/linux-6.1.9/net/bluetooth/ |
D | hci_debugfs.c | 313 debugfs_create_file("features", 0444, hdev->debugfs, hdev, in hci_debugfs_create_common() 315 debugfs_create_u16("manufacturer", 0444, hdev->debugfs, in hci_debugfs_create_common() 317 debugfs_create_u8("hci_version", 0444, hdev->debugfs, &hdev->hci_ver); in hci_debugfs_create_common() 318 debugfs_create_u16("hci_revision", 0444, hdev->debugfs, &hdev->hci_rev); in hci_debugfs_create_common() 319 debugfs_create_u8("hardware_error", 0444, hdev->debugfs, in hci_debugfs_create_common() 321 debugfs_create_file("device_id", 0444, hdev->debugfs, hdev, in hci_debugfs_create_common() 324 debugfs_create_file("device_list", 0444, hdev->debugfs, hdev, in hci_debugfs_create_common() 326 debugfs_create_file("blacklist", 0444, hdev->debugfs, hdev, in hci_debugfs_create_common() 328 debugfs_create_file("blocked_keys", 0444, hdev->debugfs, hdev, in hci_debugfs_create_common() 330 debugfs_create_file("uuids", 0444, hdev->debugfs, hdev, &uuids_fops); in hci_debugfs_create_common() [all …]
|
/linux-6.1.9/net/mac80211/ |
D | debugfs_key.c | 321 debugfs_create_file(#name, 0400, key->debugfs.dir, \ 324 debugfs_create_file(#name, 0600, key->debugfs.dir, \ 333 if (!key->local->debugfs.keys) in ieee80211_debugfs_key_add() 337 key->debugfs.cnt = keycount; in ieee80211_debugfs_key_add() 339 key->debugfs.dir = debugfs_create_dir(buf, in ieee80211_debugfs_key_add() 340 key->local->debugfs.keys); in ieee80211_debugfs_key_add() 346 key->debugfs.stalink = in ieee80211_debugfs_key_add() 347 debugfs_create_symlink("station", key->debugfs.dir, buf); in ieee80211_debugfs_key_add() 369 debugfs_remove_recursive(key->debugfs.dir); in ieee80211_debugfs_key_remove() 370 key->debugfs.dir = NULL; in ieee80211_debugfs_key_remove() [all …]
|
/linux-6.1.9/drivers/gpu/drm/nouveau/ |
D | nouveau_debugfs.c | 75 struct nouveau_debugfs *debugfs = nouveau_debugfs(drm); in nouveau_debugfs_pstate_get() local 76 struct nvif_object *ctrl = &debugfs->ctrl; in nouveau_debugfs_pstate_get() 80 if (!debugfs) in nouveau_debugfs_pstate_get() 146 struct nouveau_debugfs *debugfs = nouveau_debugfs(drm); in nouveau_debugfs_pstate_set() local 147 struct nvif_object *ctrl = &debugfs->ctrl; in nouveau_debugfs_pstate_set() 152 if (!debugfs) in nouveau_debugfs_pstate_set() 258 drm->debugfs = kzalloc(sizeof(*drm->debugfs), GFP_KERNEL); in nouveau_debugfs_init() 259 if (!drm->debugfs) in nouveau_debugfs_init() 264 &drm->debugfs->ctrl); in nouveau_debugfs_init() 270 if (drm->debugfs && drm->debugfs->ctrl.priv) in nouveau_debugfs_fini() [all …]
|
/linux-6.1.9/arch/sh/mm/ |
D | Makefile | 24 debugfs-y := asids-debugfs.o 26 debugfs-$(CONFIG_CPU_SH4) += cache-debugfs.o 30 debugfs-$(CONFIG_CPU_SH4) += tlb-debugfs.o 37 obj-$(CONFIG_DEBUG_FS) += $(debugfs-y)
|
/linux-6.1.9/Documentation/filesystems/ |
D | debugfs.rst | 13 debugfs has no rules at all. Developers can put any information they want 14 there. The debugfs filesystem is also intended to not serve as a stable 17 even debugfs interfaces are best designed with the idea that they will need 22 mount -t debugfs none /sys/kernel/debug 25 The debugfs root directory is accessible only to the root user by 29 Note that the debugfs API is exported GPL-only to modules. 31 Code using debugfs should include <linux/debugfs.h>. Then, the first order 33 debugfs files:: 39 created in the debugfs root. On success, the return value is a struct 43 indication that the kernel has been built without debugfs support and none [all …]
|
/linux-6.1.9/Documentation/translations/zh_CN/admin-guide/mm/damon/ |
D | usage.rst | 31 - *debugfs interface.* 311 debugfs接口 316 ``rm_contexts`` under its debugfs directory, ``<debugfs>/damon/``. 326 # cd <debugfs>/damon 340 # cd <debugfs>/damon 348 # cd <debugfs>/damon 376 # cd <debugfs>/damon 395 用户可以通过读取和写入 ``scheme`` debugfs文件来获得和设置这些方案。读取该文件还可以显示每个 481 # cd <debugfs>/damon 497 # cd <debugfs>/damon [all …]
|
D | start.rst | 37 因为DAMO使用的是DAMON的debugfs接口(详情请参考 :doc:`usage` 中的使用方法) 你应该 38 确保debugfs被挂载。手动挂载它,如下所示:: 40 # mount -t debugfs none /sys/kernel/debug/ 43 debugfs了:: 45 debugfs /sys/kernel/debug debugfs defaults 0 0
|
/linux-6.1.9/Documentation/gpu/amdgpu/ |
D | ras.rst | 6 debugfs (for error injection). 8 RAS debugfs/sysfs Control and Error Injection Interfaces 12 :doc: AMDGPU RAS debugfs control interface 26 RAS EEPROM debugfs Interface 30 :doc: AMDGPU RAS debugfs EEPROM table reset interface 48 The test verifies the RAS feature enabled status and makes sure the necessary sysfs and debugfs fil…
|
/linux-6.1.9/Documentation/fault-injection/ |
D | provoke-crashes.rst | 12 support via debugfs. 16 inserting the module, or through the debugfs interface. 36 These are numerous, and best queried directly from debugfs. Some 46 You can also induce failures by mounting debugfs and writing the type to 47 <debugfs>/provoke-crash/<crashpoint>. E.g.:: 49 mount -t debugfs debugfs /sys/kernel/debug
|
/linux-6.1.9/drivers/misc/cxl/ |
D | debugfs.c | 67 adapter->debugfs = dir; in cxl_debugfs_adapter_add() 77 debugfs_remove_recursive(adapter->debugfs); in cxl_debugfs_adapter_remove() 101 if (!afu->adapter->debugfs) in cxl_debugfs_afu_add() 105 dir = debugfs_create_dir(buf, afu->adapter->debugfs); in cxl_debugfs_afu_add() 106 afu->debugfs = dir; in cxl_debugfs_afu_add() 120 debugfs_remove_recursive(afu->debugfs); in cxl_debugfs_afu_remove()
|
/linux-6.1.9/drivers/hwspinlock/ |
D | sun6i_hwspinlock.c | 33 struct dentry *debugfs; member 51 priv->debugfs = debugfs_create_dir(DRIVER_NAME, NULL); in sun6i_hwspinlock_debugfs_init() 52 debugfs_create_file("supported", 0444, priv->debugfs, priv, &hwlocks_supported_fops); in sun6i_hwspinlock_debugfs_init() 86 debugfs_remove_recursive(priv->debugfs); in sun6i_hwspinlock_disable() 171 if (IS_ERR(priv->debugfs)) in sun6i_hwspinlock_probe() 172 priv->debugfs = NULL; in sun6i_hwspinlock_probe()
|
/linux-6.1.9/drivers/gpu/drm/i915/gvt/ |
D | debugfs.c | 163 vgpu->debugfs = debugfs_create_dir(name, vgpu->gvt->debugfs_root); in intel_gvt_debugfs_add_vgpu() 165 debugfs_create_bool("active", 0444, vgpu->debugfs, &vgpu->active); in intel_gvt_debugfs_add_vgpu() 166 debugfs_create_file("mmio_diff", 0444, vgpu->debugfs, vgpu, in intel_gvt_debugfs_add_vgpu() 168 debugfs_create_file("scan_nonprivbb", 0644, vgpu->debugfs, vgpu, in intel_gvt_debugfs_add_vgpu() 182 debugfs_remove_recursive(vgpu->debugfs); in intel_gvt_debugfs_remove_vgpu() 183 vgpu->debugfs = NULL; in intel_gvt_debugfs_remove_vgpu()
|
/linux-6.1.9/drivers/net/wireless/ti/wl1251/ |
D | debugfs.c | 41 wl->debugfs.name = debugfs_create_file(#name, 0400, parent, \ 46 debugfs_remove(wl->debugfs.name); \ 47 wl->debugfs.name = NULL; \ 73 DEBUGFS_ADD(sub## _ ##name, wl->debugfs.fw_statistics) 431 DEBUGFS_ADD(tx_queue_len, wl->debugfs.rootdir); in wl1251_debugfs_add_files() 432 DEBUGFS_ADD(tx_queue_status, wl->debugfs.rootdir); in wl1251_debugfs_add_files() 433 DEBUGFS_ADD(retry_count, wl->debugfs.rootdir); in wl1251_debugfs_add_files() 434 DEBUGFS_ADD(excessive_retries, wl->debugfs.rootdir); in wl1251_debugfs_add_files() 451 wl->debugfs.rootdir = debugfs_create_dir(KBUILD_MODNAME, NULL); in wl1251_debugfs_init() 453 wl->debugfs.fw_statistics = debugfs_create_dir("fw-statistics", in wl1251_debugfs_init() [all …]
|
/linux-6.1.9/drivers/media/platform/amphion/ |
D | vpu_dbg.c | 409 if (!vpu->debugfs) in vpu_inst_create_dbgfs_file() 412 if (inst->debugfs) in vpu_inst_create_dbgfs_file() 416 inst->debugfs = debugfs_create_file((const char *)name, in vpu_inst_create_dbgfs_file() 418 vpu->debugfs, in vpu_inst_create_dbgfs_file() 430 debugfs_remove(inst->debugfs); in vpu_inst_remove_dbgfs_file() 431 inst->debugfs = NULL; in vpu_inst_remove_dbgfs_file() 445 if (!vpu->debugfs) in vpu_core_create_dbgfs_file() 448 if (!core->debugfs) { in vpu_core_create_dbgfs_file() 450 core->debugfs = debugfs_create_file((const char *)name, in vpu_core_create_dbgfs_file() 452 vpu->debugfs, in vpu_core_create_dbgfs_file() [all …]
|
/linux-6.1.9/Documentation/admin-guide/mm/ |
D | cma_debugfs.rst | 5 The CMA debugfs interface is useful to retrieve basic information out of the 8 Each CMA area represents a directory under <debugfs>/cma/, represented by 11 <debugfs>/cma/<cma_name> 21 echo 5 > <debugfs>/cma/<cma_name>/alloc
|
/linux-6.1.9/drivers/dma/dw-edma/ |
D | dw-edma-v0-debugfs.c | 274 regs_dir = debugfs_create_dir(REGISTERS_STR, dw->debugfs); in dw_edma_debugfs_regs() 295 dw->debugfs = debugfs_create_dir(dw->name, NULL); in dw_edma_v0_debugfs_on() 296 if (!dw->debugfs) in dw_edma_v0_debugfs_on() 299 debugfs_create_u32("mf", 0444, dw->debugfs, &dw->chip->mf); in dw_edma_v0_debugfs_on() 300 debugfs_create_u16("wr_ch_cnt", 0444, dw->debugfs, &dw->wr_ch_cnt); in dw_edma_v0_debugfs_on() 301 debugfs_create_u16("rd_ch_cnt", 0444, dw->debugfs, &dw->rd_ch_cnt); in dw_edma_v0_debugfs_on() 312 debugfs_remove_recursive(dw->debugfs); in dw_edma_v0_debugfs_off() 313 dw->debugfs = NULL; in dw_edma_v0_debugfs_off()
|
/linux-6.1.9/drivers/soundwire/ |
D | debugfs.c | 23 bus->debugfs = debugfs_create_dir(name, sdw_debugfs_root); in sdw_bus_debugfs_init() 28 debugfs_remove_recursive(bus->debugfs); in sdw_bus_debugfs_exit() 127 master = slave->bus->debugfs; in sdw_slave_debugfs_init() 135 slave->debugfs = d; in sdw_slave_debugfs_init() 140 debugfs_remove_recursive(slave->debugfs); in sdw_slave_debugfs_exit()
|
/linux-6.1.9/drivers/video/fbdev/omap2/omapfb/dss/ |
D | Kconfig | 16 appropriate flags in <debugfs>/dynamic_debug/control. 22 This enables debugfs for OMAPDSS at <debugfs>/omapdss. This enables 30 Collect DSS IRQ statistics, printable via debugfs. 33 <debugfs>/omapdss/dispc_irq for DISPC interrupts, and 34 <debugfs>/omapdss/dsi_irq for DSI interrupts.
|
/linux-6.1.9/Documentation/translations/zh_CN/dev-tools/ |
D | gcov.rst | 10 运行时的代码覆盖率数据会以gcov兼容的格式导出到“gcov”debugfs目录中,可 48 代码运行覆盖率数据只在debugfs挂载完成后才可以访问:: 50 mount -t debugfs none /sys/kernel/debug 82 gcov功能需要在debugfs中创建如下文件: 104 模块卸载后这些备份数据在debugfs中会继续存在。 105 一旦这个模块重新加载,模块关联的运行统计会被初始化成debugfs中备份的数据。
|