aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJonathan Nieder <jrnieder@gmail.com>2011-12-31 06:08:45 -0500
committerMauro Carvalho Chehab <mchehab@redhat.com>2012-01-06 09:50:17 -0500
commit5584c641be9e4ff812443511363a72edaa5ceeaa (patch)
treef3ba8db91b3db4cff7a8cee82ae2dea8a20b0e7c
parent2dbbac330621e83d00e904d1139b62e7b360f946 (diff)
[media] dm1105: handle errors from dvb_net_init
Clean up and error out if dvb_net_init fails (for example due to ENOMEM). This involves moving the dvb_net_init call to before frontend_init to make cleaning up a little easier. From an audit of dvb_net_init callers, now that dvb_net_init lets callers know about errors. Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
-rw-r--r--drivers/media/dvb/dm1105/dm1105.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/media/dvb/dm1105/dm1105.c b/drivers/media/dvb/dm1105/dm1105.c
index 55e6533f15e..70e040b999e 100644
--- a/drivers/media/dvb/dm1105/dm1105.c
+++ b/drivers/media/dvb/dm1105/dm1105.c
@@ -1115,11 +1115,14 @@ static int __devinit dm1105_probe(struct pci_dev *pdev,
1115 if (ret < 0) 1115 if (ret < 0)
1116 goto err_remove_mem_frontend; 1116 goto err_remove_mem_frontend;
1117 1117
1118 ret = dvb_net_init(dvb_adapter, &dev->dvbnet, dmx);
1119 if (ret < 0)
1120 goto err_disconnect_frontend;
1121
1118 ret = frontend_init(dev); 1122 ret = frontend_init(dev);
1119 if (ret < 0) 1123 if (ret < 0)
1120 goto err_disconnect_frontend; 1124 goto err_disconnect_frontend;
1121 1125
1122 dvb_net_init(dvb_adapter, &dev->dvbnet, dmx);
1123 dm1105_ir_init(dev); 1126 dm1105_ir_init(dev);
1124 1127
1125 INIT_WORK(&dev->work, dm1105_dmx_buffer); 1128 INIT_WORK(&dev->work, dm1105_dmx_buffer);