Hi Tomas, > A Bluetooth device experiencing hardware failure may issue > a HARDWARE_ERROR hci event. The reaction to this event is device > reset flow implemented in following sequence. > > 1. Notify: HCI_DEV_DOWN > 2. Reinitialize internal structures. > 3. Call driver flush function > 4. Send HCI reset request to the device. > 5. Send HCI init sequence reset to the device. > 6. Notify HCI_DEV_UP. I prefer if we create a generic per controller workqueue first before having a workqueue for every task. Something similar to what the mac80211 layer offers right now. Also in a second step we might wanna move the HCI event processing completely into a workqueue. If we get no performance hit with that, then sysfs handling and device reset becomes a lot simpler and less prone to race conditions with device removal. Regards Marcel -- 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