diff options
author | Marcel Holtmann <marcel@holtmann.org> | 2014-06-08 05:22:28 -0400 |
---|---|---|
committer | Marcel Holtmann <marcel@holtmann.org> | 2014-07-03 11:42:42 -0400 |
commit | d9fbd02be5c201c1659ee0d79c0820bb68d95c8c (patch) | |
tree | b2f7aa9fa77a90c45e5e5eeda0d47e16ef452c4c /net/bluetooth/a2mp.c | |
parent | 0775899158d0e1436316f3bf451d78bf34b88d17 (diff) |
Bluetooth: Use explicit header and body length for L2CAP SKB allocation
When allocating the L2CAP SKB for transmission, provide the upper layers
with a clear distinction on what is the header and what is the body
portion of the SKB.
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
Diffstat (limited to 'net/bluetooth/a2mp.c')
-rw-r--r-- | net/bluetooth/a2mp.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/net/bluetooth/a2mp.c b/net/bluetooth/a2mp.c index 1a5b1eb96d1a..0fd8d1dda709 100644 --- a/net/bluetooth/a2mp.c +++ b/net/bluetooth/a2mp.c | |||
@@ -693,11 +693,12 @@ static void a2mp_chan_state_change_cb(struct l2cap_chan *chan, int state, | |||
693 | } | 693 | } |
694 | 694 | ||
695 | static struct sk_buff *a2mp_chan_alloc_skb_cb(struct l2cap_chan *chan, | 695 | static struct sk_buff *a2mp_chan_alloc_skb_cb(struct l2cap_chan *chan, |
696 | unsigned long hdr_len, | ||
696 | unsigned long len, int nb) | 697 | unsigned long len, int nb) |
697 | { | 698 | { |
698 | struct sk_buff *skb; | 699 | struct sk_buff *skb; |
699 | 700 | ||
700 | skb = bt_skb_alloc(len, GFP_KERNEL); | 701 | skb = bt_skb_alloc(hdr_len + len, GFP_KERNEL); |
701 | if (!skb) | 702 | if (!skb) |
702 | return ERR_PTR(-ENOMEM); | 703 | return ERR_PTR(-ENOMEM); |
703 | 704 | ||