<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/hv/hv_util.c, branch linux-4.4.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.4.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.4.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2018-10-20T07:52:38Z</updated>
<entry>
<title>Drivers: hv: util: Pass the channel information during the init call</title>
<updated>2018-10-20T07:52:38Z</updated>
<author>
<name>K. Y. Srinivasan</name>
</author>
<published>2016-02-26T23:13:19Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=eaee7976cf2af79c294ab41d651c0e52488ca868'/>
<id>urn:sha1:eaee7976cf2af79c294ab41d651c0e52488ca868</id>
<content type='text'>
commit b9830d120cbe155863399f25eaef6aa8353e767f upstream.

Pass the channel information to the util drivers that need to defer
reading the channel while they are processing a request. This would address
the following issue reported by Vitaly:

Commit 3cace4a61610 ("Drivers: hv: utils: run polling callback always in
interrupt context") removed direct *_transaction.state = HVUTIL_READY
assignments from *_handle_handshake() functions introducing the following
race: if a userspace daemon connects before we get first non-negotiation
request from the server hv_poll_channel() won't set transaction state to
HVUTIL_READY as (!channel) condition will fail, we set it to non-NULL on
the first real request from the server.

Signed-off-by: K. Y. Srinivasan &lt;kys@microsoft.com&gt;
Reported-by: Vitaly Kuznetsov &lt;vkuznets@redhat.com&gt;
Signed-off-by: Dexuan Cui &lt;decui@microsoft.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>hv: do not lose pending heartbeat vmbus packets</title>
<updated>2016-11-10T15:36:34Z</updated>
<author>
<name>Long Li</name>
</author>
<published>2016-10-05T23:57:46Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=fde4a5f237ab58fb1f2ec2d0405292eb4a04dff4'/>
<id>urn:sha1:fde4a5f237ab58fb1f2ec2d0405292eb4a04dff4</id>
<content type='text'>
commit 407a3aee6ee2d2cb46d9ba3fc380bc29f35d020c upstream.

The host keeps sending heartbeat packets independent of the
guest responding to them.  Even though we respond to the heartbeat messages at
interrupt level, we can have situations where there maybe multiple heartbeat
messages pending that have not been responded to. For instance this occurs when the
VM is paused and the host continues to send the heartbeat messages.
Address this issue by draining and responding to all
the heartbeat messages that maybe pending.

Signed-off-by: Long Li &lt;longli@microsoft.com&gt;
Signed-off-by: K. Y. Srinivasan &lt;kys@microsoft.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>Drivers: hv: util: On device remove, close the channel after de-initializing the service</title>
<updated>2015-03-02T03:31:02Z</updated>
<author>
<name>K. Y. Srinivasan</name>
</author>
<published>2015-02-28T19:18:20Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=5380b383ba10915e61e3db09341cf8193f0601ad'/>
<id>urn:sha1:5380b383ba10915e61e3db09341cf8193f0601ad</id>
<content type='text'>
When the offer is rescinded, vmbus_close() can free up the channel;
deinitialize the service before closing the channel.

Signed-off-by: K. Y. Srinivasan &lt;kys@microsoft.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>hv: hv_util: move vmbus_open() to a later place</title>
<updated>2015-03-02T03:30:07Z</updated>
<author>
<name>Dexuan Cui</name>
</author>
<published>2015-02-27T19:25:58Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=1896566372579939eb86414ea3d664f18d5e909c'/>
<id>urn:sha1:1896566372579939eb86414ea3d664f18d5e909c</id>
<content type='text'>
Before the line vmbus_open() returns, srv-&gt;util_cb can be already running
and the variables, like util_fw_version, are needed by the srv-&gt;util_cb.

So we have to make sure the variables are initialized before the vmbus_open().

CC: "K. Y. Srinivasan" &lt;kys@microsoft.com&gt;
Reviewed-by: Vitaly Kuznetsov &lt;vkuznets@redhat.com&gt;
Reviewed-by: Jason Wang &lt;jasowang@redhat.com&gt;
Signed-off-by: Dexuan Cui &lt;decui@microsoft.com&gt;
Signed-off-by: K. Y. Srinivasan &lt;kys@microsoft.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>Drivers: hv: util: Fix a bug in the KVP code</title>
<updated>2014-07-09T21:34:35Z</updated>
<author>
<name>K. Y. Srinivasan</name>
</author>
<published>2014-07-07T23:34:25Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=9bd2d0dfe4714dd5d7c09a93a5c9ea9e14ceb3fc'/>
<id>urn:sha1:9bd2d0dfe4714dd5d7c09a93a5c9ea9e14ceb3fc</id>
<content type='text'>
Add code to poll the channel since we process only one message
at a time and the host may not interrupt us. Also increase the
receive buffer size since some KVP messages are close to 8K bytes in size.

Signed-off-by: K. Y. Srinivasan &lt;kys@microsoft.com&gt;
Cc: &lt;stable@vger.kernel.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>Drivers: hv: Implement the file copy service</title>
<updated>2014-02-18T18:53:48Z</updated>
<author>
<name>K. Y. Srinivasan</name>
</author>
<published>2014-02-16T19:34:30Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=01325476d6e46185031be4a9bc6443832dbc807c'/>
<id>urn:sha1:01325476d6e46185031be4a9bc6443832dbc807c</id>
<content type='text'>
Implement the file copy service for Linux guests on Hyper-V. This permits the
host to copy a file (over VMBUS) into the guest. This facility is part of
"guest integration services" supported on the Windows platform.
Here is a link that provides additional details on this functionality:

http://technet.microsoft.com/en-us/library/dn464282.aspx

In V1 version of the patch I have addressed comments from
Olaf Hering &lt;olaf@aepfle.de&gt; and Dan Carpenter &lt;dan.carpenter@oracle.com&gt;

In V2 version of this patch I did some minor cleanup (making some globals
static). In V4 version of the patch I have addressed all of Olaf's
most recent set of comments/concerns.

In V5 version of the patch I had addressed Greg's most recent comments.
I would like to thank Greg for suggesting that I use misc device; it has
significantly simplified the code.

In V6 version of the patch I have cleaned up error message based on Olaf's
comments. I have also rebased the patch based on the current tip.

In this version of the patch, I have addressed the latest comments from Greg.

Signed-off-by: K. Y. Srinivasan &lt;kys@microsoft.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>Merge 3.12-rc3 into char-misc-next</title>
<updated>2013-09-30T01:27:03Z</updated>
<author>
<name>Greg Kroah-Hartman</name>
</author>
<published>2013-09-30T01:27:03Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=d7173493683853047d6efc8d4454c70469a7b033'/>
<id>urn:sha1:d7173493683853047d6efc8d4454c70469a7b033</id>
<content type='text'>
We need/want the mei fixes in here so we can apply other updates that
are depending on them.

Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>Drivers: hv: util: Correctly support ws2008R2 and earlier</title>
<updated>2013-09-26T21:20:21Z</updated>
<author>
<name>K. Y. Srinivasan</name>
</author>
<published>2013-09-06T18:49:56Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=3a4916050ba2e0f1d114ef540abdf02b2b173e61'/>
<id>urn:sha1:3a4916050ba2e0f1d114ef540abdf02b2b173e61</id>
<content type='text'>
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.

I would like to thank Olaf Hering (ohering@suse.com) for identifying the problem.

Reported-by: Olaf Hering &lt;ohering@suse.com&gt;
Signed-off-by: K. Y. Srinivasan &lt;kys@microsoft.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>hv: Change variable type to bool</title>
<updated>2013-09-26T15:53:23Z</updated>
<author>
<name>Peter Senna Tschudin</name>
</author>
<published>2013-09-21T22:27:34Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=3173463418af18b6c7b30bc6a94777780129291d'/>
<id>urn:sha1:3173463418af18b6c7b30bc6a94777780129291d</id>
<content type='text'>
The variable execute_shutdown is only assigned the values true and
false. Change its type to bool.

The simplified semantic patch that find this problem is as
follows (http://coccinelle.lip6.fr/):

@exists@
type T;
identifier b;
@@
- T
+ bool
  b = ...;
  ... when any
  b = \(true\|false\)

Signed-off-by: Peter Senna Tschudin &lt;peter.senna@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>Drivers: hv: remove HV_DRV_VERSION</title>
<updated>2013-08-02T03:34:30Z</updated>
<author>
<name>Olaf Hering</name>
</author>
<published>2013-05-29T09:29:07Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=cfc25993e81f3fa68481d062be634d33184d5eae'/>
<id>urn:sha1:cfc25993e81f3fa68481d062be634d33184d5eae</id>
<content type='text'>
Remove HV_DRV_VERSION, it has no meaning for upstream drivers.

Initially it was supposed to show the "Linux Integration Services"
version, now it is not in sync anymore with the out-of-tree drivers
available from the MSFT website.

The only place where a version string is still required is the KVP
command "IntegrationServicesVersion" which is handled by
tools/hv/hv_kvp_daemon.c. To satisfy such KVP request from the host pass
the current string to the daemon during KVP userland registration.

Signed-off-by: Olaf Hering &lt;olaf@aepfle.de&gt;
Acked-by:  K. Y. Srinivasan &lt;kys@microsoft.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
</feed>
