Preparation for the port of firedtv to the firewire-core kernel API:
Canceling of the remote control workqueue job is factored into
firedtv-rc.c.  Plus trivial whitespace change.
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
                goto fail;
 
        avc_register_remote_control(fdtv);
+
        return 0;
 fail:
        spin_lock_irq(&node_list_lock);
        fdtv_unregister_rc(fdtv);
 fail_free:
        kfree(fdtv);
+
        return err;
 }
 
        list_del(&fdtv->list);
        spin_unlock_irq(&node_list_lock);
 
-       cancel_work_sync(&fdtv->remote_ctrl_work);
        fdtv_unregister_rc(fdtv);
-
        kfree(fdtv);
+
        return 0;
 }
 
 
 #include <linux/kernel.h>
 #include <linux/string.h>
 #include <linux/types.h>
+#include <linux/workqueue.h>
 
 #include "firedtv.h"
 
 
 void fdtv_unregister_rc(struct firedtv *fdtv)
 {
+       cancel_work_sync(&fdtv->remote_ctrl_work);
        kfree(fdtv->remote_ctrl_dev->keycode);
        input_unregister_device(fdtv->remote_ctrl_dev);
 }