lkml.org 
[lkml]   [2020]   [Jan]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4.19 087/115] Bluetooth: delete a stray unlock
    Date
    From: Dan Carpenter <dan.carpenter@oracle.com>

    commit df66499a1fab340c167250a5743931dc50d5f0fa upstream.

    We used to take a lock in amp_physical_cfm() but then we moved it to
    the caller function. Unfortunately the unlock on this error path was
    overlooked so it leads to a double unlock.

    Fixes: a514b17fab51 ("Bluetooth: Refactor locking in amp_physical_cfm")
    Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
    Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

    ---
    net/bluetooth/l2cap_core.c | 4 +---
    1 file changed, 1 insertion(+), 3 deletions(-)

    --- a/net/bluetooth/l2cap_core.c
    +++ b/net/bluetooth/l2cap_core.c
    @@ -4918,10 +4918,8 @@ void __l2cap_physical_cfm(struct l2cap_c
    BT_DBG("chan %p, result %d, local_amp_id %d, remote_amp_id %d",
    chan, result, local_amp_id, remote_amp_id);

    - if (chan->state == BT_DISCONN || chan->state == BT_CLOSED) {
    - l2cap_chan_unlock(chan);
    + if (chan->state == BT_DISCONN || chan->state == BT_CLOSED)
    return;
    - }

    if (chan->state != BT_CONNECTED) {
    l2cap_do_create(chan, result, local_amp_id, remote_amp_id);

    \
     
     \ /
      Last update: 2020-01-07 22:17    [W:3.793 / U:0.040 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site