From: Ranulf Doswell &lt;<a href="mailto:ralf@ranulf.net">ralf@ranulf.net</a>&gt;<br><br>Send a reset command to any device that sends us data when there is no active<br>connection to that device. This hopefully discourages the device from sending
<br>any more data which causes the syslog to fill up rapidly otherwise.<br><br>Signed-off-by: Ranulf Doswell &lt;<a href="mailto:ralf@ranulf.net">ralf@ranulf.net</a>&gt;<br><br>---<br><br>An example device which causes this problem is the Sony Playstation six-axis
<br>controller which continues sending data even after the host is rebooted as<br>the linux kernel stack returns before the controller&#39;s stack times out.<br><br>This patch is against 2.6.22-rc5<br><br>diff --git a/net/bluetooth/hci_core.c b/net/bluetooth/hci_core.c
<br>index 8943c93..fb99b95 100644<br>--- a/net/bluetooth/hci_core.c<br>+++ b/net/bluetooth/hci_core.c<br>@@ -1340,6 +1340,12 @@ static inline void hci_acldata_packet(struct hci_dev *hdev, struct sk_buff *skb)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } else {
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; BT_ERR(&quot;%s ACL packet for unknown connection handle %d&quot;,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; hdev-&gt;name, handle);<br>+<br>+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /* Force the device to reset in the hope that it will then<br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * leave us alone. In some devices, a reboot doesn&#39;t provide<br>+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * enough time for the device&#39;s stack to time out, so it keeps<br>+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * sending data until forcibly terminated. */
<br>+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; hci_reset_req(hdev, 0);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; kfree_skb(skb);<br><br>