diff options
author | Andrei Emeltchenko <andrei.emeltchenko@intel.com> | 2012-01-20 12:08:03 (GMT) |
---|---|---|
committer | Johan Hedberg <johan.hedberg@intel.com> | 2012-02-13 15:01:29 (GMT) |
commit | 2f7719ce54bf6e877987f6ef578b580a51d8c2e3 (patch) | |
tree | fa996b4c081a66de50f6b11a82dac545626622ed /net/bluetooth/l2cap_sock.c | |
parent | d22015aad40b4316f0f74c8e410debca44c3e6e2 (diff) | |
download | linux-2f7719ce54bf6e877987f6ef578b580a51d8c2e3.tar.xz |
Bluetooth: Add alloc_skb chan operator
Add channel-specific skb allocation method
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
Acked-by: Marcel Holtmann <marcel@holtmann.org>
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
Diffstat (limited to 'net/bluetooth/l2cap_sock.c')
-rw-r--r-- | net/bluetooth/l2cap_sock.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/net/bluetooth/l2cap_sock.c b/net/bluetooth/l2cap_sock.c index 401d942..1636029 100644 --- a/net/bluetooth/l2cap_sock.c +++ b/net/bluetooth/l2cap_sock.c @@ -899,12 +899,21 @@ static void l2cap_sock_state_change_cb(void *data, int state) sk->sk_state = state; } +static struct sk_buff *l2cap_sock_alloc_skb_cb(struct l2cap_chan *chan, + unsigned long len, int nb, int *err) +{ + struct sock *sk = chan->sk; + + return bt_skb_send_alloc(sk, len, nb, err); +} + static struct l2cap_ops l2cap_chan_ops = { .name = "L2CAP Socket Interface", .new_connection = l2cap_sock_new_connection_cb, .recv = l2cap_sock_recv_cb, .close = l2cap_sock_close_cb, .state_change = l2cap_sock_state_change_cb, + .alloc_skb = l2cap_sock_alloc_skb_cb, }; static void l2cap_sock_destruct(struct sock *sk) |