powerpc/vphn: Check for error from hcall_vphn
authorSrikar Dronamraju <srikar@linux.vnet.ibm.com>
Wed, 29 Jan 2020 13:52:57 +0000 (19:22 +0530)
committerMichael Ellerman <mpe@ellerman.id.au>
Wed, 4 Mar 2020 11:44:30 +0000 (22:44 +1100)
There is no value in unpacking associativity, if
H_HOME_NODE_ASSOCIATIVITY hcall has returned an error.

Signed-off-by: Srikar Dronamraju <srikar@linux.vnet.ibm.com>
Reported-by: Abdul Haleem <abdhalee@linux.vnet.ibm.com>
Reviewed-by: Nathan Lynch <nathanl@linux.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20200129135301.24739-2-srikar@linux.vnet.ibm.com
arch/powerpc/platforms/pseries/vphn.c

index 3f07bf6..cca474a 100644 (file)
@@ -82,7 +82,8 @@ long hcall_vphn(unsigned long cpu, u64 flags, __be32 *associativity)
        long retbuf[PLPAR_HCALL9_BUFSIZE] = {0};
 
        rc = plpar_hcall9(H_HOME_NODE_ASSOCIATIVITY, retbuf, flags, cpu);
-       vphn_unpack_associativity(retbuf, associativity);
+       if (rc == H_SUCCESS)
+               vphn_unpack_associativity(retbuf, associativity);
 
        return rc;
 }