hci_pi
int id = hci_pi(sk)->cookie;
hci_pi(sk)->cookie = id;
if (hci_pi(sk)->channel != HCI_CHANNEL_RAW) {
get_task_comm(hci_pi(sk)->comm, current);
int id = hci_pi(sk)->cookie;
hci_pi(sk)->cookie = 0;
hdev = hci_pi(sk)->hdev;
hci_pi(sk)->hdev = NULL;
if (hci_pi(sk)->hdev) {
hci_pi(sk)->channel = haddr.hci_channel;
hci_pi(sk)->hdev = hdev;
if (hci_pi(sk)->hdev) {
hci_pi(sk)->channel = haddr.hci_channel;
hci_pi(sk)->hdev = hdev;
hci_pi(sk)->channel = haddr.hci_channel;
hci_pi(sk)->channel = haddr.hci_channel;
hci_pi(sk)->channel = haddr.hci_channel;
if (hci_pi(sk)->channel == HCI_CHANNEL_CONTROL) {
if (!hci_pi(sk)->mtu)
hci_pi(sk)->mtu = HCI_MAX_FRAME_SIZE;
haddr->hci_channel= hci_pi(sk)->channel;
__u8 mask = hci_pi(sk)->cmsg_mask;
if (hci_pi(sk)->channel == HCI_CHANNEL_LOGGING)
switch (hci_pi(sk)->channel) {
if (hci_mgmt_chan_find(hci_pi(sk)->channel))
flt = &hci_pi(sk)->filter;
if (len < 4 || len > hci_pi(sk)->mtu)
switch (hci_pi(sk)->channel) {
chan = __hci_mgmt_chan_find(hci_pi(sk)->channel);
if (hci_pi(sk)->channel == HCI_CHANNEL_USER) {
if (hci_pi(sk)->channel != HCI_CHANNEL_RAW) {
hci_pi(sk)->cmsg_mask |= HCI_CMSG_DIR;
hci_pi(sk)->cmsg_mask &= ~HCI_CMSG_DIR;
hci_pi(sk)->cmsg_mask |= HCI_CMSG_TSTAMP;
hci_pi(sk)->cmsg_mask &= ~HCI_CMSG_TSTAMP;
struct hci_filter *f = &hci_pi(sk)->filter;
struct hci_filter *f = &hci_pi(sk)->filter;
switch (hci_pi(sk)->channel) {
hci_pi(sk)->mtu = opt;
if (hci_pi(sk)->channel != HCI_CHANNEL_RAW) {
if (hci_pi(sk)->cmsg_mask & HCI_CMSG_DIR)
if (hci_pi(sk)->cmsg_mask & HCI_CMSG_TSTAMP)
struct hci_filter *f = &hci_pi(sk)->filter;
if (sk->sk_state != BT_BOUND || hci_pi(sk)->hdev != hdev)
if (put_user(hci_pi(sk)->mtu, (u16 __user *)optval))
if (hci_pi(sk)->channel == HCI_CHANNEL_RAW) {
} else if (hci_pi(sk)->channel == HCI_CHANNEL_USER) {
if (hci_pi(sk)->channel != channel)
if (hci_pi(sk)->channel != HCI_CHANNEL_CONTROL)
put_unaligned_le32(hci_pi(sk)->cookie, skb_put(skb, 4));
if (!hci_pi(sk)->cookie)
switch (hci_pi(sk)->channel) {
put_unaligned_le32(hci_pi(sk)->cookie, skb_put(skb, 4));
skb_put_data(skb, hci_pi(sk)->comm, TASK_COMM_LEN);
if (hci_pi(sk)->hdev)
hdr->index = cpu_to_le16(hci_pi(sk)->hdev->id);
if (!hci_pi(sk)->cookie)
switch (hci_pi(sk)->channel) {
put_unaligned_le32(hci_pi(sk)->cookie, skb_put(skb, 4));
struct hci_dev *hdev = hci_pi(sk)->hdev;
if (hci_pi(sk)->hdev)
hdr->index = cpu_to_le16(hci_pi(sk)->hdev->id);
put_unaligned_le32(hci_pi(sk)->cookie, skb_put(skb, 4));
set_bit(nr, &hci_pi(sk)->flags);
clear_bit(nr, &hci_pi(sk)->flags);
if (hci_pi(sk)->hdev == hdev) {
return test_bit(nr, &hci_pi(sk)->flags);
return hci_pi(sk)->channel;
switch (hci_pi(sk)->channel) {
hdev = hci_pi(sk)->hdev;
if (hci_pi(sk)->channel == HCI_CHANNEL_USER &&
return hci_pi(sk)->cookie;