- 29 5月, 2014 1 次提交
-
-
由 Radim Krčmář 提交于
We try to free two pages when only one has been allocated. Cleanup path is unlikely, so I haven't found any trace that would fit, but I hope that free_pages_prepare() does catch it. Cc: stable@vger.kernel.org Signed-off-by: NRadim Krčmář <rkrcmar@redhat.com> Reviewed-by: NAmos Kong <akong@redhat.com> Acked-by: NJason Wang <jasowang@redhat.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
-
- 04 5月, 2014 2 次提交
-
-
由 K. Y. Srinivasan 提交于
Currently the mapping of the relID to channel is done under the protection of a single spin lock. Starting with ws2012, each channel is bound to a specific VCPU in the guest. Use this binding to eliminate the spin lock by setting up per-cpu state for mapping relId to the channel. Signed-off-by: NK. Y. Srinivasan <kys@microsoft.com> Reviewed-by: NHaiyang Zhang <haiyangz@microsoft.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
-
由 K. Y. Srinivasan 提交于
By ensuring that we set the callback handler to NULL in the channel close path on the same CPU that the channel is bound to, we can eliminate this lock acquisition and release in a performance critical path. Signed-off-by: NK. Y. Srinivasan <kys@microsoft.com> Reviewed-by: NHaiyang Zhang <haiyangz@microsoft.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
-
- 17 4月, 2014 1 次提交
-
-
由 K. Y. Srinivasan 提交于
Only ws2012r2 hosts support the ability to reconnect to the host on VMBUS. This functionality is needed by kexec in Linux. To use this functionality we need to negotiate version 3.0 of the VMBUS protocol. Signed-off-by: NK. Y. Srinivasan <kys@microsoft.com> Cc: <stable@vger.kernel.org> [3.9+] Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
-
- 08 2月, 2014 2 次提交
-
-
由 K. Y. Srinivasan 提交于
When the guest attempts to connect with the host when there may already be a connection with the host (as would be the case during the kdump/kexec path), it is difficult to guarantee timely response from the host. Starting with WS2012 R2, the host supports this ability to re-connect with the host (explicitly to support kexec). Prior to responding to the guest, the host needs to ensure that device states based on the previous connection to the host have been properly torn down. This may introduce unbounded delays. To deal with this issue, don't do a timed wait during the initial connect with the host. Signed-off-by: NK. Y. Srinivasan <kys@microsoft.com> Cc: <stable@vger.kernel.org> Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
-
由 K. Y. Srinivasan 提交于
During the initial VMBUS connect phase, starting with WS2012 R2, we should specify the VPCU in the guest that should receive the notification. Fix this issue. This fix is required to properly connect to the host in the kexeced kernel. Signed-off-by: NK. Y. Srinivasan <kys@microsoft.com> Cc: <stable@vger.kernel.org> [3.9+] Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
-
- 27 9月, 2013 2 次提交
-
-
由 K. Y. Srinivasan 提交于
commit 666b9adc terminated vmbus version negotiation incorrectly. We need to terminate the version negotiation only if the current negotiation were to timeout. Signed-off-by: NK. Y. Srinivasan <kys@microsoft.com> Cc: Olaf Hering <ohering@suse.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
-
由 Greg Kroah-Hartman 提交于
monitor_pages was a void pointer, containing an unknown number of arrays that we just "knew" were a child and parent array of a specific size. Instead of that implicit knowledge, let's make them a real pointer, allowing us to have type safety, and a semblance of sane addressing schemes. Tested-by: N"K. Y. Srinivasan" <kys@microsoft.com> Cc: Haiyang Zhang <haiyangz@microsoft.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
-
- 31 8月, 2013 1 次提交
-
-
由 K. Y. Srinivasan 提交于
The current code would attempt to negotiate a different protocol version if the current negotiation timed out. This triggers an assert in the host (on debug builds). Avoid this by negotiating a newer version only if the host properly rejects the current version being negotiated. Signed-off-by: NK. Y. Srinivasan <kys@microsoft.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
-
- 04 6月, 2013 1 次提交
-
-
由 K. Y. Srinivasan 提交于
Starting with Win8, the host supports multiple sub-channels for a given device. As in the past, the initial channel offer specifies the device and is associated with both the type and the instance GUIDs. For performance critical devices, the host may support multiple sub-channels. The sub-channels share the same type and instance GUID as the primary channel. The number of sub-channels offerrred to the guest depends on the number of virtual CPUs assigned to the guest. The guest can request the creation of these sub-channels and once created and opened, the guest can distribute the traffic across all the channels (the primary and the sub-channels). A request sent on a sub-channel will have the response delivered on the same sub-channel. At channel (sub-channel) creation we bind the channel interrupt to a CPU and with this sub-channel support we will be able to spread the interrupt load of a given device across all available CPUs. Signed-off-by: NK. Y. Srinivasan <kys@microsoft.com> Reviewed-by: NHaiyang Zhang <haiyangz@microsoft.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
-
- 18 1月, 2013 10 次提交
-
-
由 K. Y. Srinivasan 提交于
Now, cleanup and consolidate reporting of host and vmbus version numbers. Signed-off-by: NK. Y. Srinivasan <kys@microsoft.com> Reviewed-by: NHaiyang Zhang <haiyangz@microsoft.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
-
由 K. Y. Srinivasan 提交于
Now that we have implemented all of the Win8 (WS2012) functionality, negotiate Win8 protocol with the host. Signed-off-by: NK. Y. Srinivasan <kys@microsoft.com> Reviewed-by: NHaiyang Zhang <haiyangz@microsoft.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
-
由 K. Y. Srinivasan 提交于
Starting with Win8 (WS2012), the event page can be used to directly get the channel ID that needs servicing. Modify the channel event handling code to take advantage of this feature. Signed-off-by: NK. Y. Srinivasan <kys@microsoft.com> Reviewed-by: NHaiyang Zhang <haiyangz@microsoft.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
-
由 K. Y. Srinivasan 提交于
On win7 (ws2008 R2) and beyond, we have the notion of having dedicated interrupts on a per-channel basis. When a channel has a dedicated interrupt assigned, there is no need to set the interrupt bit in the shared page. Implement this optimization. Signed-off-by: NK. Y. Srinivasan <kys@microsoft.com> Reviewed-by: NHaiyang Zhang <haiyangz@microsoft.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
-
由 K. Y. Srinivasan 提交于
To support version specific optimization in various vmbus drivers, move the vmbus definitions to the public header file. Signed-off-by: NK. Y. Srinivasan <kys@microsoft.com> Reviewed-by: NHaiyang Zhang <haiyangz@microsoft.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
-
由 K. Y. Srinivasan 提交于
In preparation for supporting a per-connection signaling mechanism, change the signature of vmbus_set_event(). This change is also needed to implement other aspects of the signaling optimization. Signed-off-by: NK. Y. Srinivasan <kys@microsoft.com> Reviewed-by: NHaiyang Zhang <haiyangz@microsoft.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
-
由 K. Y. Srinivasan 提交于
In preparation for implementing a per-connection signaling framework, change the signature of the function hv_signal_event(). The current code uses a global handle for signaling the host. Signed-off-by: NK. Y. Srinivasan <kys@microsoft.com> Reviewed-by: NHaiyang Zhang <haiyangz@microsoft.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
-
由 K. Y. Srinivasan 提交于
Export the negotiated vmbus version as this may be useful for individual drivers. Signed-off-by: NK. Y. Srinivasan <kys@microsoft.com> Reviewed-by: NHaiyang Zhang <haiyangz@microsoft.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
-
由 K. Y. Srinivasan 提交于
The current code hard coded the vmbus version independent of the host it was running on. Add code to dynamically negotiate the most appropriate version. Signed-off-by: NK. Y. Srinivasan <kys@microsoft.com> Reviewed-by: NHaiyang Zhang <haiyangz@microsoft.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
-
由 K. Y. Srinivasan 提交于
Now that we have the infratructure for correctly determining when we should signal the host; optimize the signaling on the read side - signaling the guest from the host. Signed-off-by: NK. Y. Srinivasan <kys@microsoft.com> Reviewed-by: NHaiyang Zhang <haiyangz@microsoft.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
-
- 11 10月, 2011 2 次提交
-
-
由 Greg Kroah-Hartman 提交于
No one outside of the hyperv core needs to include the asm/hyperv.h file, so don't put it in the "global" include/linux/hyperv.h file. Cc: K. Y. Srinivasan <kys@microsoft.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Greg Kroah-Hartman 提交于
After many years wandering the desert, it is finally time for the Microsoft HyperV code to move out of the staging directory. Or at least the core hyperv bus code, and the utility driver, the rest still have some review to get through by the various subsystem maintainers. Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de> Signed-off-by: NK. Y. Srinivasan <kys@microsoft.com>
-
- 07 9月, 2011 1 次提交
-
-
由 K. Y. Srinivasan 提交于
A channel in Hyper-V is equivalent to a device. Thus, a channel is persistent once it is presented to the guest, even if the driver managing this device is unloaded. By checking and invoking the driver specific callback function under the protection of the channel inbound_lock, we can properly deal with racing driver unloads since an unloading driver sets the callback to NULL under the protection of this inbound_lock. Signed-off-by: NK. Y. Srinivasan <kys@microsoft.com> Signed-off-by: NHaiyang Zhang <haiyangz@microsoft.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
- 30 8月, 2011 4 次提交
-
-
由 K. Y. Srinivasan 提交于
Fix checkpatch warnings in connection.c. Signed-off-by: NK. Y. Srinivasan <kys@microsoft.com> Signed-off-by: NHaiyang Zhang <haiyangz@microsoft.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 K. Y. Srinivasan 提交于
Get rid of an unnecessary check in vmbus_connect(). Signed-off-by: NK. Y. Srinivasan <kys@microsoft.com> Signed-off-by: NHaiyang Zhang <haiyangz@microsoft.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 K. Y. Srinivasan 提交于
Ensure that we correctly handle racing invocations of the channel callback when the channel is being closed. We do this using the channel's inbound_lock. A side-effect of this strategy is that we avoid repeatedly picking up this lock as we drain the inbound ring-buffer. Signed-off-by: NK. Y. Srinivasan <kys@microsoft.com> Signed-off-by: NHaiyang Zhang <haiyangz@microsoft.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 K. Y. Srinivasan 提交于
When we close a channel, we set the corresponding callback function to NULL. Check before invoking the channel callback. Signed-off-by: NK. Y. Srinivasan <kys@microsoft.com> Signed-off-by: NHaiyang Zhang <haiyangz@microsoft.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
- 26 8月, 2011 2 次提交
-
-
由 K. Y. Srinivasan 提交于
The function hv_post_msg() can fail because of transient resource conditions. It may be useful to retry the operation. Signed-off-by: NK. Y. Srinivasan <kys@microsoft.com> Signed-off-by: NHaiyang Zhang <haiyangz@microsoft.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 K. Y. Srinivasan 提交于
Get rid of unnecessay comments in connection.c. Signed-off-by: NK. Y. Srinivasan <kys@microsoft.com> Signed-off-by: NHaiyang Zhang <haiyangz@microsoft.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
- 05 7月, 2011 1 次提交
-
-
由 K. Y. Srinivasan 提交于
On some loaded windows hosts, we have discovered that the host may not respond to guest requests within the specified time (one second) as evidenced by the guest timing out. Fix this problem by increasing the timeout to 5 seconds. It may be useful to apply this patch to the 3.0 kernel as well. Signed-off-by: NK. Y. Srinivasan <kys@microsoft.com> Signed-off-by: NHaiyang Zhang <haiyangz@microsoft.com> Signed-off-by: NHank Janssen <hjanssen@microsoft.com> Cc: stable <stable@kernel.org> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
- 08 6月, 2011 3 次提交
-
-
由 K. Y. Srinivasan 提交于
Cleanup error codes in connection.c. Signed-off-by: NK. Y. Srinivasan <kys@microsoft.com> Signed-off-by: NHaiyang Zhang <haiyangz@microsoft.com> Signed-off-by: NAbhishek Kane <v-abkane@microsoft.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 K. Y. Srinivasan 提交于
Get rid of an unused function in connection.c Signed-off-by: NK. Y. Srinivasan <kys@microsoft.com> Signed-off-by: NHaiyang Zhang <haiyangz@microsoft.com> Signed-off-by: NAbhishek Kane <v-abkane@microsoft.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 K. Y. Srinivasan 提交于
Now, directly invoke the channel callback. Signed-off-by: NK. Y. Srinivasan <kys@microsoft.com> Signed-off-by: NHaiyang Zhang <haiyangz@microsoft.com> Signed-off-by: NAbhishek Kane <v-abkane@microsoft.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
- 18 5月, 2011 5 次提交
-
-
由 K. Y. Srinivasan 提交于
Move the contents of vmbus_private.h to vmbus_hyperv.h. Signed-off-by: NK. Y. Srinivasan <kys@microsoft.com> Signed-off-by: NHaiyang Zhang <haiyangz@microsoft.com> Signed-off-by: NAbhishek Kane <v-abkane@microsoft.com> Signed-off-by: NHank Janssen <hjanssen@microsoft.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 K. Y. Srinivasan 提交于
Include the contents of hv_api.h in hyperv_vmbus.h. Signed-off-by: NK. Y. Srinivasan <kys@microsoft.com> Signed-off-by: NHaiyang Zhang <haiyangz@microsoft.com> Signed-off-by: NAbhishek Kane <v-abkane@microsoft.com> Signed-off-by: NHank Janssen <hjanssen@microsoft.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 K. Y. Srinivasan 提交于
Create a common header file to build the vmbus driver. Signed-off-by: NK. Y. Srinivasan <kys@microsoft.com> Signed-off-by: NHaiyang Zhang <haiyangz@microsoft.com> Signed-off-by: NAbhishek Kane <v-abkane@microsoft.com> Signed-off-by: NHank Janssen <hjanssen@microsoft.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 K. Y. Srinivasan 提交于
Move the contents of logging.h to hyperv.h. Signed-off-by: NK. Y. Srinivasan <kys@microsoft.com> Signed-off-by: NHaiyang Zhang <haiyangz@microsoft.com> Signed-off-by: NAbhishek Kane <v-abkane@microsoft.com> Signed-off-by: NHank Janssen <hjanssen@microsoft.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 K. Y. Srinivasan 提交于
Include the newly created header file in all of the relevant hyperv files. Signed-off-by: NK. Y. Srinivasan <kys@microsoft.com> Signed-off-by: NHaiyang Zhang <haiyangz@microsoft.com> Signed-off-by: NAbhishek Kane <v-abkane@microsoft.com> Signed-off-by: NHank Janssen <hjanssen@microsoft.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
- 12 5月, 2011 2 次提交
-
-
由 K. Y. Srinivasan 提交于
Get rid some commented code and dated comments.T Signed-off-by: NK. Y. Srinivasan <kys@microsoft.com> Signed-off-by: NHaiyang Zhang <haiyangz@microsoft.com> Signed-off-by: NAbhishek Kane <v-abkane@microsoft.com> Signed-off-by: NHank Janssen <hjanssen@microsoft.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 K. Y. Srinivasan 提交于
Signed-off-by: NK. Y. Srinivasan <kys@microsoft.com> Signed-off-by: NHaiyang Zhang <haiyangz@microsoft.com> Signed-off-by: NAbhishek Kane <v-abkane@microsoft.com> Signed-off-by: NHank Janssen <hjanssen@microsoft.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-