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@xxxxxxxxxxxxxxxxx> --- drivers/media/dvb/firewire/firedtv-1394.c | 5 +++-- drivers/media/dvb/firewire/firedtv-rc.c | 2 ++ 2 files changed, 5 insertions(+), 2 deletions(-) Index: linux-2.6.31.4/drivers/media/dvb/firewire/firedtv-1394.c =================================================================== --- linux-2.6.31.4.orig/drivers/media/dvb/firewire/firedtv-1394.c +++ linux-2.6.31.4/drivers/media/dvb/firewire/firedtv-1394.c @@ -212,6 +212,7 @@ static int node_probe(struct device *dev goto fail; avc_register_remote_control(fdtv); + return 0; fail: spin_lock_irq(&node_list_lock); @@ -220,6 +221,7 @@ fail: fdtv_unregister_rc(fdtv); fail_free: kfree(fdtv); + return err; } @@ -233,10 +235,9 @@ static int node_remove(struct device *de 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; } Index: linux-2.6.31.4/drivers/media/dvb/firewire/firedtv-rc.c =================================================================== --- linux-2.6.31.4.orig/drivers/media/dvb/firewire/firedtv-rc.c +++ linux-2.6.31.4/drivers/media/dvb/firewire/firedtv-rc.c @@ -14,6 +14,7 @@ #include <linux/kernel.h> #include <linux/string.h> #include <linux/types.h> +#include <linux/workqueue.h> #include "firedtv.h" @@ -163,6 +164,7 @@ fail: 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); } -- Stefan Richter -=====-==--= =-== -=--- http://arcgraph.de/sr/ -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html