Thread (7 messages) 7 messages, 4 authors, 2019-10-30

Re: [PATCH v2] powerpc/imc: Dont create debugfs files for cpu-less nodes

From: maddy <hidden>
Date: 2019-07-15 06:24:20

On 7/11/19 10:23 AM, Michael Ellerman wrote:
Hi Maddy,

Madhavan Srinivasan [off-list ref] writes:
quoted
diff --git a/arch/powerpc/platforms/powernv/opal-imc.c b/arch/powerpc/platforms/powernv/opal-imc.c
index 186109bdd41b..e04b20625cb9 100644
--- a/arch/powerpc/platforms/powernv/opal-imc.c
+++ b/arch/powerpc/platforms/powernv/opal-imc.c
@@ -69,20 +69,20 @@ static void export_imc_mode_and_cmd(struct device_node *node,
  	if (of_property_read_u32(node, "cb_offset", &cb_offset))
  		cb_offset = IMC_CNTL_BLK_OFFSET;
  
-	for_each_node(nid) {
-		loc = (u64)(pmu_ptr->mem_info[chip].vbase) + cb_offset;
+	while (ptr->vbase != NULL) {
This means you'll bail out as soon as you find a node with no vbase, but
it's possible we could have a CPU-less node intermingled with other
nodes.
Nice catch. Thanks for the review, will fix it.

Maddy
So I think you want to keep the for loop, but continue if you see a NULL
vbase?

quoted
+		loc = (u64)(ptr->vbase) + cb_offset;
  		imc_mode_addr = (u64 *)(loc + IMC_CNTL_BLK_MODE_OFFSET);
-		sprintf(mode, "imc_mode_%d", nid);
+		sprintf(mode, "imc_mode_%d", (u32)(ptr->id));
  		if (!imc_debugfs_create_x64(mode, 0600, imc_debugfs_parent,
  					    imc_mode_addr))
  			goto err;
  
  		imc_cmd_addr = (u64 *)(loc + IMC_CNTL_BLK_CMD_OFFSET);
-		sprintf(cmd, "imc_cmd_%d", nid);
+		sprintf(cmd, "imc_cmd_%d", (u32)(ptr->id));
  		if (!imc_debugfs_create_x64(cmd, 0600, imc_debugfs_parent,
  					    imc_cmd_addr))
  			goto err;
-		chip++;
+		ptr++;
  	}
  	return;
cheers
  
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help