diff options
author | K. Y. Srinivasan <kys@microsoft.com> | 2016-02-26 15:13:21 -0800 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2016-03-01 16:57:20 -0800 |
commit | d81274aae61c0a045cd0f34191c51fa64ba58bc4 (patch) | |
tree | 974d675cc792cf04c456e0d09754e6bc6c4ebbe5 /drivers/hv/hyperv_vmbus.h | |
parent | e66853b09017a788dc384dadce9323396dae3293 (diff) | |
download | linux-stable-d81274aae61c0a045cd0f34191c51fa64ba58bc4.tar.gz linux-stable-d81274aae61c0a045cd0f34191c51fa64ba58bc4.tar.bz2 linux-stable-d81274aae61c0a045cd0f34191c51fa64ba58bc4.zip |
Drivers: hv: vmbus: Support handling messages on multiple CPUs
Starting with Windows 2012 R2, message inteerupts can be delivered
on any VCPU in the guest. Support this functionality.
Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/hv/hyperv_vmbus.h')
-rw-r--r-- | drivers/hv/hyperv_vmbus.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/hv/hyperv_vmbus.h b/drivers/hv/hyperv_vmbus.h index cada56a2daa0..a64b17661d17 100644 --- a/drivers/hv/hyperv_vmbus.h +++ b/drivers/hv/hyperv_vmbus.h @@ -449,10 +449,11 @@ struct hv_context { u32 vp_index[NR_CPUS]; /* * Starting with win8, we can take channel interrupts on any CPU; - * we will manage the tasklet that handles events on a per CPU + * we will manage the tasklet that handles events messages on a per CPU * basis. */ struct tasklet_struct *event_dpc[NR_CPUS]; + struct tasklet_struct *msg_dpc[NR_CPUS]; /* * To optimize the mapping of relid to channel, maintain * per-cpu list of the channels based on their CPU affinity. @@ -675,6 +676,7 @@ int vmbus_post_msg(void *buffer, size_t buflen); void vmbus_set_event(struct vmbus_channel *channel); void vmbus_on_event(unsigned long data); +void vmbus_on_msg_dpc(unsigned long data); int hv_kvp_init(struct hv_util_service *); void hv_kvp_deinit(void); |