• David Howells's avatar
    rxrpc: Fix missing unlock in rxrpc_do_sendmsg() · 4feb2c44
    David Howells authored
    One of the error paths in rxrpc_do_sendmsg() doesn't unlock the call mutex
    before returning.  Fix it to do this.
    
    Note that this still doesn't get rid of the checker warning:
    
       ../net/rxrpc/sendmsg.c:617:5: warning: context imbalance in 'rxrpc_do_sendmsg' - wrong count at exit
    
    I think the interplay between the socket lock and the call's user_mutex may
    be too complicated for checker to analyse, especially as
    rxrpc_new_client_call_for_sendmsg(), which it calls, returns with the
    call's user_mutex if successful but unconditionally drops the socket lock.
    
    Fixes: e754eba6 ("rxrpc: Provide a cmsg to specify the amount of Tx data for a call")
    Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
    cc: Marc Dionne <marc.dionne@auristor.com>
    cc: linux-afs@lists.infradead.org
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    4feb2c44
sendmsg.c 20.1 KB