diff options
author | Li Zefan <lizf@cn.fujitsu.com> | 2008-01-04 01:52:02 -0800 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-01-04 03:55:37 -0800 |
commit | 134d99e302618eeb102c2a5be1f9e98696288bdd (patch) | |
tree | c3f3b5e7e08d43b000d2dc2db31c4111bfb4ad40 /drivers | |
parent | 44344b2a85f03326c7047a8c861b0c625c674839 (diff) | |
download | linux-stable-134d99e302618eeb102c2a5be1f9e98696288bdd.tar.gz linux-stable-134d99e302618eeb102c2a5be1f9e98696288bdd.tar.bz2 linux-stable-134d99e302618eeb102c2a5be1f9e98696288bdd.zip |
[CONNECTOR]: Return proper error code in cn_call_callback()
Error code should be set to EINVAL instead of ENODEV if !queue_work().
There's another call of queue_work() which may set err to EINVAL.
Signed-off-by: Li Zefan <lizf@cn.fujitsu.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/connector/connector.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/connector/connector.c b/drivers/connector/connector.c index 6883fcb79ad3..bf9716b75513 100644 --- a/drivers/connector/connector.c +++ b/drivers/connector/connector.c @@ -145,6 +145,8 @@ static int cn_call_callback(struct cn_msg *msg, void (*destruct_data)(void *), v if (queue_work(dev->cbdev->cn_queue, &__cbq->work)) err = 0; + else + err = -EINVAL; } else { struct cn_callback_data *d; |