Bluetooth: hci_qca: Fix QCA6390 memdump failure
authorZijun Hu <zijuhu@codeaurora.org>
Fri, 29 May 2020 14:38:31 +0000 (22:38 +0800)
committerMarcel Holtmann <marcel@holtmann.org>
Mon, 1 Jun 2020 06:07:33 +0000 (08:07 +0200)
commite5aeebddfc312ea7bb55dfe6c7264e71a3b43992
treecb025b1fd8d9797e854dc842f5e366c626233b27
parentd3a0fe6b0988241c64ef4f6a1045423cc79a612a
Bluetooth: hci_qca: Fix QCA6390 memdump failure

QCA6390 memdump VSE sometimes come to bluetooth driver
with wrong sequence number as illustrated as follows:
frame # in dec: frame data in hex
1396: ff fd 01 08 74 05 00 37 8f 14
1397: ff fd 01 08 75 05 00 ff bf 38
1414: ff fd 01 08 86 05 00 fb 5e 4b
1399: ff fd 01 08 77 05 00 f3 44 0a
1400: ff fd 01 08 78 05 00 ca f7 41
it is mistook for controller missing packets, so results
in page fault after overwriting memdump buffer allocated.

Fixed by ignoring QCA6390 sequence number check and
checking buffer space before writing.

Signed-off-by: Zijun Hu <zijuhu@codeaurora.org>
Tested-by: Zijun Hu <zijuhu@codeaurora.org>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
drivers/bluetooth/hci_qca.c