diff options
author | K. Y. Srinivasan <kys@microsoft.com> | 2015-12-14 16:01:56 -0800 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2015-12-14 19:15:05 -0800 |
commit | b282e4c06fe89fc750fb26791c0bd7b25315973a (patch) | |
tree | c5afed57ae08d315779b2da771ff41ce5ce68697 /drivers/hv/connection.c | |
parent | c35b82ef0294ae5052120615f5cfcef17c5a6bf7 (diff) | |
download | linux-b282e4c06fe89fc750fb26791c0bd7b25315973a.tar.gz linux-b282e4c06fe89fc750fb26791c0bd7b25315973a.tar.bz2 linux-b282e4c06fe89fc750fb26791c0bd7b25315973a.zip |
Drivers: hv: vmbus: Force all channel messages to be delivered on CPU 0
Force all channel messages to be delivered on CPU0. These messages are not
performance critical and are used during the setup and teardown of the
channel.
Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/hv/connection.c')
-rw-r--r-- | drivers/hv/connection.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/drivers/hv/connection.c b/drivers/hv/connection.c index 521f48ed188e..3dc5a9c7fad6 100644 --- a/drivers/hv/connection.c +++ b/drivers/hv/connection.c @@ -83,10 +83,13 @@ static int vmbus_negotiate_version(struct vmbus_channel_msginfo *msginfo, msg->interrupt_page = virt_to_phys(vmbus_connection.int_page); msg->monitor_page1 = virt_to_phys(vmbus_connection.monitor_pages[0]); msg->monitor_page2 = virt_to_phys(vmbus_connection.monitor_pages[1]); - if (version >= VERSION_WIN8_1) { - msg->target_vcpu = hv_context.vp_index[get_cpu()]; - put_cpu(); - } + /* + * We want all channel messages to be delivered on CPU 0. + * This has been the behavior pre-win8. This is not + * perf issue and having all channel messages delivered on CPU 0 + * would be ok. + */ + msg->target_vcpu = 0; /* * Add to list before we send the request since we may |