Minor fix for virtio: code wanting to access the fields inside an skb
frag should use the skb_frag_*() helpers, instead of accessing the
fields directly. This allows for extensions where the underlying
memory is not a page.

Signed-off-by: Mina Almasry <almasrym...@google.com>

---

v2:

- Also fix skb_frag_off() + skb_frag_size() (David)
- Did not apply the reviewed-by from Stefano since the patch changed
relatively much.

---
 net/vmw_vsock/virtio_transport.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/net/vmw_vsock/virtio_transport.c b/net/vmw_vsock/virtio_transport.c
index f495b9e5186b..1748268e0694 100644
--- a/net/vmw_vsock/virtio_transport.c
+++ b/net/vmw_vsock/virtio_transport.c
@@ -153,10 +153,10 @@ virtio_transport_send_pkt_work(struct work_struct *work)
                                 * 'virt_to_phys()' later to fill the buffer 
descriptor.
                                 * We don't touch memory at "virtual" address 
of this page.
                                 */
-                               va = page_to_virt(skb_frag->bv_page);
+                               va = page_to_virt(skb_frag_page(skb_frag));
                                sg_init_one(sgs[out_sg],
-                                           va + skb_frag->bv_offset,
-                                           skb_frag->bv_len);
+                                           va + skb_frag_off(skb_frag),
+                                           skb_frag_size(skb_frag));
                                out_sg++;
                        }
                }
-- 
2.43.0.472.g3155946c3a-goog


Reply via email to