--- vmnet-only/userif.c.bak 2005-03-24 22:51:05.137226320 +0200 +++ vmnet-only/userif.c 2005-03-24 22:52:01.325478596 +0200 @@ -560,7 +560,8 @@ u_int16_t csum16; skl = skb->h.raw - skb->data; - if (skb_copy_datagram(skb, 0, buf, skl)) { + struct iovec iov = { .iov_base = buf, .iov_len = skl }; + if (skb_copy_datagram_iovec(skb, 0, &iov, skl)) { return -EFAULT; } csum = VNetCsumCopyDatagram(skb, skl, buf + skl); @@ -572,7 +573,8 @@ return -EFAULT; } } else { - if (skb_copy_datagram(skb, 0, buf, count)) { + struct iovec iov = { .iov_base = buf, .iov_len = count }; + if (skb_copy_datagram_iovec(skb, 0, &iov, count)) { return -EFAULT; } }