Hi, On Fri, Nov 26, 2010 at 6:14 PM, Anderson Lizardo <anderson.lizardo@xxxxxxxxxxxxx> wrote: > Hi Andrei, > > On Fri, Nov 26, 2010 at 11:22 AM, Emeltchenko Andrei > <Andrei.Emeltchenko.news@xxxxxxxxx> wrote: >> @@ -828,13 +831,14 @@ static void sco_chan_del(struct sock *sk, int err) >> >> static void sco_conn_ready(struct sco_conn *conn) >> { >> - struct sock *parent, *sk; >> + struct sock *parent; >> + struct sock *sk = conn->sk; > > I wonder if there is a problem with accessing conn->sk here outside > the lock protection? I believe here is a safe access. We just acquire pointer and possible protected operations are executed inside lock. > >> >> BT_DBG("conn %p", conn); >> >> sco_conn_lock(conn); >> >> - if ((sk = conn->sk)) { >> + if (sk) { >> sco_sock_clear_timer(sk); >> bh_lock_sock(sk); >> sk->sk_state = BT_CONNECTED; -- Regards, Andrei -- To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html