Thread (8 messages) flat view 8 messages, 3 authors, 2018-03-19

Re: [PATCH 2/4] powerpc/vas: Fix cleanup when VAS is not configured

From: Michael Ellerman <mpe@ellerman.id.au>
Date: 2018-02-13 03:17:10
Also in: lkml

Sukadev Bhattiprolu [off-list ref] writes:
Michael Ellerman [mpe@ellerman.id.au] wrote:
quoted
Sukadev Bhattiprolu [off-list ref] writes:
quoted
When VAS is not configured in the system, make sure to remove
the VAS debugfs directory and unregister the platform driver.

Signed-off-by: Sukadev Bhattiprolu <redacted>
...
quoted
diff --git a/arch/powerpc/platforms/powernv/vas.c b/arch/powerpc/platforms/powernv/vas.c
index aebbe95..f83e27d8 100644
--- a/arch/powerpc/platforms/powernv/vas.c
+++ b/arch/powerpc/platforms/powernv/vas.c
@@ -169,8 +169,11 @@ static int __init vas_init(void)
 		found++;
 	}
 
-	if (!found)
+	if (!found) {
+		platform_driver_unregister(&vas_driver);
+		vas_cleanup_dbgdir();
 		return -ENODEV;
+	}
The better patch would be to move the call to vas_init_dbgdir() down
here, where we know we have successfully registered the driver.
Well, when VAS is configured, init_vas_instance() expects the top level
"vas" debugfs dir to already be setup.
OK.
We could have each init_vas_instance() assume it is the first and
unconditionally call vas_init_dbgdir(). vas_init_dbgdir() could make
sure to initialize only once.
Yeah that looks like a good solution.

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