Bug 1021614 - Network address not reported to HyperV when running on Windows 2012 R2
Network address not reported to HyperV when running on Windows 2012 R2
Product: Fedora
Classification: Fedora
Component: kernel (Show other bugs)
x86_64 Linux
unspecified Severity medium
: ---
: ---
Assigned To: Kernel Maintainer List
Fedora Extras Quality Assurance
: Triaged
Depends On:
  Show dependency treegraph
Reported: 2013-10-21 12:00 EDT by Sitsofe Wheeler
Modified: 2013-12-24 09:05 EST (History)
8 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2013-12-24 09:05:45 EST
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

  None (edit)
Description Sitsofe Wheeler 2013-10-21 12:00:02 EDT
Description of problem:
Network addresses are not being reported back to HyperV when running a VM on Windows 2012 R2.

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

How reproducible:
Reproducible every time.

Steps to Reproduce:
1. Boot Fedora VM that is running the kvpd service (previously enabled by systemctl enable hypervkvpd.service)
2. Go to Windows 2012's powershell and type
(Get-VM Fedora*).NetworkAdapters.IPAddresses
(this assumes your VM is called Fedora)

Actual results:
No output.

Expected results:
IP addresses.

Additional info:
This worked with plain old 2012 but the server has been upgraded so I guess something has been changed and presumably something somewhere needs to be updated (possibly kvpd or the kernel).
Comment 1 Tomáš Hozza 2013-10-22 03:24:08 EDT

Unfortunately I don't have Windows 2012 R2 available to test Fedora VM on. I
checked the upstream git and there seems to be no related issue fixed since
the snapshot available in Fedora at the moment.

I can however update daemons to the latest git snapshot. If it won't help you
I will change the bug to kernel (although I wouldn't count on they will fix it
any time soon).
Comment 2 Tomáš Hozza 2013-10-22 04:02:19 EDT
Please test:
Comment 3 Tomáš Hozza 2013-10-22 07:34:35 EDT
Also please check /var/log/messages or the systemd journal or dmesg for any
suspicious log messages.
Comment 4 Sitsofe Wheeler 2013-10-22 13:26:17 EDT
Sadly the updated package made no difference and neither dmesg nor the journal contain any suspicious messages. In the interests of trying to get this fixed I'm going to try and cc a microsoft developer on this issue.

(Just for the record the kernel is 3.11.4-201.fc19.x86_64 which I'd say is pretty new...
Comment 5 K. Y. Srinivasan 2013-10-22 16:59:06 EDT

I fixed a couple of bugs that addressed this very issue sometime back:

Version negotiation for util driver. I think there are a couple of patches here.

Fix in the daemon to properly terminate each enumerated IP address.

Could you check if these are picked up.
Comment 6 Sitsofe Wheeler 2013-10-22 17:27:07 EDT
So in the kernel commit 6741335bc7294548ac95cb1f4671991ff30da193 and commit b4919a5f95c09992f66d4b7cbe392c33731a5cec in the daemon... is that all of them? Should these patches also be CC'd to stable?
Comment 7 K. Y. Srinivasan 2013-10-22 18:42:55 EDT
You probably want to pickup these patches as well:

commit 3a4916050ba2e0f1d114ef540abdf02b2b173e61
Author: K. Y. Srinivasan <kys@microsoft.com>
Date:   Fri Sep 6 11:49:56 2013 -0700

    Drivers: hv: util: Correctly support ws2008R2 and earlier

    The current code does not correctly negotiate the version numbers for the util
    driver when hosted on earlier hosts. The version numbers presented by this
    driver were not compatible with the version numbers supported by Windows Server
    2008. Fix this problem.

Yeah; may be I should have tagged these appropriately for inclusion Stable.
Comment 8 Tomáš Hozza 2013-10-23 02:50:43 EDT
Hi K.Y.

The daemon code is the latest from linux-next branch [1]. It also includes the IP
address enumeration fix.

[1] https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/log/tools/hv/hv_kvp_daemon.c

As it looks that kernel needs to pick up some more patches, I'm reassigning this
to kernel...
Comment 9 Josh Boyer 2013-10-23 08:21:14 EDT
K.Y., you can always ask Greg to pull them into 3.11.y if they are fairly self-contained.

Are we sure those are the only commits needed?
Comment 10 K. Y. Srinivasan 2013-10-24 16:17:52 EDT
I think this should be it. I will check with Greg.
Comment 11 K. Y. Srinivasan 2013-10-24 16:28:25 EDT
One of the patches is more than 300 lines and does not meet the requirement for back-porting to stable.
Comment 12 Josh Boyer 2013-11-18 14:31:22 EST
Both of the commits are in the 3.12 release.  F19 will be getting 3.12 in not too long, so we'll hold off until that rebase happens.
Comment 13 Sitsofe Wheeler 2013-12-22 02:06:47 EST
This is fixed - the current network settings of the guest Fedora VM are being reported back to the 2012 host.

Version information:

However I have feeling something is still wrong somewhere. When I initially ran
(Get-VM Fedora*).NetworkAdapters.IPAddresses
(which was about a day after the VM had been upgraded to the new kernel) it wound up hanging forever. After rebooting the VM said command now returns immediately. At any rate that's something for another bug. Resolve this CLOSED?
Comment 14 Josh Boyer 2013-12-24 09:05:45 EST
Thanks for letting us know.

Note You need to log in before you can comment on or make changes to this bug.