Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 21 Apr 2019 16:06:25 +0000
From:      bugzilla-noreply@freebsd.org
To:        bugs@FreeBSD.org
Subject:   [Bug 237441] Virtio net consistently truncates last byte of a fetch xfer with > 8956 bytes of payload
Message-ID:  <bug-237441-227@https.bugs.freebsd.org/bugzilla/>

next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D237441

            Bug ID: 237441
           Summary: Virtio net consistently truncates last byte of a fetch
                    xfer with > 8956 bytes of payload
           Product: Base System
           Version: 12.0-RELEASE
          Hardware: amd64
                OS: Any
            Status: New
          Severity: Affects Some People
          Priority: ---
         Component: kern
          Assignee: bugs@FreeBSD.org
          Reporter: bugmenot@mailinator.com

Reading 215737 carefully, I couldn't decide if this was the same problem but
ultimately decided it wasn't.

Environment:  OSX High Sierra running QEMU and the 12.0 release qcow2 image
published on the FreeBSD site.

Qemu command line:  qemu-system-x86_64 -m 2048 -hda
FreeBSD-12.0-RELEASE-amd64.qcow2  -netdev
user,id=3Dmynet0,hostfwd=3Dtcp:127.0.0.1:7722-:22 -device
virtio-net-pci,netdev=3Dmynet0

Trying to install pkg fails.  If you do the following command:

fetch http://pkg.freebsd.org/FreeBSD:12:amd64/latest/Latest/pkg.txz

you will consistently get the following (Note:  with or without [TR]XCSUM
enabled):

fetch: pkg.txz appears to be truncated: 3395051/3395052 bytes

If you download the full package and use dd to grab all but the last byte, =
the
SHA256 sums match so the data's not corrupted, just missing the final byte =
(a
'Z') character.  Furthermore, if you run tcpdump in the guest against the
vtnet0 interface while it's transferring you can see the final 'Z' byte in =
the
final packet so qemu is getting the data to the guest.  If you then ktrace =
the
fetch process, you'll see that its final read *doesn't* have the 'Z' which
rules out a bug in fetch/libfetch.

Using fetch to test for sizing, I started downloading packages at the jumbo
frame boundary and found that packages <=3D 8956 bytes work and >=3D 8960 e=
xhibit
the failure.

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-237441-227>