[media] drxk: Proper handle/propagate the error codes
authorMauro Carvalho Chehab <mchehab@redhat.com>
Sun, 10 Jul 2011 04:49:53 +0000 (01:49 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Wed, 27 Jul 2011 20:55:49 +0000 (17:55 -0300)
commitbe44eb283b97c29b06a125cb5527b299d84315f4
tree73d92b59deafc66aca72d0208db0ab24baafa306
parentf1fe1b75d64046b693075045fe9fc5cafed9c981
[media] drxk: Proper handle/propagate the error codes

This driver is very big and complex. An error happening in the middle
of any initialization may cause the frontend to not work. So, it
needs to properly propagate error codes internally and to userspace.

Also, printing the error codes at the places it happened helps to
discover were's a bug at the code.

Before this change, a do { } while (0) loop and lots of breaks inside
were used to propagate errors. While this works, if there are
loops inside other loops, it could be easy to forget to add another
break, causing the error to not abort the function.

Also, as not all functions were reporting errors, it is hard to
discover why something failed.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/dvb/frontends/drxk_hard.c