Now i used the Linus repository: user@MACHINE:~>git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git userKernel First i verified, that my USB2.0 bluetooth dongle worked well with kernel v3.9 (build from this repository) and DID NOT WORK with kernel v3.10 (build from this repository) After that i did user@MACHINE:~/userKernel>git bisect start user@MACHINE:~/userKernel>git bisect good v3.9 user@MACHINE:~/userKernel>git bisect bad v3.10 and build, installed and tested the kernels until a "git bisect good" gave the following result: user@MACHINE:~/userKernel> git bisect good 42c6b129cd8c2aa5012a78ec39672e7052cc677a is the first bad commit commit 42c6b129cd8c2aa5012a78ec39672e7052cc677a Author: Johan Hedberg <johan.hedberg@intel.com> Date: Tue Mar 5 20:37:49 2013 +0200 Bluetooth: Use async requests internally in hci_req_sync This patch converts the hci_req_sync() procedure to internaly use the asynchronous HCI requests. The hci_req_sync mechanism relies on hci_req_complete() calls from hci_event.c into hci_core.c whenever a HCI command completes. This is very similar to what asynchronous requests do and makes the conversion fairly straight forward by converting hci_req_complete into a request complete callback. By this change hci_req_complete (renamed to hci_req_sync_complete) becomes private to hci_core.c and all calls to it can be removed from hci_event.c. The commands in each hci_req_sync procedure are collected into their own request by passing the hci_request pointer to the request callback (instead of the hci_dev pointer). The one slight exception is the HCI init request which has the special handling of HCI driver specific initialization commands. These commands are run in their own request prior to the "main" init request. One other extra change that this patch must contain is the handling of spontaneous HCI reset complete events that some controllers exhibit. These were previously handled in the hci_req_complete function but the right place for them now becomes the hci_req_cmd_complete function. Signed-off-by: Johan Hedberg <johan.hedberg@intel.com> Acked-by: Marcel Holtmann <marcel@holtmann.org> Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk> :040000 040000 21b49af0a84ddcc9f24019e0dafbe4cdf67d4775 39006edd5d248496cbfe00fe49388639d5a1d780 M include :040000 040000 4b337aeaf7e8d4807d8f03bec70b2217da3af9d8 a6ccec65b62857a86ceebffedaa2096959c49407 M net user@MACHINE:~/userKernel> An here is the result of "git bisect log" user@MACHINE:~/userKernel> git bisect log git bisect start # bad: [8bb495e3f02401ee6f76d1b1d77f3ac9f079e376] Linux 3.10 git bisect bad 8bb495e3f02401ee6f76d1b1d77f3ac9f079e376 # good: [c1be5a5b1b355d40e6cf79cc979eb66dafa24ad1] Linux 3.9 git bisect good c1be5a5b1b355d40e6cf79cc979eb66dafa24ad1 # bad: [20b4fb485227404329e41ad15588afad3df23050] Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs git bisect bad 20b4fb485227404329e41ad15588afad3df23050 # good: [19b344efa35dbc253e2d10403dafe6aafda73c56] Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid git bisect good 19b344efa35dbc253e2d10403dafe6aafda73c56 # bad: [20074f357da4a637430aec2879c9d864c5d2c23c] filter: fix va_list build error git bisect bad 20074f357da4a637430aec2879c9d864c5d2c23c # good: [953c96e0d85615d1ab1f100e525d376053294dc2] tg3: Use bool not int git bisect good 953c96e0d85615d1ab1f100e525d376053294dc2 # bad: [4de41bef3e075dbc787f7c53b3562f23295f1d6d] wil6210: Use cached copy of Tx descriptor git bisect bad 4de41bef3e075dbc787f7c53b3562f23295f1d6d # bad: [e73dcfbf061b524fe9aaef56cf3c2e234a45ec19] Bluetooth: hidp: fix sending output reports on intr channel git bisect bad e73dcfbf061b524fe9aaef56cf3c2e234a45ec19 # bad: [657e27656dfb3a99e81c99df6e78e770d7fe0d48] rtlwifi: usb: add NET_IP_ALIGN padding to RX skb when needed git bisect bad 657e27656dfb3a99e81c99df6e78e770d7fe0d48 # bad: [0227c7b56959cd8f5edd20b6a47db86fa553e91a] Bluetooth: fix error return code in rfcomm_add_listener() git bisect bad 0227c7b56959cd8f5edd20b6a47db86fa553e91a # bad: [77189df43114e85b563d039d0b7f23d4f8f71d79] bluetooth: btmrvl_sdio: look for sd8688 firmware in proper location git bisect bad 77189df43114e85b563d039d0b7f23d4f8f71d79 # good: [3119ae9599e5cdc1b9838563905c500b582ab6a5] Bluetooth: Add initial skeleton for asynchronous HCI requests git bisect good 3119ae9599e5cdc1b9838563905c500b582ab6a5 # bad: [d865b0070485dfbb0611c5dc07fff21c440858a5] Bluetooth: Remove empty HCI event handlers git bisect bad d865b0070485dfbb0611c5dc07fff21c440858a5 # good: [11714b3d7acee54eecf85d41c938923a02fdd054] Bluetooth: Fix stand-alone HCI command handling git bisect good 11714b3d7acee54eecf85d41c938923a02fdd054 # bad: [42c6b129cd8c2aa5012a78ec39672e7052cc677a] Bluetooth: Use async requests internally in hci_req_sync git bisect bad 42c6b129cd8c2aa5012a78ec39672e7052cc677a # good: [9238f36a5a5097018b90baa42c473d2f916a46f5] Bluetooth: Add request cmd_complete and cmd_status functions git bisect good 9238f36a5a5097018b90baa42c473d2f916a46f5 # first bad commit: [42c6b129cd8c2aa5012a78ec39672e7052cc677a] Bluetooth: Use async requests internally in hci_req_sync user@MACHINE:~/userKernel> Actually i had planned to compile my first kernel when beeing retired ... :-)) ... but now i'm looking forward to use my USB2.0 bluetooth dongle with the latest kernel.