[PATCH v2] powernv/opal: Handle OPAL_WRONG_STATE error from OPAL fails
Stewart Smith
stewart at linux.vnet.ibm.com
Wed Mar 1 08:08:19 AEDT 2017
Vipin K Parashar <vipin at linux.vnet.ibm.com> writes:
> Added check for OPAL_WRONG_STATE error code returned from OPAL.
> Currently Linux flashes "unexpected error" over console for this
> error. This will avoid throwing such message and return I/O error
> for such OPAL failures.
>
> Signed-off-by: Vipin K Parashar <vipin at linux.vnet.ibm.com>
> ---
> Changes in v2:
> - Added log message indicating sleeping/offline core
> for OPAL_WRONG_STATE
>
> arch/powerpc/platforms/powernv/opal.c | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/arch/powerpc/platforms/powernv/opal.c b/arch/powerpc/platforms/powernv/opal.c
> index 86d9fde..8af230e 100644
> --- a/arch/powerpc/platforms/powernv/opal.c
> +++ b/arch/powerpc/platforms/powernv/opal.c
> @@ -869,8 +869,11 @@ int opal_error_code(int rc)
> case OPAL_UNSUPPORTED: return -EIO;
> case OPAL_HARDWARE: return -EIO;
> case OPAL_INTERNAL_ERROR: return -EIO;
> + case OPAL_WRONG_STATE:
> + pr_notice("%s: Core sleeping/offline\n", __func__);
> + return -EIO;
Since this is part of opal_error_code() though, this will be printed for
any OPAL call that returns that.
Why not have the sensor code do this:
rc = opal_sensor_read(foo)
if (rc == OPAL_WRONG_STATE)
return -EIO;
else
return oal_error_code(rc);
?
> default:
> - pr_err("%s: unexpected OPAL error %d\n", __func__, rc);
> + pr_err("%s: Unexpected OPAL error %d\n", __func__, rc);
Do we need this?
--
Stewart Smith
OPAL Architect, IBM.
More information about the Linuxppc-dev
mailing list