The Linux Kernel Mailing List
 help / color / mirror / Atom feed
* [PATCH] fs/resctrl: Restore the missing rdt_last_cmd_clear()
@ 2025-05-29 11:33 Zeng Heng
  2025-05-29 22:01 ` Reinette Chatre
  0 siblings, 1 reply; 4+ messages in thread
From: Zeng Heng @ 2025-05-29 11:33 UTC (permalink / raw)
  To: Dave.Martin, bp, tony.luck, reinette.chatre, james.morse,
	xiaochen.shen, fenghua.yu
  Cc: bobo.shaobowang, linux-kernel

The fixes tag patch resolves the lockdep warning. However, directly
removing rdt_last_cmd_clear() would leave the last_cmd_status interface
with stale logs, which does not conform to the functional definition before
the fix. Therefore, the rdt_last_cmd_clear() operation is performed after
successfully acquiring the rdtgroup_mutex.

Fixes: c8eafe149530 ("x86/resctrl: Fix potential lockdep warning")
Signed-off-by: Zeng Heng <zengheng4@huawei.com>
---
 fs/resctrl/rdtgroup.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/fs/resctrl/rdtgroup.c b/fs/resctrl/rdtgroup.c
index cc37f58b47dd..4aae9eb74215 100644
--- a/fs/resctrl/rdtgroup.c
+++ b/fs/resctrl/rdtgroup.c
@@ -536,6 +536,8 @@ static ssize_t rdtgroup_cpus_write(struct kernfs_open_file *of,
 		goto unlock;
 	}
 
+	rdt_last_cmd_clear();
+
 	if (rdtgrp->mode == RDT_MODE_PSEUDO_LOCKED ||
 	    rdtgrp->mode == RDT_MODE_PSEUDO_LOCKSETUP) {
 		ret = -EINVAL;
@@ -3481,6 +3483,8 @@ static int mkdir_rdt_prepare(struct kernfs_node *parent_kn,
 		goto out_unlock;
 	}
 
+	rdt_last_cmd_clear();
+
 	if (rtype == RDTMON_GROUP &&
 	    (prdtgrp->mode == RDT_MODE_PSEUDO_LOCKSETUP ||
 	     prdtgrp->mode == RDT_MODE_PSEUDO_LOCKED)) {
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2025-05-30 17:35 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-05-29 11:33 [PATCH] fs/resctrl: Restore the missing rdt_last_cmd_clear() Zeng Heng
2025-05-29 22:01 ` Reinette Chatre
2025-05-30  9:34   ` Zeng Heng
2025-05-30 17:35     ` Reinette Chatre

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox