Displaying 2 results from an estimated 2 matches for "virtio_vsock_skb_has_frag".
Did you mean:
virtio_vsock_skb_has_frags
2023 Feb 16
0
[RFC PATCH v1 04/12] vhost/vsock: non-linear skb handling support
...struct vhost_vsock *vhost_vsock_get(u32 guest_cid)
> return NULL;
> }
>
>+static int vhost_transport_copy_nonlinear_skb(struct sk_buff *skb,
>+ struct iov_iter *iov_iter,
>+ size_t len)
>+{
>+ size_t rest_len = len;
>+
>+ while (rest_len && virtio_vsock_skb_has_frags(skb)) {
>+ struct bio_vec *curr_vec;
>+ size_t curr_vec_end;
>+ size_t to_copy;
>+ int curr_frag;
>+ int curr_offs;
>+
>+ curr_frag = VIRTIO_VSOCK_SKB_CB(skb)->curr_frag;
>+ curr_offs = VIRTIO_VSOCK_SKB_CB(skb)->frag_off;
>+ curr_vec = &skb_shinfo(skb)-...
2023 Feb 16
0
[RFC PATCH v1 06/12] vsock/virtio: non-linear skb handling for TAP dev
...+101,39 @@ virtio_transport_alloc_skb(struct virtio_vsock_pkt_info *info,
> return NULL;
> }
>
>+static void virtio_transport_copy_nonlinear_skb(struct sk_buff *skb,
>+ void *dst,
>+ size_t len)
>+{
>+ size_t rest_len = len;
>+
>+ while (rest_len && virtio_vsock_skb_has_frags(skb)) {
>+ struct bio_vec *curr_vec;
>+ size_t curr_vec_end;
>+ size_t to_copy;
>+ int curr_frag;
>+ int curr_offs;
>+
>+ curr_frag = VIRTIO_VSOCK_SKB_CB(skb)->curr_frag;
>+ curr_offs = VIRTIO_VSOCK_SKB_CB(skb)->frag_off;
>+ curr_vec = &skb_shinfo(skb)-...