Re: regression introduced on v2.6.30-rc1

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Marcel,

On Sun, Jun 21, 2009 at 11:48 AM, Marcel Holtmann<marcel@xxxxxxxxxxxx> wrote:
> Hi Luiz,
>
> so does this fixes it:
>
> diff --git a/net/bluetooth/rfcomm/core.c b/net/bluetooth/rfcomm/core.c
> index 374536e..266c3b7 100644
> --- a/net/bluetooth/rfcomm/core.c
> +++ b/net/bluetooth/rfcomm/core.c
> @@ -1772,8 +1772,7 @@ static inline void rfcomm_process_dlcs(struct
> rfcomm_sessi
>                        rfcomm_dlc_clear_timer(d);
>                        if (!d->out)
>                                rfcomm_send_dm(s, d->dlci);
> -                       else
> -                               d->state = BT_CLOSED;
> +                       d->state = BT_CLOSED;
>                        __rfcomm_dlc_close(d, ECONNREFUSED);
>                        continue;
>                }
>

Not really, rfcomm_dlc is being closed and freed properly, BT_CONNECT2
or BT_CLOSED doesn't make much difference to __rfcomm_dlc_close as
they both trigger default case. As I said the code works fine with
stacks that cope with DM response, when it doesn't you have to
manually trigger rfcomm_session_put to take care of the reference
created on rfcomm_accept_connection.


-- 
Luiz Augusto von Dentz
Engenheiro de Computação
--
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

[Index of Archives]     [Bluez Devel]     [Linux Wireless Networking]     [Linux Wireless Personal Area Networking]     [Linux ATH6KL]     [Linux USB Devel]     [Linux Media Drivers]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux