Bug 1467797

Summary: [virtio-win][netkvm] guest mtu in device manager is not same as host_mtu
Product: Red Hat Enterprise Linux 7 Reporter: lijin <lijin>
Component: virtio-winAssignee: Yvugenfi <yvugenfi>
virtio-win sub component: virtio-win-prewhql QA Contact: Virtualization Bugs <virt-bugs>
Status: CLOSED WONTFIX Docs Contact:
Severity: medium    
Priority: medium CC: ailan
Version: 7.4   
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-07-06 12:10:08 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
screenshot of mtu in guest none

Description lijin 2017-07-05 08:02:22 UTC
Created attachment 1294485 [details]
screenshot of mtu in guest

Description of problem:


Version-Release number of selected component (if applicable):
virtio-win-prewhql

How reproducible:
100%

Steps to Reproduce:
1.boot guest with virtio-net-pci and set host_mtu=4000:
/usr/libexec/qemu-kvm \
  -M pc \
  -cpu host \
  -enable-kvm \
  -m 2G \
  -smp 4,cores=4 \
  -nodefconfig \
  -rtc base=localtime,driftfix=slew \
  -drive file=win2008-64-iso.qcow2,if=none,serial=virtioblk1,format=qcow2,cache=none,werror=stop,rerror=stop,id=drive-virtio-disk0,aio=native \
  -device ide-drive,drive=drive-virtio-disk0,id=virtio-disk0 \
  -device piix3-usb-uhci,id=usb \
  -device usb-tablet,id=tablet0 \
  -k en-us \
  -qmp tcp:0:4444,server,nowait \
  -boot menu=on \
  -monitor stdio \
  -cdrom en_windows_server_2008_datacenter_enterprise_standard_sp2_x64_dvd_342336.iso \
  -fda virtio-win-prewhql-0.1-140_amd64.vfd \
  -drive file=virtio-win-prewhql-0.1-140.iso,if=none,media=cdrom,id=drive-ide0-1-0,readonly=on,format=raw -device ide-drive,bus=ide.0,unit=0,drive=drive-ide0-1-0,id=ide0-1-0 \
  -vnc 0.0.0.0:1 -vga std \
  -netdev tap,id=hostnet1,script=/etc/qemu-ifup,vhost=on -device virtio-net-pci,host_mtu=4000,netdev=hostnet1,mac=4e:63:28:bc:b1:01,id=net1


2.check guest mtu in cmd:
# netsh interface ipv4 show subinterfaces

3.check guest mtu in device manager:
device manger -> Red Hat VirtIO Ethernet Adapter -> advanced -> Init.MTUsize


Actual results:
after step2,guest mtu is 4000 as expected.
MTU  MediaSenseState   Bytes In  Bytes Out  Interface
------  ---------------  ---------  ---------  -------------
4294967295                1          0          0  Loopback Pseudo-Interface 1
  4000                1      18556      16682  Local Area Connection

after step3,guest mtu in device manager is 1500,not 4000

Expected results:
after step3,guest mtu in device manager should be same as host_mtu

Additional info:

Comment 1 Yvugenfi@redhat.com 2017-07-06 12:10:08 UTC
This is by design.

We cannot fix or change dynamically  the MTU setting in Windows.

According to new addition in virtio spec we will read host configuration and negotiate MTU using guest settings.