|
@@ -2256,7 +2256,6 @@ static inline void hci_role_change_evt(struct hci_dev *hdev, struct sk_buff *skb
|
|
static inline void hci_num_comp_pkts_evt(struct hci_dev *hdev, struct sk_buff *skb)
|
|
static inline void hci_num_comp_pkts_evt(struct hci_dev *hdev, struct sk_buff *skb)
|
|
{
|
|
{
|
|
struct hci_ev_num_comp_pkts *ev = (void *) skb->data;
|
|
struct hci_ev_num_comp_pkts *ev = (void *) skb->data;
|
|
- __le16 *ptr;
|
|
|
|
int i;
|
|
int i;
|
|
|
|
|
|
skb_pull(skb, sizeof(*ev));
|
|
skb_pull(skb, sizeof(*ev));
|
|
@@ -2273,12 +2272,13 @@ static inline void hci_num_comp_pkts_evt(struct hci_dev *hdev, struct sk_buff *s
|
|
return;
|
|
return;
|
|
}
|
|
}
|
|
|
|
|
|
- for (i = 0, ptr = (__le16 *) skb->data; i < ev->num_hndl; i++) {
|
|
|
|
|
|
+ for (i = 0; i < ev->num_hndl; i++) {
|
|
|
|
+ struct hci_comp_pkts_info *info = &ev->handles[i];
|
|
struct hci_conn *conn;
|
|
struct hci_conn *conn;
|
|
__u16 handle, count;
|
|
__u16 handle, count;
|
|
|
|
|
|
- handle = get_unaligned_le16(ptr++);
|
|
|
|
- count = get_unaligned_le16(ptr++);
|
|
|
|
|
|
+ handle = __le16_to_cpu(info->handle);
|
|
|
|
+ count = __le16_to_cpu(info->count);
|
|
|
|
|
|
conn = hci_conn_hash_lookup_handle(hdev, handle);
|
|
conn = hci_conn_hash_lookup_handle(hdev, handle);
|
|
if (!conn)
|
|
if (!conn)
|