Re: [PATCH v2] powernv/opal: Handle OPAL_WRONG_STATE error from OPAL fails
From: Stewart Smith <hidden>
Date: 2017-02-28 21:08:31
Vipin K Parashar [off-list ref] writes:
quoted hunk ↗ jump to hunk
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 <redacted> --- 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.