Re: [PATCH] bluetooth, regression: MSG_TRUNC fixes

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

 



Hi Mika,

On Wed, Aug 24, 2016 at 1:13 PM, Mika Penttilä
<mika.penttila@xxxxxxxxxxxx> wrote:
> Recent 4.8-rc changes to bluetooth MSG_TRUNC handling introduced regression; pairing finishes
> but connecting profiles not.
>
> With the below fixes to MSG_TRUNC handling the connection is established normally.
>
> --Mika
>
>
> Signed-off-by: Mika Penttilä <mika.penttila@xxxxxxxxxxxx>
> ---
>
> diff --git a/net/bluetooth/af_bluetooth.c b/net/bluetooth/af_bluetooth.c
> index ece45e0..0b5f729 100644
> --- a/net/bluetooth/af_bluetooth.c
> +++ b/net/bluetooth/af_bluetooth.c
> @@ -250,7 +250,7 @@ int bt_sock_recvmsg(struct socket *sock, struct msghdr *msg, siz
>
>         skb_free_datagram(sk, skb);
>
> -       if (msg->msg_flags & MSG_TRUNC)
> +       if (flags & MSG_TRUNC)
>                 copied = skblen;
>
>         return err ? : copied;
> diff --git a/net/bluetooth/hci_sock.c b/net/bluetooth/hci_sock.c
> index 6ef8a01..96f04b7 100644
> --- a/net/bluetooth/hci_sock.c
> +++ b/net/bluetooth/hci_sock.c
> @@ -1091,7 +1091,7 @@ static int hci_sock_recvmsg(struct socket *sock, struct msghdr
>
>         skb_free_datagram(sk, skb);
>
> -       if (msg->msg_flags & MSG_TRUNC)
> +       if (flags & MSG_TRUNC)
>                 copied = skblen;
>
>         return err ? : copied;
> --

I believe similar patches already went to bluetooth-next so it should
be in the way if not already merged.

-- 
Luiz Augusto von Dentz
--
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