powerpc/rtas: remove ibm_suspend_me_token
authorNathan Lynch <nathanl@linux.ibm.com>
Thu, 8 Apr 2021 14:06:28 +0000 (09:06 -0500)
committerMichael Ellerman <mpe@ellerman.id.au>
Wed, 14 Apr 2021 13:04:16 +0000 (23:04 +1000)
There's not a compelling reason to cache the value of the token for
the ibm,suspend-me function. Just look it up when needed in the RTAS
syscall's special case for it.

Signed-off-by: Nathan Lynch <nathanl@linux.ibm.com>
Reviewed-by: Alexey Kardashevskiy <aik@ozlabs.ru>
Reviewed-by: Andrew Donnellan <ajd@linux.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20210408140630.205502-4-nathanl@linux.ibm.com
arch/powerpc/kernel/rtas.c

index d126d71ea5bd8ff03afc39b0933a0ab4b36732de..60fcf7f7b0b88f2db90e84d6c1c34eada7bde1df 100644 (file)
@@ -828,7 +828,6 @@ void rtas_activate_firmware(void)
                pr_err("ibm,activate-firmware failed (%i)\n", fwrc);
 }
 
-static int ibm_suspend_me_token = RTAS_UNKNOWN_SERVICE;
 #ifdef CONFIG_PPC_PSERIES
 /**
  * rtas_call_reentrant() - Used for reentrant rtas calls
@@ -1103,7 +1102,7 @@ SYSCALL_DEFINE1(rtas, struct rtas_args __user *, uargs)
                return -EINVAL;
 
        /* Need to handle ibm,suspend_me call specially */
-       if (token == ibm_suspend_me_token) {
+       if (token == rtas_token("ibm,suspend-me")) {
 
                /*
                 * rtas_ibm_suspend_me assumes the streamid handle is in cpu
@@ -1191,10 +1190,8 @@ void __init rtas_initialize(void)
         * the stop-self token if any
         */
 #ifdef CONFIG_PPC64
-       if (firmware_has_feature(FW_FEATURE_LPAR)) {
+       if (firmware_has_feature(FW_FEATURE_LPAR))
                rtas_region = min(ppc64_rma_size, RTAS_INSTANTIATE_MAX);
-               ibm_suspend_me_token = rtas_token("ibm,suspend-me");
-       }
 #endif
        rtas_rmo_buf = memblock_phys_alloc_range(RTAS_RMOBUF_MAX, PAGE_SIZE,
                                                 0, rtas_region);