Drivers: hv: vmbus: Implement NUMA aware CPU affinity for channels
Channels/sub-channels can be affinitized to VCPUs in the guest. Implement this affinity in a way that is NUMA aware. The current protocol distributed the primary channels uniformly across all available CPUs. The new protocol is NUMA aware: primary channels are distributed across the available NUMA nodes while the sub-channels within a primary channel are distributed amongst CPUs within the NUMA node assigned to the primary channel. Signed-off-by: K. Y. Srinivasan <kys@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:

committed by
Greg Kroah-Hartman

parent
9c6e64adf2
commit
1f656ff3fd
@@ -696,6 +696,11 @@ struct vmbus_channel {
|
||||
u32 target_vp;
|
||||
/* The corresponding CPUID in the guest */
|
||||
u32 target_cpu;
|
||||
/*
|
||||
* State to manage the CPU affiliation of channels.
|
||||
*/
|
||||
struct cpumask alloced_cpus_in_node;
|
||||
int numa_node;
|
||||
/*
|
||||
* Support for sub-channels. For high performance devices,
|
||||
* it will be useful to have multiple sub-channels to support
|
||||
|
Reference in New Issue
Block a user