Lines Matching +full:- +full:- +full:target +full:- +full:list
1 /* SPDX-License-Identifier: GPL-2.0 */
18 #define VIRTIO_VSOCK_SKB_CB(skb) ((struct virtio_vsock_skb_cb *)((skb)->cb))
22 return (struct virtio_vsock_hdr *)skb->head; in virtio_vsock_hdr()
27 return VIRTIO_VSOCK_SKB_CB(skb)->reply; in virtio_vsock_skb_reply()
32 VIRTIO_VSOCK_SKB_CB(skb)->reply = true; in virtio_vsock_skb_set_reply()
37 return VIRTIO_VSOCK_SKB_CB(skb)->tap_delivered; in virtio_vsock_skb_tap_delivered()
42 VIRTIO_VSOCK_SKB_CB(skb)->tap_delivered = true; in virtio_vsock_skb_set_tap_delivered()
47 VIRTIO_VSOCK_SKB_CB(skb)->tap_delivered = false; in virtio_vsock_skb_clear_tap_delivered()
54 len = le32_to_cpu(virtio_vsock_hdr(skb)->len); in virtio_vsock_skb_rx_put()
76 virtio_vsock_skb_queue_head(struct sk_buff_head *list, struct sk_buff *skb) in virtio_vsock_skb_queue_head() argument
78 spin_lock_bh(&list->lock); in virtio_vsock_skb_queue_head()
79 __skb_queue_head(list, skb); in virtio_vsock_skb_queue_head()
80 spin_unlock_bh(&list->lock); in virtio_vsock_skb_queue_head()
84 virtio_vsock_skb_queue_tail(struct sk_buff_head *list, struct sk_buff *skb) in virtio_vsock_skb_queue_tail() argument
86 spin_lock_bh(&list->lock); in virtio_vsock_skb_queue_tail()
87 __skb_queue_tail(list, skb); in virtio_vsock_skb_queue_tail()
88 spin_unlock_bh(&list->lock); in virtio_vsock_skb_queue_tail()
91 static inline struct sk_buff *virtio_vsock_skb_dequeue(struct sk_buff_head *list) in virtio_vsock_skb_dequeue() argument
95 spin_lock_bh(&list->lock); in virtio_vsock_skb_dequeue()
96 skb = __skb_dequeue(list); in virtio_vsock_skb_dequeue()
97 spin_unlock_bh(&list->lock); in virtio_vsock_skb_dequeue()
102 static inline void virtio_vsock_skb_queue_purge(struct sk_buff_head *list) in virtio_vsock_skb_queue_purge() argument
104 spin_lock_bh(&list->lock); in virtio_vsock_skb_queue_purge()
105 __skb_queue_purge(list); in virtio_vsock_skb_queue_purge()
106 spin_unlock_bh(&list->lock); in virtio_vsock_skb_queue_purge()
111 return (size_t)(skb_end_pointer(skb) - skb->head); in virtio_vsock_skb_len()
125 /* Per-socket state (accessed via vsk->trans) */
168 * transport - this means that this transport doesn't need
206 size_t target,
210 size_t target,
214 size_t target, struct vsock_transport_recv_notify_data *data);
216 size_t target, struct vsock_transport_recv_notify_data *data);
218 size_t target, struct vsock_transport_recv_notify_data *data);
220 size_t target, ssize_t copied, bool data_read,
263 int virtio_transport_purge_skbs(void *vsk, struct sk_buff_head *list);