[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <d503b43941504d17a33d307426e739db@SIXPR30MB031.064d.mgd.msft.net>
Date: Tue, 28 Apr 2015 04:30:13 +0000
From: Dexuan Cui <decui@...rosoft.com>
To: Vitaly Kuznetsov <vkuznets@...hat.com>,
KY Srinivasan <kys@...rosoft.com>
CC: Haiyang Zhang <haiyangz@...rosoft.com>,
"devel@...uxdriverproject.org" <devel@...uxdriverproject.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: RE: [PATCH v2 0/6] Drivers: hv: vmbus: fair round robin algorithm for
vmbus_get_outgoing_channel()
> -----Original Message-----
> From: Vitaly Kuznetsov [mailto:vkuznets@...hat.com]
> Sent: Tuesday, April 28, 2015 1:04
> To: KY Srinivasan
> Cc: Haiyang Zhang; devel@...uxdriverproject.org; linux-
> kernel@...r.kernel.org; Dexuan Cui
> Subject: [PATCH v2 0/6] Drivers: hv: vmbus: fair round robin algorithm for
> vmbus_get_outgoing_channel()
>
> Changes in v2:
> - Address Dexuan's review comments:
> PATCH 3/6: s,channel,primary_channel;
> PATCH 4/6: add a forward declaration instead of moving code around;
> PATCH 6/6: fix an off-by-one
> - Change the algorithm in PATCH 6/6:
> Instead of a simple round robin we first try to find a (sub)channel with
> the current_cpu == target_cpu and we fallback to a round robin when we
> fail
> to find one.
>
> K. Y., Dexuan, can you please give it a spin in various testing environments
> you have? Thanks!
>
> Original description:
>
> This series is a continuation of the "Drivers: hv: vmbus: Use a round-robin
> algorithm for picking the outgoing channel" work. It is supposed to bring
> two
> significant changes:
> 1) Subchannels for a channel are distributed evenly across all vcpus we have.
> Currently we try to distribute all channels (including subchannels) across
> all vcpus, this approach doesn't guarantee that the particular channel's
> subchannels will be distributed in the same way as we process all offer
> requests in some random order. (Patch 05)
> 2) Channel picking based on the current vcpu is dropped from
> vmbus_get_outgoing_channel() in favor of a fair round robin. (Patch 06)
> (this
> is not true anymore, see 'Changes').
>
> Patches 01 - 04 are cleanup/refactoring.
>
> Vitaly Kuznetsov (6):
> Drivers: hv: vmbus: unify calls to percpu_channel_enq()
> Drivers: hv: vmbus: briefly comment num_sc and next_oc
> Drivers: hv: vmbus: decrease num_sc on subchannel removal
> Drivers: hv: vmbus: move init_vp_index() call to vmbus_process_offer()
> Drivers: hv: vmbus: distribute subchannels among all vcpus
> Drivers: hv: vmbus: improve selection of an outgoing channel
>
> drivers/hv/channel_mgmt.c | 127 ++++++++++++++++++++++++++---------
> -----------
> include/linux/hyperv.h | 12 +++--
> 2 files changed, 80 insertions(+), 59 deletions(-)
>
> --
Patch 1, 2 and 3 are good to me.
We'll have to test 4~6 for performance change.
Thanks,
-- Dexuan
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists