Add EMSGSIZE to the list of retryable errors

Some devices return -EMSGSIZE if the hardware is being powered off in a
normal manner, as incomplete data is received. Retrying allows time for
the system to clean up driver devices, or in the event of a real
failure, attempt to get the rest of the data.

Resolves openbmc/openbmc#3226

Change-Id: Ib507acf4cbd4094e4369e15b8519058c57a74bc2
Signed-off-by: Eddie James <eajames@us.ibm.com>
diff --git a/hwmonio.cpp b/hwmonio.cpp
index 18ceff9..97990ce 100644
--- a/hwmonio.cpp
+++ b/hwmonio.cpp
@@ -57,6 +57,15 @@
      * as opposed to failing out on the first try.
      */
     ENODATA,
+
+    /*
+     * Some devices return this if the hardware is being
+     * powered off in a normal manner, as incomplete data
+     * is received. Retrying allows time for the system to
+     * clean up driver devices, or in the event of a real
+     * failure, attempt to get the rest of the data.
+     */
+    EMSGSIZE,
 };
 
 HwmonIO::HwmonIO(const std::string& path) : p(path)