Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753327AbbF2JA2 (ORCPT ); Mon, 29 Jun 2015 05:00:28 -0400 Received: from mail-wi0-f178.google.com ([209.85.212.178]:34647 "EHLO mail-wi0-f178.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753232AbbF2JAV convert rfc822-to-8bit (ORCPT ); Mon, 29 Jun 2015 05:00:21 -0400 MIME-Version: 1.0 In-Reply-To: <20150628160930.GA1663@p183.telecom.by> References: <986DE56C-2E79-4CAD-9D32-89DAED9B449A@holtmann.org> <20150628160930.GA1663@p183.telecom.by> Date: Mon, 29 Jun 2015 11:00:20 +0200 Message-ID: Subject: Re: [4.1.0-07254-gc13c810] Regression: Bluetooth not working. From: =?UTF-8?Q?J=C3=B6rg_Otte?= To: Alexey Dobriyan Cc: Marcel Holtmann , Johan Hedberg , "bluez mailin list (linux-bluetooth@vger.kernel.org)" , inux Kernel Mailing List , Linus Torvalds Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8BIT Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 3421 Lines: 85 2015-06-28 18:09 GMT+02:00 Alexey Dobriyan : > On Sun, Jun 28, 2015 at 05:36:04PM +0200, Jörg Otte wrote: >> 2015-06-26 16:28 GMT+02:00 Jörg Otte : >> > 2015-06-26 12:03 GMT+02:00 Jörg Otte : >> >> 2015-06-26 11:37 GMT+02:00 Marcel Holtmann : >> >>> Hi Joerg, >> >>> >> >>>> Bluetooth is inoperable in current Linus tree and the >> >>>> first bad commit is: >> >>>> >> >>>> 835a6a2f8603237a3e6cded5a6765090ecb06ea5 is the first bad commit >> >>>> commit 835a6a2f8603237a3e6cded5a6765090ecb06ea5 >> >>>> Author: Alexey Dobriyan >> >>>> Date: Wed Jun 10 20:28:33 2015 +0300 >> >>>> >> >>>> Bluetooth: Stop sabotaging list poisoning >> >>>> >> >>>> list_del() poisons pointers with special values, no need to overwrite them. >> >>>> >> >>>> Signed-off-by: Alexey Dobriyan >> >>>> Signed-off-by: Marcel Holtmann >> >>>> >> >>>> My BT adapter is an intel 8087:07da >> >>>> I reverted that commit and this fixed the problem for me. >> >>> >> >>> today we had a patch from Tedd fixing the list initialization in the HIDP code. >> >>> >> >>> diff --git a/net/bluetooth/hidp/core.c b/net/bluetooth/hidp/core.c >> >>> index 9070dfd6b4ad..f1a117f8cad2 100644 >> >>> --- a/net/bluetooth/hidp/core.c >> >>> +++ b/net/bluetooth/hidp/core.c >> >>> @@ -915,6 +915,7 @@ static int hidp_session_new(struct hidp_session **out, const bdaddr_t *bdaddr, >> >>> session->conn = l2cap_conn_get(conn); >> >>> session->user.probe = hidp_session_probe; >> >>> session->user.remove = hidp_session_remove; >> >>> + INIT_LIST_HEAD(&session->user.list); >> >>> session->ctrl_sock = ctrl_sock; >> >>> session->intr_sock = intr_sock; >> >>> skb_queue_head_init(&session->ctrl_transmit); >> >>> >> >>> Could this be fixing it for you as well? >> >>> >> >> I will check this when I am at home in the >> >> afternoon. >> >> >> > >> > The patch works for me too. >> > >> Ok, this was a little bit hasty! >> I now see the following additional problems: >> >> - System freeze on resume (occures always). >> - System freeze on shutdown (occures sometimes) >> - System freeze when BT-mouse is connecting (occures sometimes). >> >> Then I can't do anything except power off. >> >> This happens only if Bluetooth AND BT-mouse is activated. > > OK, what happens if you just revert only list_del patch? I have applied this patch: diff --git a/net/bluetooth/hidp/core.c b/net/bluetooth/hidp/core.c index 9070dfd6b4ad..f1a117f8cad2 100644 --- a/net/bluetooth/hidp/core.c +++ b/net/bluetooth/hidp/core.c @@ -915,6 +915,7 @@ static int hidp_session_new(struct hidp_session **out, const bdaddr_t *bdaddr, session->conn = l2cap_conn_get(conn); session->user.probe = hidp_session_probe; session->user.remove = hidp_session_remove; + INIT_LIST_HEAD(&session->user.list); session->ctrl_sock = ctrl_sock; session->intr_sock = intr_sock; skb_queue_head_init(&session->ctrl_transmit); without this patch bluetooth doesn't work at all for me. Thanks, Jörg -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/