The paths in bus_epilog should match device_epilog.

Signed-off-by: David Kershner <david.kersh...@unisys.com>
---
 drivers/staging/unisys/visorbus/visorchipset.c | 19 +++----------------
 1 file changed, 3 insertions(+), 16 deletions(-)

diff --git a/drivers/staging/unisys/visorbus/visorchipset.c 
b/drivers/staging/unisys/visorbus/visorchipset.c
index a22aec4..c1b872c 100644
--- a/drivers/staging/unisys/visorbus/visorchipset.c
+++ b/drivers/staging/unisys/visorbus/visorchipset.c
@@ -965,7 +965,6 @@ bus_epilog(struct visor_device *bus_info,
           u32 cmd, struct controlvm_message_header *msg_hdr,
           int response, bool need_response)
 {
-       bool notified = false;
        struct controlvm_message_header *pmsg_hdr = NULL;
 
        down(&notifier_lock);
@@ -1003,32 +1002,20 @@ bus_epilog(struct visor_device *bus_info,
                case CONTROLVM_BUS_CREATE:
                        if (busdev_notifiers.bus_create) {
                                (*busdev_notifiers.bus_create) (bus_info);
-                               notified = true;
+                               goto out_unlock;
                        }
                        break;
                case CONTROLVM_BUS_DESTROY:
                        if (busdev_notifiers.bus_destroy) {
                                (*busdev_notifiers.bus_destroy) (bus_info);
-                               notified = true;
+                               goto out_unlock;
                        }
                        break;
                }
        }
 
 out_respond_and_unlock:
-       if (notified)
-               /* The callback function just called above is responsible
-                * for calling the appropriate visorchipset_busdev_responders
-                * function, which will call bus_responder()
-                */
-               ;
-       else
-               /*
-                * Do not kfree(pmsg_hdr) as this is the failure path.
-                * The success path ('notified') will call the responder
-                * directly and kfree() there.
-                */
-               bus_responder(cmd, pmsg_hdr, response);
+       bus_responder(cmd, pmsg_hdr, response);
 
 out_unlock:
        up(&notifier_lock);
-- 
1.9.1

_______________________________________________
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

Reply via email to