From: David Binder <david.bin...@unisys.com>

Control flow is now directed using a switch statement, triggered by the
enum crash_obj_type function parameter, instead of a set of conditional
statements.

Reported-by: Greg Kroah-Hartman <gre...@linuxfoundation.org>
Signed-off-by: David Binder <david.bin...@unisys.com>
Signed-off-by: David Kershner <david.kersh...@unisys.com>
---
 drivers/staging/unisys/visorbus/visorchipset.c | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/drivers/staging/unisys/visorbus/visorchipset.c 
b/drivers/staging/unisys/visorbus/visorchipset.c
index 2dd8930..275653a 100644
--- a/drivers/staging/unisys/visorbus/visorchipset.c
+++ b/drivers/staging/unisys/visorbus/visorchipset.c
@@ -613,27 +613,33 @@ save_crash_message(struct controlvm_message *msg, enum 
crash_obj_type typ)
                return err;
        }
 
-       if (typ == CRASH_BUS) {
+       switch (typ) {
+       case CRASH_DEV:
+               local_crash_msg_offset += sizeof(struct controlvm_message);
                err = visorchannel_write(controlvm_channel,
                                         local_crash_msg_offset,
                                         msg,
-                                       sizeof(struct controlvm_message));
+                                        sizeof(struct controlvm_message));
                if (err) {
-                       POSTCODE_LINUX(SAVE_MSG_BUS_FAILURE_PC, 0, 0,
+                       POSTCODE_LINUX(SAVE_MSG_DEV_FAILURE_PC, 0, 0,
                                       DIAG_SEVERITY_ERR);
                        return err;
                }
-       } else {
-               local_crash_msg_offset += sizeof(struct controlvm_message);
+               break;
+       case CRASH_BUS:
                err = visorchannel_write(controlvm_channel,
                                         local_crash_msg_offset,
                                         msg,
                                         sizeof(struct controlvm_message));
                if (err) {
-                       POSTCODE_LINUX(SAVE_MSG_DEV_FAILURE_PC, 0, 0,
+                       POSTCODE_LINUX(SAVE_MSG_BUS_FAILURE_PC, 0, 0,
                                       DIAG_SEVERITY_ERR);
                        return err;
                }
+               break;
+       default:
+               pr_info("Invalid crash_obj_type\n");
+               break;
        }
        return 0;
 }
-- 
git-series 0.9.1
_______________________________________________
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

Reply via email to