* 2.6.29-rc5+: usb bluetooth crashes system @ 2009-03-10 11:23 Pavel Machek 2009-03-14 3:48 ` Greg KH 2009-03-14 18:56 ` Rafael J. Wysocki 0 siblings, 2 replies; 9+ messages in thread From: Pavel Machek @ 2009-03-10 11:23 UTC (permalink / raw) To: kernel list Hi! Since switch to 2.6.29-rc, bluetooth crashes system... usually on disconnect or killall pppd. Pavel -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: 2.6.29-rc5+: usb bluetooth crashes system 2009-03-10 11:23 2.6.29-rc5+: usb bluetooth crashes system Pavel Machek @ 2009-03-14 3:48 ` Greg KH 2009-03-16 11:44 ` Pavel Machek 2009-03-14 18:56 ` Rafael J. Wysocki 1 sibling, 1 reply; 9+ messages in thread From: Greg KH @ 2009-03-14 3:48 UTC (permalink / raw) To: Pavel Machek; +Cc: kernel list On Tue, Mar 10, 2009 at 12:23:07PM +0100, Pavel Machek wrote: > Hi! > > Since switch to 2.6.29-rc, bluetooth crashes system... usually on > disconnect or killall pppd. Do we have a trace? ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: 2.6.29-rc5+: usb bluetooth crashes system 2009-03-14 3:48 ` Greg KH @ 2009-03-16 11:44 ` Pavel Machek 2009-03-17 9:39 ` Marcel Holtmann 0 siblings, 1 reply; 9+ messages in thread From: Pavel Machek @ 2009-03-16 11:44 UTC (permalink / raw) To: Greg KH; +Cc: kernel list On Fri 2009-03-13 20:48:52, Greg KH wrote: > On Tue, Mar 10, 2009 at 12:23:07PM +0100, Pavel Machek wrote: > > Hi! > > > > Since switch to 2.6.29-rc, bluetooth crashes system... usually on > > disconnect or killall pppd. > > Do we have a trace? We have "bad magic" message, see bugzilla. I guess it is use of spinlock after free? Pavel -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: 2.6.29-rc5+: usb bluetooth crashes system 2009-03-16 11:44 ` Pavel Machek @ 2009-03-17 9:39 ` Marcel Holtmann 2009-03-19 22:50 ` Pavel Machek 0 siblings, 1 reply; 9+ messages in thread From: Marcel Holtmann @ 2009-03-17 9:39 UTC (permalink / raw) To: Pavel Machek; +Cc: Greg KH, kernel list Hi Pavel, >>> Since switch to 2.6.29-rc, bluetooth crashes system... usually on >>> disconnect or killall pppd. >> >> Do we have a trace? > > We have "bad magic" message, see bugzilla. I guess it is use of > spinlock after free? can you double check with the net-next-2.6 or bluetooth-next-2.6 tree and see if that issue is still present. Regards Marcel ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: 2.6.29-rc5+: usb bluetooth crashes system 2009-03-17 9:39 ` Marcel Holtmann @ 2009-03-19 22:50 ` Pavel Machek 2009-03-26 9:58 ` Pavel Machek 0 siblings, 1 reply; 9+ messages in thread From: Pavel Machek @ 2009-03-19 22:50 UTC (permalink / raw) To: Marcel Holtmann; +Cc: Greg KH, kernel list On Tue 2009-03-17 10:39:54, Marcel Holtmann wrote: > Hi Pavel, > >>>> Since switch to 2.6.29-rc, bluetooth crashes system... usually on >>>> disconnect or killall pppd. >>> >>> Do we have a trace? >> >> We have "bad magic" message, see bugzilla. I guess it is use of >> spinlock after free? > > can you double check with the net-next-2.6 or bluetooth-next-2.6 tree > and see if that issue is still present. Well, I took btusb.c from 2.6.28 and that fixed the issue; so we know the regression is in btusb.c file between 28 and 29-rc7. If you have specific version of btusb.c you want me to test, please mail it to me. Pavel -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: 2.6.29-rc5+: usb bluetooth crashes system 2009-03-19 22:50 ` Pavel Machek @ 2009-03-26 9:58 ` Pavel Machek 2009-03-26 12:11 ` Oliver Neukum 0 siblings, 1 reply; 9+ messages in thread From: Pavel Machek @ 2009-03-26 9:58 UTC (permalink / raw) To: Marcel Holtmann, Rafael J. Wysocki; +Cc: Greg KH, kernel list Hi! > >>>> Since switch to 2.6.29-rc, bluetooth crashes system... usually on > >>>> disconnect or killall pppd. > >>> > >>> Do we have a trace? > >> > >> We have "bad magic" message, see bugzilla. I guess it is use of > >> spinlock after free? > > > > can you double check with the net-next-2.6 or bluetooth-next-2.6 tree > > and see if that issue is still present. > > Well, I took btusb.c from 2.6.28 and that fixed the issue; so we know > the regression is in btusb.c file between 28 and 29-rc7. If you have > specific version of btusb.c you want me to test, please mail it to me. This smaller patch (partial revert of btusb.c to 2.6.28 state) seems to help, too.... Pavel diff --git a/drivers/bluetooth/btusb.c b/drivers/bluetooth/btusb.c index b5fbda6..75f9fc0 100644 --- a/drivers/bluetooth/btusb.c +++ b/drivers/bluetooth/btusb.c @@ -655,19 +680,8 @@ static void btusb_notify(struct hci_dev *hdev, unsigned int evt) BT_DBG("%s evt %d", hdev->name, evt); - if (hdev->conn_hash.acl_num > 0) { - if (!test_and_set_bit(BTUSB_BULK_RUNNING, &data->flags)) { - if (btusb_submit_bulk_urb(hdev, GFP_ATOMIC) < 0) - clear_bit(BTUSB_BULK_RUNNING, &data->flags); - else - btusb_submit_bulk_urb(hdev, GFP_ATOMIC); - } - } else { - clear_bit(BTUSB_BULK_RUNNING, &data->flags); - usb_unlink_anchored_urbs(&data->bulk_anchor); - } - - schedule_work(&data->work); + if (evt == HCI_NOTIFY_CONN_ADD || evt == HCI_NOTIFY_CONN_DEL) + schedule_work(&data->work); } static int inline __set_isoc_interface(struct hci_dev *hdev, int altsetting) @@ -718,6 +732,18 @@ static void btusb_work(struct work_struct *work) struct btusb_data *data = container_of(work, struct btusb_data, work); struct hci_dev *hdev = data->hdev; + if (hdev->conn_hash.acl_num > 0) { + if (!test_and_set_bit(BTUSB_BULK_RUNNING, &data->flags)) { + if (btusb_submit_bulk_urb(hdev) < 0) + clear_bit(BTUSB_BULK_RUNNING, &data->flags); + else + btusb_submit_bulk_urb(hdev); + } + } else { + clear_bit(BTUSB_BULK_RUNNING, &data->flags); + usb_kill_anchored_urbs(&data->bulk_anchor); + } + if (hdev->conn_hash.sco_num > 0) { if (data->isoc_altsetting != 2) { clear_bit(BTUSB_ISOC_RUNNING, &data->flags); @@ -852,23 +876,9 @@ static int btusb_probe(struct usb_interface *intf, if (id->driver_info & BTUSB_BROKEN_ISOC) data->isoc = NULL; - if (id->driver_info & BTUSB_DIGIANSWER) { - data->cmdreq_type = USB_TYPE_VENDOR; - set_bit(HCI_QUIRK_NO_RESET, &hdev->quirks); - } - - if (id->driver_info & BTUSB_CSR) { - struct usb_device *udev = data->udev; - - /* Old firmware would otherwise execute USB reset */ - if (le16_to_cpu(udev->descriptor.bcdDevice) < 0x117) - set_bit(HCI_QUIRK_NO_RESET, &hdev->quirks); - } - if (id->driver_info & BTUSB_SNIFFER) { struct usb_device *udev = data->udev; - /* New sniffer firmware has crippled HCI interface */ if (le16_to_cpu(udev->descriptor.bcdDevice) > 0x997) set_bit(HCI_QUIRK_RAW_DEVICE, &hdev->quirks); -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html ^ permalink raw reply related [flat|nested] 9+ messages in thread
* Re: 2.6.29-rc5+: usb bluetooth crashes system 2009-03-26 9:58 ` Pavel Machek @ 2009-03-26 12:11 ` Oliver Neukum 2009-03-25 16:22 ` Marcel Holtmann 0 siblings, 1 reply; 9+ messages in thread From: Oliver Neukum @ 2009-03-26 12:11 UTC (permalink / raw) To: Pavel Machek; +Cc: Marcel Holtmann, Rafael J. Wysocki, Greg KH, kernel list Am Donnerstag 26 März 2009 10:58:56 schrieb Pavel Machek: > > Well, I took btusb.c from 2.6.28 and that fixed the issue; so we know > > the regression is in btusb.c file between 28 and 29-rc7. If you have > > specific version of btusb.c you want me to test, please mail it to me. > > This smaller patch (partial revert of btusb.c to 2.6.28 state) seems > to help, too.... Could you test whether reversing the changes to btusb_probe() alone helps? Regards Oliver ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: 2.6.29-rc5+: usb bluetooth crashes system 2009-03-26 12:11 ` Oliver Neukum @ 2009-03-25 16:22 ` Marcel Holtmann 0 siblings, 0 replies; 9+ messages in thread From: Marcel Holtmann @ 2009-03-25 16:22 UTC (permalink / raw) To: Oliver Neukum; +Cc: Pavel Machek, Rafael J. Wysocki, Greg KH, kernel list Hi Oliver, > > > Well, I took btusb.c from 2.6.28 and that fixed the issue; so we know > > > the regression is in btusb.c file between 28 and 29-rc7. If you have > > > specific version of btusb.c you want me to test, please mail it to me. > > > > This smaller patch (partial revert of btusb.c to 2.6.28 state) seems > > to help, too.... > > Could you test whether reversing the changes to btusb_probe() alone > helps? just test net-next-2.6 or latest Linus' tree once he pulled the networking changes from Dave. We had to partly revert that change for some hardware. Believe it or not, but some Bluetooth chips don't work if we don't submit the bulk URBs along with the interrupt URBs. Regards Marcel ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: 2.6.29-rc5+: usb bluetooth crashes system 2009-03-10 11:23 2.6.29-rc5+: usb bluetooth crashes system Pavel Machek 2009-03-14 3:48 ` Greg KH @ 2009-03-14 18:56 ` Rafael J. Wysocki 1 sibling, 0 replies; 9+ messages in thread From: Rafael J. Wysocki @ 2009-03-14 18:56 UTC (permalink / raw) To: Pavel Machek; +Cc: kernel list On Tuesday 10 March 2009, Pavel Machek wrote: > Hi! > > Since switch to 2.6.29-rc, bluetooth crashes system... usually on > disconnect or killall pppd. OK, I _guess_ you have switched from 2.6.28. Thanks, Rafael ^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2009-03-26 17:41 UTC | newest] Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2009-03-10 11:23 2.6.29-rc5+: usb bluetooth crashes system Pavel Machek 2009-03-14 3:48 ` Greg KH 2009-03-16 11:44 ` Pavel Machek 2009-03-17 9:39 ` Marcel Holtmann 2009-03-19 22:50 ` Pavel Machek 2009-03-26 9:58 ` Pavel Machek 2009-03-26 12:11 ` Oliver Neukum 2009-03-25 16:22 ` Marcel Holtmann 2009-03-14 18:56 ` Rafael J. Wysocki
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).