> -----Original Message----- > From: Marcel Holtmann [mailto:marcel@xxxxxxxxxxxx] > Sent: Tuesday, March 09, 2010 3:03 AM > To: Winkler, Tomas > Cc: linux-bluetooth@xxxxxxxxxxxxxxx; Cohen, Guy; Rindjunsky, Ron; Paskar, > Gregory > Subject: Re: [bluetooth-next V2] Bluetooth: handle device reset event > > 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. That would be good approach but we are using default kernel workqueue in this solution so there is no workqueue for every task. I'm not sure if this effort should block this patch. > 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. Looks good to me. So when this is ready we can move also the reset also to per controller queue. Thanks Tomas --------------------------------------------------------------------- Intel Israel (74) Limited This e-mail and any attachments may contain confidential material for the sole use of the intended recipient(s). Any review or distribution by others is strictly prohibited. If you are not the intended recipient, please contact the sender and delete all copies. ��.n��������+%������w��{.n�����{����^n�r������&��z�ޗ�zf���h���~����������_��+v���)ߣ�m