diff options
| author | K. Y. Srinivasan <[email protected]> | 2011-05-17 22:25:38 +0000 |
|---|---|---|
| committer | Greg Kroah-Hartman <[email protected]> | 2011-06-07 19:02:00 +0000 |
| commit | 663dd6dcaf7e95526e469e91f41972a9c0cca30c (patch) | |
| tree | 819a0fb54725a53e59c4a855f92a4425946f0fcd | |
| parent | Connector: Set the CN_NETLINK_USERS correctly (diff) | |
| download | kernel-663dd6dcaf7e95526e469e91f41972a9c0cca30c.tar.gz kernel-663dd6dcaf7e95526e469e91f41972a9c0cca30c.zip | |
Connector: Correctly set the error code in case of success when dispatching receive callbacks
The recent changes to the connector code introduced this bug where even
when a callback was invoked, we would return an error resulting in
double freeing of the skb. This patch fixes this bug.
Signed-off-by: K. Y. Srinivasan <[email protected]>
Acked-by: Evgeniy Polyakov <[email protected]>
Cc: stable <[email protected]> [.39]
Signed-off-by: Greg Kroah-Hartman <[email protected]>
| -rw-r--r-- | drivers/connector/connector.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/connector/connector.c b/drivers/connector/connector.c index 219d88a0eeae..dde6a0fad408 100644 --- a/drivers/connector/connector.c +++ b/drivers/connector/connector.c @@ -139,6 +139,7 @@ static int cn_call_callback(struct sk_buff *skb) spin_unlock_bh(&dev->cbdev->queue_lock); if (cbq != NULL) { + err = 0; cbq->callback(msg, nsp); kfree_skb(skb); cn_queue_release_callback(cbq); |
