diff -up gpxe-1.0.1/src/drivers/net/virtio-net.c.framelength gpxe-1.0.1/src/drivers/net/virtio-net.c --- gpxe-1.0.1/src/drivers/net/virtio-net.c.framelength 2010-06-29 15:31:33.000000000 -0400 +++ gpxe-1.0.1/src/drivers/net/virtio-net.c 2010-12-09 15:21:41.840551913 -0500 @@ -170,7 +170,7 @@ static void virtnet_transmit(struct nic list[0].addr = (char*)&tx_virtio_hdr; list[0].length = sizeof(struct virtio_net_hdr); list[1].addr = (char*)&tx_eth_frame; - list[1].length = ETH_FRAME_LEN; + list[1].length = sizeof(tx_eth_frame.hdr) + len; vring_add_buf(&virtqueue[TX_INDEX], list, 2, 0, 0, 0);