* [PATCH 1/2] drm/amdgpu: add function to creat all ras debugfs node
@ 2020-03-09 9:12 Stanley.Yang
2020-03-09 9:12 ` [PATCH 2/2] drm/amdgpu: call ras_debugfs_create_all in debugfs_init Stanley.Yang
2020-03-09 15:36 ` [PATCH 1/2] drm/amdgpu: add function to creat all ras debugfs node Alex Deucher
0 siblings, 2 replies; 8+ messages in thread
From: Stanley.Yang @ 2020-03-09 9:12 UTC (permalink / raw)
To: amd-gfx
Cc: Guchun.Chen, Tao Zhou, Stanley . Yang, john.clements, Dennis.Li,
Hawking.Zhang
From: Tao Zhou <tao.zhou1@amd.com>
centralize all debugfs creation in one place for ras
Signed-off-by: Tao Zhou <tao.zhou1@amd.com>
Signed-off-by: Stanley.Yang <Stanley.Yang@amd.com>
Change-Id: I7489ccb41dcf7a11ecc45313ad42940474999d81
---
drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c | 29 +++++++++++++++++++++++++
drivers/gpu/drm/amd/amdgpu/amdgpu_ras.h | 2 ++
2 files changed, 31 insertions(+)
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
index 492960e7d5f0..422cdd1ce3ad 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
@@ -1117,6 +1117,35 @@ void amdgpu_ras_debugfs_create(struct amdgpu_device *adev,
&amdgpu_ras_debugfs_ops);
}
+void amdgpu_ras_debugfs_create_all(struct amdgpu_device *adev)
+{
+ struct amdgpu_ras *con = amdgpu_ras_get_context(adev);
+ struct ras_manager *obj, *tmp;
+ struct ras_fs_if fs_info;
+
+ /*
+ * it won't be called in resume path, no need to check
+ * suspend and gpu reset status
+ */
+ if (!con)
+ return;
+
+ amdgpu_ras_debugfs_create_ctrl_node(adev);
+
+ list_for_each_entry_safe(obj, tmp, &con->head, node) {
+ if (!obj)
+ continue;
+
+ if (amdgpu_ras_is_supported(adev, obj->head.block) &&
+ (obj->attr_inuse == 1)) {
+ sprintf(fs_info.debugfs_name, "%s_err_inject",
+ ras_block_str(obj->head.block));
+ fs_info.head = obj->head;
+ amdgpu_ras_debugfs_create(adev, &fs_info);
+ }
+ }
+}
+
void amdgpu_ras_debugfs_remove(struct amdgpu_device *adev,
struct ras_common_if *head)
{
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.h
index a5fe29a9373e..55c3eceb390d 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.h
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.h
@@ -592,6 +592,8 @@ int amdgpu_ras_sysfs_remove(struct amdgpu_device *adev,
void amdgpu_ras_debugfs_create(struct amdgpu_device *adev,
struct ras_fs_if *head);
+void amdgpu_ras_debugfs_create_all(struct amdgpu_device *adev);
+
void amdgpu_ras_debugfs_remove(struct amdgpu_device *adev,
struct ras_common_if *head);
--
2.17.1
_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH 2/2] drm/amdgpu: call ras_debugfs_create_all in debugfs_init
2020-03-09 9:12 [PATCH 1/2] drm/amdgpu: add function to creat all ras debugfs node Stanley.Yang
@ 2020-03-09 9:12 ` Stanley.Yang
2020-03-09 9:20 ` Chen, Guchun
2020-03-10 13:23 ` Alex Deucher
2020-03-09 15:36 ` [PATCH 1/2] drm/amdgpu: add function to creat all ras debugfs node Alex Deucher
1 sibling, 2 replies; 8+ messages in thread
From: Stanley.Yang @ 2020-03-09 9:12 UTC (permalink / raw)
To: amd-gfx
Cc: Guchun.Chen, Tao Zhou, Stanley . Yang, john.clements, Dennis.Li,
Hawking.Zhang
From: Tao Zhou <tao.zhou1@amd.com>
and remove each ras IP's own debugfs creation
Signed-off-by: Tao Zhou <tao.zhou1@amd.com>
Signed-off-by: Stanley.Yang <Stanley.Yang@amd.com>
Change-Id: If3d16862afa0d97abad183dd6e60478b34029e95
---
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c | 3 +++
drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c | 1 -
drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c | 1 -
drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c | 1 -
drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c | 5 -----
drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c | 1 -
drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c | 1 -
drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c | 1 -
8 files changed, 3 insertions(+), 11 deletions(-)
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c
index deca6343d0cc..1d513e4f9934 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c
@@ -1315,6 +1315,7 @@ DEFINE_SIMPLE_ATTRIBUTE(fops_ib_preempt, NULL,
DEFINE_SIMPLE_ATTRIBUTE(fops_sclk_set, NULL,
amdgpu_debugfs_sclk_set, "%llu\n");
+extern void amdgpu_ras_debugfs_create_all(struct amdgpu_device *adev);
int amdgpu_debugfs_init(struct amdgpu_device *adev)
{
int r, i;
@@ -1387,6 +1388,8 @@ int amdgpu_debugfs_init(struct amdgpu_device *adev)
}
}
+ amdgpu_ras_debugfs_create_all(adev);
+
return amdgpu_debugfs_add_files(adev, amdgpu_debugfs_list,
ARRAY_SIZE(amdgpu_debugfs_list));
}
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c
index 7403588684b3..d12bb4a35780 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c
@@ -565,7 +565,6 @@ int amdgpu_gfx_ras_late_init(struct amdgpu_device *adev)
int r;
struct ras_fs_if fs_info = {
.sysfs_name = "gfx_err_count",
- .debugfs_name = "gfx_err_inject",
};
struct ras_ih_if ih_info = {
.cb = amdgpu_gfx_process_ras_data_cb,
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c
index 676c48c02d77..ead3dc572ec5 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c
@@ -32,7 +32,6 @@ int amdgpu_mmhub_ras_late_init(struct amdgpu_device *adev)
};
struct ras_fs_if fs_info = {
.sysfs_name = "mmhub_err_count",
- .debugfs_name = "mmhub_err_inject",
};
if (!adev->mmhub.ras_if) {
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c
index 7d5c3a9de9ea..6201a5f4b4fa 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c
@@ -30,7 +30,6 @@ int amdgpu_nbio_ras_late_init(struct amdgpu_device *adev)
};
struct ras_fs_if fs_info = {
.sysfs_name = "pcie_bif_err_count",
- .debugfs_name = "pcie_bif_err_inject",
};
if (!adev->nbio.ras_if) {
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
index 422cdd1ce3ad..57af4ea8fb58 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
@@ -1178,7 +1178,6 @@ static void amdgpu_ras_debugfs_remove_all(struct amdgpu_device *adev)
static int amdgpu_ras_fs_init(struct amdgpu_device *adev)
{
amdgpu_ras_sysfs_create_feature_node(adev);
- amdgpu_ras_debugfs_create_ctrl_node(adev);
return 0;
}
@@ -1882,8 +1881,6 @@ int amdgpu_ras_late_init(struct amdgpu_device *adev,
goto interrupt;
}
- amdgpu_ras_debugfs_create(adev, fs_info);
-
r = amdgpu_ras_sysfs_create(adev, fs_info);
if (r)
goto sysfs;
@@ -1892,7 +1889,6 @@ int amdgpu_ras_late_init(struct amdgpu_device *adev,
cleanup:
amdgpu_ras_sysfs_remove(adev, ras_block);
sysfs:
- amdgpu_ras_debugfs_remove(adev, ras_block);
if (ih_info->cb)
amdgpu_ras_interrupt_remove_handler(adev, ih_info);
interrupt:
@@ -1909,7 +1905,6 @@ void amdgpu_ras_late_fini(struct amdgpu_device *adev,
return;
amdgpu_ras_sysfs_remove(adev, ras_block);
- amdgpu_ras_debugfs_remove(adev, ras_block);
if (ih_info->cb)
amdgpu_ras_interrupt_remove_handler(adev, ih_info);
amdgpu_ras_feature_enable(adev, ras_block, 0);
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c
index 7854c053e85d..250a309e4dee 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c
@@ -93,7 +93,6 @@ int amdgpu_sdma_ras_late_init(struct amdgpu_device *adev,
struct ras_ih_if *ih_info = (struct ras_ih_if *)ras_ih_info;
struct ras_fs_if fs_info = {
.sysfs_name = "sdma_err_count",
- .debugfs_name = "sdma_err_inject",
};
if (!ih_info)
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c
index f4d40855147b..9dd51f0d2c11 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c
@@ -28,7 +28,6 @@ int amdgpu_umc_ras_late_init(struct amdgpu_device *adev)
int r;
struct ras_fs_if fs_info = {
.sysfs_name = "umc_err_count",
- .debugfs_name = "umc_err_inject",
};
struct ras_ih_if ih_info = {
.cb = amdgpu_umc_process_ras_data_cb,
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c
index a54ce398ed77..0837f872741b 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c
@@ -598,7 +598,6 @@ int amdgpu_xgmi_ras_late_init(struct amdgpu_device *adev)
};
struct ras_fs_if fs_info = {
.sysfs_name = "xgmi_wafl_err_count",
- .debugfs_name = "xgmi_wafl_err_inject",
};
if (!adev->gmc.xgmi.supported ||
--
2.17.1
_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx
^ permalink raw reply related [flat|nested] 8+ messages in thread
* RE: [PATCH 2/2] drm/amdgpu: call ras_debugfs_create_all in debugfs_init
2020-03-09 9:12 ` [PATCH 2/2] drm/amdgpu: call ras_debugfs_create_all in debugfs_init Stanley.Yang
@ 2020-03-09 9:20 ` Chen, Guchun
2020-03-09 10:15 ` Zhou1, Tao
2020-03-10 13:23 ` Alex Deucher
1 sibling, 1 reply; 8+ messages in thread
From: Chen, Guchun @ 2020-03-09 9:20 UTC (permalink / raw)
To: Yang, Stanley, amd-gfx@lists.freedesktop.org
Cc: Yang, Stanley, Zhou1, Tao, Clements, John, Li, Dennis,
Zhang, Hawking
[AMD Public Use]
Shall we need other codes to remove ras debugfs in debugfs_fini to avoid leak?
Regards,
Guchun
-----Original Message-----
From: Stanley.Yang <Stanley.Yang@amd.com>
Sent: Monday, March 9, 2020 5:12 PM
To: amd-gfx@lists.freedesktop.org
Cc: Zhang, Hawking <Hawking.Zhang@amd.com>; Chen, Guchun <Guchun.Chen@amd.com>; Li, Dennis <Dennis.Li@amd.com>; Clements, John <John.Clements@amd.com>; Zhou1, Tao <Tao.Zhou1@amd.com>; Yang, Stanley <Stanley.Yang@amd.com>
Subject: [PATCH 2/2] drm/amdgpu: call ras_debugfs_create_all in debugfs_init
From: Tao Zhou <tao.zhou1@amd.com>
and remove each ras IP's own debugfs creation
Signed-off-by: Tao Zhou <tao.zhou1@amd.com>
Signed-off-by: Stanley.Yang <Stanley.Yang@amd.com>
Change-Id: If3d16862afa0d97abad183dd6e60478b34029e95
---
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c | 3 +++
drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c | 1 -
drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c | 1 -
drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c | 1 -
drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c | 5 -----
drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c | 1 -
drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c | 1 -
drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c | 1 -
8 files changed, 3 insertions(+), 11 deletions(-)
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c
index deca6343d0cc..1d513e4f9934 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c
@@ -1315,6 +1315,7 @@ DEFINE_SIMPLE_ATTRIBUTE(fops_ib_preempt, NULL, DEFINE_SIMPLE_ATTRIBUTE(fops_sclk_set, NULL,
amdgpu_debugfs_sclk_set, "%llu\n");
+extern void amdgpu_ras_debugfs_create_all(struct amdgpu_device *adev);
int amdgpu_debugfs_init(struct amdgpu_device *adev) {
int r, i;
@@ -1387,6 +1388,8 @@ int amdgpu_debugfs_init(struct amdgpu_device *adev)
}
}
+ amdgpu_ras_debugfs_create_all(adev);
+
return amdgpu_debugfs_add_files(adev, amdgpu_debugfs_list,
ARRAY_SIZE(amdgpu_debugfs_list));
}
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c
index 7403588684b3..d12bb4a35780 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c
@@ -565,7 +565,6 @@ int amdgpu_gfx_ras_late_init(struct amdgpu_device *adev)
int r;
struct ras_fs_if fs_info = {
.sysfs_name = "gfx_err_count",
- .debugfs_name = "gfx_err_inject",
};
struct ras_ih_if ih_info = {
.cb = amdgpu_gfx_process_ras_data_cb, diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c
index 676c48c02d77..ead3dc572ec5 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c
@@ -32,7 +32,6 @@ int amdgpu_mmhub_ras_late_init(struct amdgpu_device *adev)
};
struct ras_fs_if fs_info = {
.sysfs_name = "mmhub_err_count",
- .debugfs_name = "mmhub_err_inject",
};
if (!adev->mmhub.ras_if) {
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c
index 7d5c3a9de9ea..6201a5f4b4fa 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c
@@ -30,7 +30,6 @@ int amdgpu_nbio_ras_late_init(struct amdgpu_device *adev)
};
struct ras_fs_if fs_info = {
.sysfs_name = "pcie_bif_err_count",
- .debugfs_name = "pcie_bif_err_inject",
};
if (!adev->nbio.ras_if) {
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
index 422cdd1ce3ad..57af4ea8fb58 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
@@ -1178,7 +1178,6 @@ static void amdgpu_ras_debugfs_remove_all(struct amdgpu_device *adev) static int amdgpu_ras_fs_init(struct amdgpu_device *adev) {
amdgpu_ras_sysfs_create_feature_node(adev);
- amdgpu_ras_debugfs_create_ctrl_node(adev);
return 0;
}
@@ -1882,8 +1881,6 @@ int amdgpu_ras_late_init(struct amdgpu_device *adev,
goto interrupt;
}
- amdgpu_ras_debugfs_create(adev, fs_info);
-
r = amdgpu_ras_sysfs_create(adev, fs_info);
if (r)
goto sysfs;
@@ -1892,7 +1889,6 @@ int amdgpu_ras_late_init(struct amdgpu_device *adev,
cleanup:
amdgpu_ras_sysfs_remove(adev, ras_block);
sysfs:
- amdgpu_ras_debugfs_remove(adev, ras_block);
if (ih_info->cb)
amdgpu_ras_interrupt_remove_handler(adev, ih_info);
interrupt:
@@ -1909,7 +1905,6 @@ void amdgpu_ras_late_fini(struct amdgpu_device *adev,
return;
amdgpu_ras_sysfs_remove(adev, ras_block);
- amdgpu_ras_debugfs_remove(adev, ras_block);
if (ih_info->cb)
amdgpu_ras_interrupt_remove_handler(adev, ih_info);
amdgpu_ras_feature_enable(adev, ras_block, 0); diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c
index 7854c053e85d..250a309e4dee 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c
@@ -93,7 +93,6 @@ int amdgpu_sdma_ras_late_init(struct amdgpu_device *adev,
struct ras_ih_if *ih_info = (struct ras_ih_if *)ras_ih_info;
struct ras_fs_if fs_info = {
.sysfs_name = "sdma_err_count",
- .debugfs_name = "sdma_err_inject",
};
if (!ih_info)
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c
index f4d40855147b..9dd51f0d2c11 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c
@@ -28,7 +28,6 @@ int amdgpu_umc_ras_late_init(struct amdgpu_device *adev)
int r;
struct ras_fs_if fs_info = {
.sysfs_name = "umc_err_count",
- .debugfs_name = "umc_err_inject",
};
struct ras_ih_if ih_info = {
.cb = amdgpu_umc_process_ras_data_cb, diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c
index a54ce398ed77..0837f872741b 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c
@@ -598,7 +598,6 @@ int amdgpu_xgmi_ras_late_init(struct amdgpu_device *adev)
};
struct ras_fs_if fs_info = {
.sysfs_name = "xgmi_wafl_err_count",
- .debugfs_name = "xgmi_wafl_err_inject",
};
if (!adev->gmc.xgmi.supported ||
--
2.17.1
_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx
^ permalink raw reply related [flat|nested] 8+ messages in thread
* RE: [PATCH 2/2] drm/amdgpu: call ras_debugfs_create_all in debugfs_init
2020-03-09 9:20 ` Chen, Guchun
@ 2020-03-09 10:15 ` Zhou1, Tao
2020-03-10 6:33 ` Chen, Guchun
0 siblings, 1 reply; 8+ messages in thread
From: Zhou1, Tao @ 2020-03-09 10:15 UTC (permalink / raw)
To: Chen, Guchun, Yang, Stanley, amd-gfx@lists.freedesktop.org
Cc: Yang, Stanley, Clements, John, Li, Dennis, Zhang, Hawking
[AMD Public Use]
We already have amdgpu_ras_debugfs_remove and amdgpu_ras_debugfs_remove_all.
In fact, amdgpu_debugfs_fini has been dropped in the patch below, and we are also planning to delete amdgpu_ras_debugfs_remove and amdgpu_ras_debugfs_remove_all.
drm/amdgpu: no need to clean debugfs at amdgpu
drm_minor_unregister will invoke drm_debugfs_cleanup
to clean all the child node under primary minor node.
We don't need to invoke amdgpu_debugfs_fini and
amdgpu_debugfs_regs_cleanup to clean agian.
Otherwise, it will raise the NULL pointer like below.
v2: remove all debugfs cleanup/fini code at amdgpu
Signed-off-by: Yintian Tao <yttao@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Regards,
Tao
> -----Original Message-----
> From: Chen, Guchun <Guchun.Chen@amd.com>
> Sent: 2020年3月9日 17:21
> To: Yang, Stanley <Stanley.Yang@amd.com>; amd-gfx@lists.freedesktop.org
> Cc: Zhang, Hawking <Hawking.Zhang@amd.com>; Li, Dennis
> <Dennis.Li@amd.com>; Clements, John <John.Clements@amd.com>; Zhou1,
> Tao <Tao.Zhou1@amd.com>; Yang, Stanley <Stanley.Yang@amd.com>
> Subject: RE: [PATCH 2/2] drm/amdgpu: call ras_debugfs_create_all in
> debugfs_init
>
> [AMD Public Use]
>
> Shall we need other codes to remove ras debugfs in debugfs_fini to avoid
> leak?
>
> Regards,
> Guchun
>
> -----Original Message-----
> From: Stanley.Yang <Stanley.Yang@amd.com>
> Sent: Monday, March 9, 2020 5:12 PM
> To: amd-gfx@lists.freedesktop.org
> Cc: Zhang, Hawking <Hawking.Zhang@amd.com>; Chen, Guchun
> <Guchun.Chen@amd.com>; Li, Dennis <Dennis.Li@amd.com>; Clements,
> John <John.Clements@amd.com>; Zhou1, Tao <Tao.Zhou1@amd.com>;
> Yang, Stanley <Stanley.Yang@amd.com>
> Subject: [PATCH 2/2] drm/amdgpu: call ras_debugfs_create_all in
> debugfs_init
>
> From: Tao Zhou <tao.zhou1@amd.com>
>
> and remove each ras IP's own debugfs creation
>
> Signed-off-by: Tao Zhou <tao.zhou1@amd.com>
> Signed-off-by: Stanley.Yang <Stanley.Yang@amd.com>
> Change-Id: If3d16862afa0d97abad183dd6e60478b34029e95
> ---
> drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c | 3 +++
> drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c | 1 -
> drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c | 1 -
> drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c | 1 -
> drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c | 5 -----
> drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c | 1 -
> drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c | 1 -
> drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c | 1 -
> 8 files changed, 3 insertions(+), 11 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c
> index deca6343d0cc..1d513e4f9934 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c
> @@ -1315,6 +1315,7 @@ DEFINE_SIMPLE_ATTRIBUTE(fops_ib_preempt,
> NULL, DEFINE_SIMPLE_ATTRIBUTE(fops_sclk_set, NULL,
> amdgpu_debugfs_sclk_set, "%llu\n");
>
> +extern void amdgpu_ras_debugfs_create_all(struct amdgpu_device *adev);
> int amdgpu_debugfs_init(struct amdgpu_device *adev) {
> int r, i;
> @@ -1387,6 +1388,8 @@ int amdgpu_debugfs_init(struct amdgpu_device
> *adev)
> }
> }
>
> + amdgpu_ras_debugfs_create_all(adev);
> +
> return amdgpu_debugfs_add_files(adev, amdgpu_debugfs_list,
> ARRAY_SIZE(amdgpu_debugfs_list));
> }
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c
> index 7403588684b3..d12bb4a35780 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c
> @@ -565,7 +565,6 @@ int amdgpu_gfx_ras_late_init(struct amdgpu_device
> *adev)
> int r;
> struct ras_fs_if fs_info = {
> .sysfs_name = "gfx_err_count",
> - .debugfs_name = "gfx_err_inject",
> };
> struct ras_ih_if ih_info = {
> .cb = amdgpu_gfx_process_ras_data_cb, diff --git
> a/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c
> index 676c48c02d77..ead3dc572ec5 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c
> @@ -32,7 +32,6 @@ int amdgpu_mmhub_ras_late_init(struct
> amdgpu_device *adev)
> };
> struct ras_fs_if fs_info = {
> .sysfs_name = "mmhub_err_count",
> - .debugfs_name = "mmhub_err_inject",
> };
>
> if (!adev->mmhub.ras_if) {
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c
> index 7d5c3a9de9ea..6201a5f4b4fa 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c
> @@ -30,7 +30,6 @@ int amdgpu_nbio_ras_late_init(struct amdgpu_device
> *adev)
> };
> struct ras_fs_if fs_info = {
> .sysfs_name = "pcie_bif_err_count",
> - .debugfs_name = "pcie_bif_err_inject",
> };
>
> if (!adev->nbio.ras_if) {
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
> index 422cdd1ce3ad..57af4ea8fb58 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
> @@ -1178,7 +1178,6 @@ static void
> amdgpu_ras_debugfs_remove_all(struct amdgpu_device *adev) static int
> amdgpu_ras_fs_init(struct amdgpu_device *adev) {
> amdgpu_ras_sysfs_create_feature_node(adev);
> - amdgpu_ras_debugfs_create_ctrl_node(adev);
>
> return 0;
> }
> @@ -1882,8 +1881,6 @@ int amdgpu_ras_late_init(struct amdgpu_device
> *adev,
> goto interrupt;
> }
>
> - amdgpu_ras_debugfs_create(adev, fs_info);
> -
> r = amdgpu_ras_sysfs_create(adev, fs_info);
> if (r)
> goto sysfs;
> @@ -1892,7 +1889,6 @@ int amdgpu_ras_late_init(struct amdgpu_device
> *adev,
> cleanup:
> amdgpu_ras_sysfs_remove(adev, ras_block);
> sysfs:
> - amdgpu_ras_debugfs_remove(adev, ras_block);
> if (ih_info->cb)
> amdgpu_ras_interrupt_remove_handler(adev, ih_info);
> interrupt:
> @@ -1909,7 +1905,6 @@ void amdgpu_ras_late_fini(struct amdgpu_device
> *adev,
> return;
>
> amdgpu_ras_sysfs_remove(adev, ras_block);
> - amdgpu_ras_debugfs_remove(adev, ras_block);
> if (ih_info->cb)
> amdgpu_ras_interrupt_remove_handler(adev, ih_info);
> amdgpu_ras_feature_enable(adev, ras_block, 0); diff --git
> a/drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c
> index 7854c053e85d..250a309e4dee 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c
> @@ -93,7 +93,6 @@ int amdgpu_sdma_ras_late_init(struct amdgpu_device
> *adev,
> struct ras_ih_if *ih_info = (struct ras_ih_if *)ras_ih_info;
> struct ras_fs_if fs_info = {
> .sysfs_name = "sdma_err_count",
> - .debugfs_name = "sdma_err_inject",
> };
>
> if (!ih_info)
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c
> index f4d40855147b..9dd51f0d2c11 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c
> @@ -28,7 +28,6 @@ int amdgpu_umc_ras_late_init(struct amdgpu_device
> *adev)
> int r;
> struct ras_fs_if fs_info = {
> .sysfs_name = "umc_err_count",
> - .debugfs_name = "umc_err_inject",
> };
> struct ras_ih_if ih_info = {
> .cb = amdgpu_umc_process_ras_data_cb, diff --git
> a/drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c
> index a54ce398ed77..0837f872741b 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c
> @@ -598,7 +598,6 @@ int amdgpu_xgmi_ras_late_init(struct
> amdgpu_device *adev)
> };
> struct ras_fs_if fs_info = {
> .sysfs_name = "xgmi_wafl_err_count",
> - .debugfs_name = "xgmi_wafl_err_inject",
> };
>
> if (!adev->gmc.xgmi.supported ||
> --
> 2.17.1
_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 1/2] drm/amdgpu: add function to creat all ras debugfs node
2020-03-09 9:12 [PATCH 1/2] drm/amdgpu: add function to creat all ras debugfs node Stanley.Yang
2020-03-09 9:12 ` [PATCH 2/2] drm/amdgpu: call ras_debugfs_create_all in debugfs_init Stanley.Yang
@ 2020-03-09 15:36 ` Alex Deucher
1 sibling, 0 replies; 8+ messages in thread
From: Alex Deucher @ 2020-03-09 15:36 UTC (permalink / raw)
To: Stanley.Yang
Cc: Chen, Guchun, Tao Zhou, amd-gfx list, John Clements, Dennis Li,
Hawking Zhang
On Mon, Mar 9, 2020 at 5:12 AM Stanley.Yang <Stanley.Yang@amd.com> wrote:
>
> From: Tao Zhou <tao.zhou1@amd.com>
>
> centralize all debugfs creation in one place for ras
Might want to note that this is required to fix ras when the driver
does not use the drm load and unload callbacks due to ordering issues
with the drm device node. With that added:
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
>
> Signed-off-by: Tao Zhou <tao.zhou1@amd.com>
> Signed-off-by: Stanley.Yang <Stanley.Yang@amd.com>
> Change-Id: I7489ccb41dcf7a11ecc45313ad42940474999d81
> ---
> drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c | 29 +++++++++++++++++++++++++
> drivers/gpu/drm/amd/amdgpu/amdgpu_ras.h | 2 ++
> 2 files changed, 31 insertions(+)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
> index 492960e7d5f0..422cdd1ce3ad 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
> @@ -1117,6 +1117,35 @@ void amdgpu_ras_debugfs_create(struct amdgpu_device *adev,
> &amdgpu_ras_debugfs_ops);
> }
>
> +void amdgpu_ras_debugfs_create_all(struct amdgpu_device *adev)
> +{
> + struct amdgpu_ras *con = amdgpu_ras_get_context(adev);
> + struct ras_manager *obj, *tmp;
> + struct ras_fs_if fs_info;
> +
> + /*
> + * it won't be called in resume path, no need to check
> + * suspend and gpu reset status
> + */
> + if (!con)
> + return;
> +
> + amdgpu_ras_debugfs_create_ctrl_node(adev);
> +
> + list_for_each_entry_safe(obj, tmp, &con->head, node) {
> + if (!obj)
> + continue;
> +
> + if (amdgpu_ras_is_supported(adev, obj->head.block) &&
> + (obj->attr_inuse == 1)) {
> + sprintf(fs_info.debugfs_name, "%s_err_inject",
> + ras_block_str(obj->head.block));
> + fs_info.head = obj->head;
> + amdgpu_ras_debugfs_create(adev, &fs_info);
> + }
> + }
> +}
> +
> void amdgpu_ras_debugfs_remove(struct amdgpu_device *adev,
> struct ras_common_if *head)
> {
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.h
> index a5fe29a9373e..55c3eceb390d 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.h
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.h
> @@ -592,6 +592,8 @@ int amdgpu_ras_sysfs_remove(struct amdgpu_device *adev,
> void amdgpu_ras_debugfs_create(struct amdgpu_device *adev,
> struct ras_fs_if *head);
>
> +void amdgpu_ras_debugfs_create_all(struct amdgpu_device *adev);
> +
> void amdgpu_ras_debugfs_remove(struct amdgpu_device *adev,
> struct ras_common_if *head);
>
> --
> 2.17.1
>
> _______________________________________________
> amd-gfx mailing list
> amd-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/amd-gfx
_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx
^ permalink raw reply [flat|nested] 8+ messages in thread
* RE: [PATCH 2/2] drm/amdgpu: call ras_debugfs_create_all in debugfs_init
2020-03-09 10:15 ` Zhou1, Tao
@ 2020-03-10 6:33 ` Chen, Guchun
0 siblings, 0 replies; 8+ messages in thread
From: Chen, Guchun @ 2020-03-10 6:33 UTC (permalink / raw)
To: Zhou1, Tao, Yang, Stanley, amd-gfx@lists.freedesktop.org
Cc: Yang, Stanley, Clements, John, Li, Dennis, Zhang, Hawking
[AMD Public Use]
That's fine. These two patches are:
Reviewed-by: Guchun Chen <guchun.chen@amd.com>
Regards,
Guchun
-----Original Message-----
From: Zhou1, Tao <Tao.Zhou1@amd.com>
Sent: Monday, March 9, 2020 6:15 PM
To: Chen, Guchun <Guchun.Chen@amd.com>; Yang, Stanley <Stanley.Yang@amd.com>; amd-gfx@lists.freedesktop.org
Cc: Zhang, Hawking <Hawking.Zhang@amd.com>; Li, Dennis <Dennis.Li@amd.com>; Clements, John <John.Clements@amd.com>; Yang, Stanley <Stanley.Yang@amd.com>
Subject: RE: [PATCH 2/2] drm/amdgpu: call ras_debugfs_create_all in debugfs_init
[AMD Public Use]
We already have amdgpu_ras_debugfs_remove and amdgpu_ras_debugfs_remove_all.
In fact, amdgpu_debugfs_fini has been dropped in the patch below, and we are also planning to delete amdgpu_ras_debugfs_remove and amdgpu_ras_debugfs_remove_all.
drm/amdgpu: no need to clean debugfs at amdgpu
drm_minor_unregister will invoke drm_debugfs_cleanup to clean all the child node under primary minor node.
We don't need to invoke amdgpu_debugfs_fini and amdgpu_debugfs_regs_cleanup to clean agian.
Otherwise, it will raise the NULL pointer like below.
v2: remove all debugfs cleanup/fini code at amdgpu
Signed-off-by: Yintian Tao <yttao@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Regards,
Tao
> -----Original Message-----
> From: Chen, Guchun <Guchun.Chen@amd.com>
> Sent: 2020年3月9日 17:21
> To: Yang, Stanley <Stanley.Yang@amd.com>;
> amd-gfx@lists.freedesktop.org
> Cc: Zhang, Hawking <Hawking.Zhang@amd.com>; Li, Dennis
> <Dennis.Li@amd.com>; Clements, John <John.Clements@amd.com>; Zhou1,
> Tao <Tao.Zhou1@amd.com>; Yang, Stanley <Stanley.Yang@amd.com>
> Subject: RE: [PATCH 2/2] drm/amdgpu: call ras_debugfs_create_all in
> debugfs_init
>
> [AMD Public Use]
>
> Shall we need other codes to remove ras debugfs in debugfs_fini to
> avoid leak?
>
> Regards,
> Guchun
>
> -----Original Message-----
> From: Stanley.Yang <Stanley.Yang@amd.com>
> Sent: Monday, March 9, 2020 5:12 PM
> To: amd-gfx@lists.freedesktop.org
> Cc: Zhang, Hawking <Hawking.Zhang@amd.com>; Chen, Guchun
> <Guchun.Chen@amd.com>; Li, Dennis <Dennis.Li@amd.com>; Clements, John
> <John.Clements@amd.com>; Zhou1, Tao <Tao.Zhou1@amd.com>; Yang, Stanley
> <Stanley.Yang@amd.com>
> Subject: [PATCH 2/2] drm/amdgpu: call ras_debugfs_create_all in
> debugfs_init
>
> From: Tao Zhou <tao.zhou1@amd.com>
>
> and remove each ras IP's own debugfs creation
>
> Signed-off-by: Tao Zhou <tao.zhou1@amd.com>
> Signed-off-by: Stanley.Yang <Stanley.Yang@amd.com>
> Change-Id: If3d16862afa0d97abad183dd6e60478b34029e95
> ---
> drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c | 3 +++
> drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c | 1 -
> drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c | 1 -
> drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c | 1 -
> drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c | 5 -----
> drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c | 1 -
> drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c | 1 -
> drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c | 1 -
> 8 files changed, 3 insertions(+), 11 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c
> index deca6343d0cc..1d513e4f9934 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c
> @@ -1315,6 +1315,7 @@ DEFINE_SIMPLE_ATTRIBUTE(fops_ib_preempt,
> NULL, DEFINE_SIMPLE_ATTRIBUTE(fops_sclk_set, NULL,
> amdgpu_debugfs_sclk_set, "%llu\n");
>
> +extern void amdgpu_ras_debugfs_create_all(struct amdgpu_device
> +*adev);
> int amdgpu_debugfs_init(struct amdgpu_device *adev) {
> int r, i;
> @@ -1387,6 +1388,8 @@ int amdgpu_debugfs_init(struct amdgpu_device
> *adev)
> }
> }
>
> + amdgpu_ras_debugfs_create_all(adev);
> +
> return amdgpu_debugfs_add_files(adev, amdgpu_debugfs_list,
> ARRAY_SIZE(amdgpu_debugfs_list)); } diff --git
> a/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c
> index 7403588684b3..d12bb4a35780 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c
> @@ -565,7 +565,6 @@ int amdgpu_gfx_ras_late_init(struct amdgpu_device
> *adev)
> int r;
> struct ras_fs_if fs_info = {
> .sysfs_name = "gfx_err_count",
> - .debugfs_name = "gfx_err_inject",
> };
> struct ras_ih_if ih_info = {
> .cb = amdgpu_gfx_process_ras_data_cb, diff --git
> a/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c
> index 676c48c02d77..ead3dc572ec5 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c
> @@ -32,7 +32,6 @@ int amdgpu_mmhub_ras_late_init(struct amdgpu_device
> *adev)
> };
> struct ras_fs_if fs_info = {
> .sysfs_name = "mmhub_err_count",
> - .debugfs_name = "mmhub_err_inject",
> };
>
> if (!adev->mmhub.ras_if) {
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c
> index 7d5c3a9de9ea..6201a5f4b4fa 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c
> @@ -30,7 +30,6 @@ int amdgpu_nbio_ras_late_init(struct amdgpu_device
> *adev)
> };
> struct ras_fs_if fs_info = {
> .sysfs_name = "pcie_bif_err_count",
> - .debugfs_name = "pcie_bif_err_inject",
> };
>
> if (!adev->nbio.ras_if) {
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
> index 422cdd1ce3ad..57af4ea8fb58 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
> @@ -1178,7 +1178,6 @@ static void
> amdgpu_ras_debugfs_remove_all(struct amdgpu_device *adev) static int
> amdgpu_ras_fs_init(struct amdgpu_device *adev) {
> amdgpu_ras_sysfs_create_feature_node(adev);
> - amdgpu_ras_debugfs_create_ctrl_node(adev);
>
> return 0;
> }
> @@ -1882,8 +1881,6 @@ int amdgpu_ras_late_init(struct amdgpu_device
> *adev,
> goto interrupt;
> }
>
> - amdgpu_ras_debugfs_create(adev, fs_info);
> -
> r = amdgpu_ras_sysfs_create(adev, fs_info);
> if (r)
> goto sysfs;
> @@ -1892,7 +1889,6 @@ int amdgpu_ras_late_init(struct amdgpu_device
> *adev,
> cleanup:
> amdgpu_ras_sysfs_remove(adev, ras_block);
> sysfs:
> - amdgpu_ras_debugfs_remove(adev, ras_block);
> if (ih_info->cb)
> amdgpu_ras_interrupt_remove_handler(adev, ih_info);
> interrupt:
> @@ -1909,7 +1905,6 @@ void amdgpu_ras_late_fini(struct amdgpu_device
> *adev,
> return;
>
> amdgpu_ras_sysfs_remove(adev, ras_block);
> - amdgpu_ras_debugfs_remove(adev, ras_block);
> if (ih_info->cb)
> amdgpu_ras_interrupt_remove_handler(adev, ih_info);
> amdgpu_ras_feature_enable(adev, ras_block, 0); diff --git
> a/drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c
> index 7854c053e85d..250a309e4dee 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c
> @@ -93,7 +93,6 @@ int amdgpu_sdma_ras_late_init(struct amdgpu_device
> *adev,
> struct ras_ih_if *ih_info = (struct ras_ih_if *)ras_ih_info;
> struct ras_fs_if fs_info = {
> .sysfs_name = "sdma_err_count",
> - .debugfs_name = "sdma_err_inject",
> };
>
> if (!ih_info)
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c
> index f4d40855147b..9dd51f0d2c11 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c
> @@ -28,7 +28,6 @@ int amdgpu_umc_ras_late_init(struct amdgpu_device
> *adev)
> int r;
> struct ras_fs_if fs_info = {
> .sysfs_name = "umc_err_count",
> - .debugfs_name = "umc_err_inject",
> };
> struct ras_ih_if ih_info = {
> .cb = amdgpu_umc_process_ras_data_cb, diff --git
> a/drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c
> index a54ce398ed77..0837f872741b 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c
> @@ -598,7 +598,6 @@ int amdgpu_xgmi_ras_late_init(struct amdgpu_device
> *adev)
> };
> struct ras_fs_if fs_info = {
> .sysfs_name = "xgmi_wafl_err_count",
> - .debugfs_name = "xgmi_wafl_err_inject",
> };
>
> if (!adev->gmc.xgmi.supported ||
> --
> 2.17.1
_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 2/2] drm/amdgpu: call ras_debugfs_create_all in debugfs_init
2020-03-09 9:12 ` [PATCH 2/2] drm/amdgpu: call ras_debugfs_create_all in debugfs_init Stanley.Yang
2020-03-09 9:20 ` Chen, Guchun
@ 2020-03-10 13:23 ` Alex Deucher
2020-03-11 1:57 ` Yang, Stanley
1 sibling, 1 reply; 8+ messages in thread
From: Alex Deucher @ 2020-03-10 13:23 UTC (permalink / raw)
To: Stanley.Yang
Cc: Chen, Guchun, Tao Zhou, amd-gfx list, John Clements, Dennis Li,
Hawking Zhang
On Mon, Mar 9, 2020 at 5:12 AM Stanley.Yang <Stanley.Yang@amd.com> wrote:
>
> From: Tao Zhou <tao.zhou1@amd.com>
>
> and remove each ras IP's own debugfs creation
>
> Signed-off-by: Tao Zhou <tao.zhou1@amd.com>
> Signed-off-by: Stanley.Yang <Stanley.Yang@amd.com>
> Change-Id: If3d16862afa0d97abad183dd6e60478b34029e95
> ---
> drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c | 3 +++
> drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c | 1 -
> drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c | 1 -
> drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c | 1 -
> drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c | 5 -----
> drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c | 1 -
> drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c | 1 -
> drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c | 1 -
> 8 files changed, 3 insertions(+), 11 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c
> index deca6343d0cc..1d513e4f9934 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c
> @@ -1315,6 +1315,7 @@ DEFINE_SIMPLE_ATTRIBUTE(fops_ib_preempt, NULL,
> DEFINE_SIMPLE_ATTRIBUTE(fops_sclk_set, NULL,
> amdgpu_debugfs_sclk_set, "%llu\n");
>
> +extern void amdgpu_ras_debugfs_create_all(struct amdgpu_device *adev);
Can we put this in amdgpu_ras.h and include that instead?
> int amdgpu_debugfs_init(struct amdgpu_device *adev)
> {
> int r, i;
> @@ -1387,6 +1388,8 @@ int amdgpu_debugfs_init(struct amdgpu_device *adev)
> }
> }
>
> + amdgpu_ras_debugfs_create_all(adev);
> +
> return amdgpu_debugfs_add_files(adev, amdgpu_debugfs_list,
> ARRAY_SIZE(amdgpu_debugfs_list));
> }
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c
> index 7403588684b3..d12bb4a35780 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c
> @@ -565,7 +565,6 @@ int amdgpu_gfx_ras_late_init(struct amdgpu_device *adev)
> int r;
> struct ras_fs_if fs_info = {
> .sysfs_name = "gfx_err_count",
> - .debugfs_name = "gfx_err_inject",
> };
> struct ras_ih_if ih_info = {
> .cb = amdgpu_gfx_process_ras_data_cb,
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c
> index 676c48c02d77..ead3dc572ec5 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c
> @@ -32,7 +32,6 @@ int amdgpu_mmhub_ras_late_init(struct amdgpu_device *adev)
> };
> struct ras_fs_if fs_info = {
> .sysfs_name = "mmhub_err_count",
> - .debugfs_name = "mmhub_err_inject",
> };
>
> if (!adev->mmhub.ras_if) {
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c
> index 7d5c3a9de9ea..6201a5f4b4fa 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c
> @@ -30,7 +30,6 @@ int amdgpu_nbio_ras_late_init(struct amdgpu_device *adev)
> };
> struct ras_fs_if fs_info = {
> .sysfs_name = "pcie_bif_err_count",
> - .debugfs_name = "pcie_bif_err_inject",
> };
>
> if (!adev->nbio.ras_if) {
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
> index 422cdd1ce3ad..57af4ea8fb58 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
> @@ -1178,7 +1178,6 @@ static void amdgpu_ras_debugfs_remove_all(struct amdgpu_device *adev)
> static int amdgpu_ras_fs_init(struct amdgpu_device *adev)
> {
> amdgpu_ras_sysfs_create_feature_node(adev);
> - amdgpu_ras_debugfs_create_ctrl_node(adev);
>
> return 0;
> }
> @@ -1882,8 +1881,6 @@ int amdgpu_ras_late_init(struct amdgpu_device *adev,
> goto interrupt;
> }
>
> - amdgpu_ras_debugfs_create(adev, fs_info);
> -
> r = amdgpu_ras_sysfs_create(adev, fs_info);
> if (r)
> goto sysfs;
> @@ -1892,7 +1889,6 @@ int amdgpu_ras_late_init(struct amdgpu_device *adev,
> cleanup:
> amdgpu_ras_sysfs_remove(adev, ras_block);
> sysfs:
> - amdgpu_ras_debugfs_remove(adev, ras_block);
> if (ih_info->cb)
> amdgpu_ras_interrupt_remove_handler(adev, ih_info);
> interrupt:
> @@ -1909,7 +1905,6 @@ void amdgpu_ras_late_fini(struct amdgpu_device *adev,
> return;
>
> amdgpu_ras_sysfs_remove(adev, ras_block);
> - amdgpu_ras_debugfs_remove(adev, ras_block);
> if (ih_info->cb)
> amdgpu_ras_interrupt_remove_handler(adev, ih_info);
> amdgpu_ras_feature_enable(adev, ras_block, 0);
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c
> index 7854c053e85d..250a309e4dee 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c
> @@ -93,7 +93,6 @@ int amdgpu_sdma_ras_late_init(struct amdgpu_device *adev,
> struct ras_ih_if *ih_info = (struct ras_ih_if *)ras_ih_info;
> struct ras_fs_if fs_info = {
> .sysfs_name = "sdma_err_count",
> - .debugfs_name = "sdma_err_inject",
> };
>
> if (!ih_info)
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c
> index f4d40855147b..9dd51f0d2c11 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c
> @@ -28,7 +28,6 @@ int amdgpu_umc_ras_late_init(struct amdgpu_device *adev)
> int r;
> struct ras_fs_if fs_info = {
> .sysfs_name = "umc_err_count",
> - .debugfs_name = "umc_err_inject",
> };
> struct ras_ih_if ih_info = {
> .cb = amdgpu_umc_process_ras_data_cb,
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c
> index a54ce398ed77..0837f872741b 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c
> @@ -598,7 +598,6 @@ int amdgpu_xgmi_ras_late_init(struct amdgpu_device *adev)
> };
> struct ras_fs_if fs_info = {
> .sysfs_name = "xgmi_wafl_err_count",
> - .debugfs_name = "xgmi_wafl_err_inject",
> };
>
> if (!adev->gmc.xgmi.supported ||
> --
> 2.17.1
>
> _______________________________________________
> amd-gfx mailing list
> amd-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/amd-gfx
_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx
^ permalink raw reply [flat|nested] 8+ messages in thread
* RE: [PATCH 2/2] drm/amdgpu: call ras_debugfs_create_all in debugfs_init
2020-03-10 13:23 ` Alex Deucher
@ 2020-03-11 1:57 ` Yang, Stanley
0 siblings, 0 replies; 8+ messages in thread
From: Yang, Stanley @ 2020-03-11 1:57 UTC (permalink / raw)
To: Alex Deucher
Cc: Chen, Guchun, Zhou1, Tao, amd-gfx list, Clements, John,
Li, Dennis, Zhang, Hawking
[AMD Official Use Only - Internal Distribution Only]
Hi Alex,
I will send another patch to make this change, because this patch is been pushed to branch.
Regards,
Stanley
-----Original Message-----
From: Alex Deucher <alexdeucher@gmail.com>
Sent: Tuesday, March 10, 2020 9:23 PM
To: Yang, Stanley <Stanley.Yang@amd.com>
Cc: amd-gfx list <amd-gfx@lists.freedesktop.org>; Chen, Guchun <Guchun.Chen@amd.com>; Zhou1, Tao <Tao.Zhou1@amd.com>; Clements, John <John.Clements@amd.com>; Li, Dennis <Dennis.Li@amd.com>; Zhang, Hawking <Hawking.Zhang@amd.com>
Subject: Re: [PATCH 2/2] drm/amdgpu: call ras_debugfs_create_all in debugfs_init
On Mon, Mar 9, 2020 at 5:12 AM Stanley.Yang <Stanley.Yang@amd.com> wrote:
>
> From: Tao Zhou <tao.zhou1@amd.com>
>
> and remove each ras IP's own debugfs creation
>
> Signed-off-by: Tao Zhou <tao.zhou1@amd.com>
> Signed-off-by: Stanley.Yang <Stanley.Yang@amd.com>
> Change-Id: If3d16862afa0d97abad183dd6e60478b34029e95
> ---
> drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c | 3 +++
> drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c | 1 -
> drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c | 1 -
> drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c | 1 -
> drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c | 5 -----
> drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c | 1 -
> drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c | 1 -
> drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c | 1 -
> 8 files changed, 3 insertions(+), 11 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c
> index deca6343d0cc..1d513e4f9934 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c
> @@ -1315,6 +1315,7 @@ DEFINE_SIMPLE_ATTRIBUTE(fops_ib_preempt, NULL,
> DEFINE_SIMPLE_ATTRIBUTE(fops_sclk_set, NULL,
> amdgpu_debugfs_sclk_set, "%llu\n");
>
> +extern void amdgpu_ras_debugfs_create_all(struct amdgpu_device
> +*adev);
Can we put this in amdgpu_ras.h and include that instead?
> int amdgpu_debugfs_init(struct amdgpu_device *adev) {
> int r, i;
> @@ -1387,6 +1388,8 @@ int amdgpu_debugfs_init(struct amdgpu_device *adev)
> }
> }
>
> + amdgpu_ras_debugfs_create_all(adev);
> +
> return amdgpu_debugfs_add_files(adev, amdgpu_debugfs_list,
>
> ARRAY_SIZE(amdgpu_debugfs_list)); } diff --git
> a/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c
> index 7403588684b3..d12bb4a35780 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c
> @@ -565,7 +565,6 @@ int amdgpu_gfx_ras_late_init(struct amdgpu_device *adev)
> int r;
> struct ras_fs_if fs_info = {
> .sysfs_name = "gfx_err_count",
> - .debugfs_name = "gfx_err_inject",
> };
> struct ras_ih_if ih_info = {
> .cb = amdgpu_gfx_process_ras_data_cb, diff --git
> a/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c
> index 676c48c02d77..ead3dc572ec5 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c
> @@ -32,7 +32,6 @@ int amdgpu_mmhub_ras_late_init(struct amdgpu_device *adev)
> };
> struct ras_fs_if fs_info = {
> .sysfs_name = "mmhub_err_count",
> - .debugfs_name = "mmhub_err_inject",
> };
>
> if (!adev->mmhub.ras_if) {
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c
> index 7d5c3a9de9ea..6201a5f4b4fa 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c
> @@ -30,7 +30,6 @@ int amdgpu_nbio_ras_late_init(struct amdgpu_device *adev)
> };
> struct ras_fs_if fs_info = {
> .sysfs_name = "pcie_bif_err_count",
> - .debugfs_name = "pcie_bif_err_inject",
> };
>
> if (!adev->nbio.ras_if) {
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
> index 422cdd1ce3ad..57af4ea8fb58 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
> @@ -1178,7 +1178,6 @@ static void amdgpu_ras_debugfs_remove_all(struct
> amdgpu_device *adev) static int amdgpu_ras_fs_init(struct
> amdgpu_device *adev) {
> amdgpu_ras_sysfs_create_feature_node(adev);
> - amdgpu_ras_debugfs_create_ctrl_node(adev);
>
> return 0;
> }
> @@ -1882,8 +1881,6 @@ int amdgpu_ras_late_init(struct amdgpu_device *adev,
> goto interrupt;
> }
>
> - amdgpu_ras_debugfs_create(adev, fs_info);
> -
> r = amdgpu_ras_sysfs_create(adev, fs_info);
> if (r)
> goto sysfs;
> @@ -1892,7 +1889,6 @@ int amdgpu_ras_late_init(struct amdgpu_device
> *adev,
> cleanup:
> amdgpu_ras_sysfs_remove(adev, ras_block);
> sysfs:
> - amdgpu_ras_debugfs_remove(adev, ras_block);
> if (ih_info->cb)
> amdgpu_ras_interrupt_remove_handler(adev, ih_info);
> interrupt:
> @@ -1909,7 +1905,6 @@ void amdgpu_ras_late_fini(struct amdgpu_device *adev,
> return;
>
> amdgpu_ras_sysfs_remove(adev, ras_block);
> - amdgpu_ras_debugfs_remove(adev, ras_block);
> if (ih_info->cb)
> amdgpu_ras_interrupt_remove_handler(adev, ih_info);
> amdgpu_ras_feature_enable(adev, ras_block, 0); diff --git
> a/drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c
> index 7854c053e85d..250a309e4dee 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c
> @@ -93,7 +93,6 @@ int amdgpu_sdma_ras_late_init(struct amdgpu_device *adev,
> struct ras_ih_if *ih_info = (struct ras_ih_if *)ras_ih_info;
> struct ras_fs_if fs_info = {
> .sysfs_name = "sdma_err_count",
> - .debugfs_name = "sdma_err_inject",
> };
>
> if (!ih_info)
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c
> index f4d40855147b..9dd51f0d2c11 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c
> @@ -28,7 +28,6 @@ int amdgpu_umc_ras_late_init(struct amdgpu_device *adev)
> int r;
> struct ras_fs_if fs_info = {
> .sysfs_name = "umc_err_count",
> - .debugfs_name = "umc_err_inject",
> };
> struct ras_ih_if ih_info = {
> .cb = amdgpu_umc_process_ras_data_cb, diff --git
> a/drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c
> index a54ce398ed77..0837f872741b 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c
> @@ -598,7 +598,6 @@ int amdgpu_xgmi_ras_late_init(struct amdgpu_device *adev)
> };
> struct ras_fs_if fs_info = {
> .sysfs_name = "xgmi_wafl_err_count",
> - .debugfs_name = "xgmi_wafl_err_inject",
> };
>
> if (!adev->gmc.xgmi.supported ||
> --
> 2.17.1
>
> _______________________________________________
> amd-gfx mailing list
> amd-gfx@lists.freedesktop.org
> https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Flist
> s.freedesktop.org%2Fmailman%2Flistinfo%2Famd-gfx&data=02%7C01%7CSt
> anley.Yang%40amd.com%7C7bcd4010164046f818d408d7c4f63e27%7C3dd8961fe488
> 4e608e11a82d994e183d%7C0%7C0%7C637194434220278715&sdata=GSrYIyxHb6
> qQtGi1E%2BSkgF6q8nyC6uSKgO%2BWE7cxGm8%3D&reserved=0
_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2020-03-11 1:57 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-03-09 9:12 [PATCH 1/2] drm/amdgpu: add function to creat all ras debugfs node Stanley.Yang
2020-03-09 9:12 ` [PATCH 2/2] drm/amdgpu: call ras_debugfs_create_all in debugfs_init Stanley.Yang
2020-03-09 9:20 ` Chen, Guchun
2020-03-09 10:15 ` Zhou1, Tao
2020-03-10 6:33 ` Chen, Guchun
2020-03-10 13:23 ` Alex Deucher
2020-03-11 1:57 ` Yang, Stanley
2020-03-09 15:36 ` [PATCH 1/2] drm/amdgpu: add function to creat all ras debugfs node Alex Deucher
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox