Hello.
On 21/06/16 10:27, Alexander Aring wrote:
quoted hunk ↗ jump to hunk
This patch removes a double unlock case to accessing neighbour private
data.
Reported-by: Dan Carpenter <redacted>
Signed-off-by: Alexander Aring <redacted>
---
net/6lowpan/ndisc.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/net/6lowpan/ndisc.c b/net/6lowpan/ndisc.c
index ae1d419..030504e 100644
--- a/net/6lowpan/ndisc.c
+++ b/net/6lowpan/ndisc.c
@@ -135,8 +135,9 @@ static int lowpan_ndisc_opt_addr_space(const struct net_device *dev,
read_unlock_bh(&neigh->lock);
addr_space += __ndisc_opt_addr_space(IEEE802154_SHORT_ADDR_LEN, 0);
*ha = ha_buf;
+ } else {
+ read_unlock_bh(&neigh->lock);
}
- read_unlock_bh(&neigh->lock);
break;
case NDISC_NEIGHBOUR_ADVERTISEMENT:
case NDISC_NEIGHBOUR_SOLICITATION:
Dan, thanks for finding this one!
Reviewed-by: Stefan Schmidt<redacted> regards Stefan Schmidt