The if statement was sending us down the happy path with the error path in the else. This can be simplified by having the if be the error and just falling through with the good path. Signed-off-by: David Kershner <david.kershner@xxxxxxxxxx> Reviewed-by: Tim Sell <timothy.sell@xxxxxxxxxx> --- drivers/staging/unisys/visorbus/visorchipset.c | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/drivers/staging/unisys/visorbus/visorchipset.c b/drivers/staging/unisys/visorbus/visorchipset.c index 6fc8980..ec8fc0b 100644 --- a/drivers/staging/unisys/visorbus/visorchipset.c +++ b/drivers/staging/unisys/visorbus/visorchipset.c @@ -1431,22 +1431,21 @@ setup_crash_devices_work_queue(struct work_struct *work) } /* reuse IOVM create bus message */ - if (local_crash_bus_msg.cmd.create_bus.channel_addr) { - bus_create(&local_crash_bus_msg); - } else { + if (!local_crash_bus_msg.cmd.create_bus.channel_addr) { POSTCODE_LINUX(CRASH_DEV_BUS_NULL_FAILURE_PC, 0, 0, DIAG_SEVERITY_ERR); return; } + bus_create(&local_crash_bus_msg); /* reuse create device message for storage device */ - if (local_crash_dev_msg.cmd.create_device.channel_addr) { - my_device_create(&local_crash_dev_msg); - } else { + if (!local_crash_dev_msg.cmd.create_device.channel_addr) { POSTCODE_LINUX(CRASH_DEV_DEV_NULL_FAILURE_PC, 0, 0, DIAG_SEVERITY_ERR); return; } + my_device_create(&local_crash_dev_msg); + POSTCODE_LINUX(CRASH_DEV_EXIT_PC, 0, 0, DIAG_SEVERITY_PRINT); } -- git-series 0.9.1 _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel