Messages in this thread Patch in this message | | | Date | Tue, 25 Sep 2012 19:32:13 +0900 | From | Chanwoo Choi <> | Subject | Re: [PATCH] extcon: Fix return value in extcon_register_interest() |
| |
On 09/25/2012 03:58 PM, Sachin Kamat wrote:
> Return the value obtained from extcon_find_cable_index() > instead of -ENODEV. > > Fixes the following smatch info: > drivers/extcon/extcon-class.c:478 extcon_register_interest() info: > why not propagate 'obj->cable_index' from extcon_find_cable_index() > instead of -19? > > Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org> > --- > drivers/extcon/extcon-class.c | 2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/drivers/extcon/extcon-class.c b/drivers/extcon/extcon-class.c > index 946a318..e996800 100644 > --- a/drivers/extcon/extcon-class.c > +++ b/drivers/extcon/extcon-class.c > @@ -475,7 +475,7 @@ int extcon_register_interest(struct extcon_specific_cable_nb *obj, > > obj->cable_index = extcon_find_cable_index(obj->edev, cable_name); > if (obj->cable_index < 0) > - return -ENODEV; > + return obj->cable_index; > > obj->user_nb = nb; >
I agree. But, if extcon_register_interest() return directly 'obj-cable_index' value when extcon_find_cable_index() return -EINVAL, it would spoil readability of extcon_register_interest() function. So, I think we can make it as following patch a little better.
--- diff --git a/drivers/extcon/extcon-class.c b/drivers/extcon/extcon-class.c index 936580b..078e6a5 100644 --- a/drivers/extcon/extcon-class.c +++ b/drivers/extcon/extcon-class.c @@ -468,7 +468,7 @@ int extcon_register_interest(struct extcon_specific_cable_nb *obj,
obj->cable_index = extcon_find_cable_index(obj->edev, cable_name); if (obj->cable_index < 0) - return -ENODEV; + return -EINVAL;
obj->user_nb = nb;
Thanks, Chanwoo Choi
| |