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 <vi...@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;
        default:
-               pr_err("%s: unexpected OPAL error %d\n", __func__, rc);
+               pr_err("%s: Unexpected OPAL error %d\n", __func__, rc);
                return -EIO;
        }
 }
-- 
2.7.4

Reply via email to