From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751619AbdF1VGR (ORCPT ); Wed, 28 Jun 2017 17:06:17 -0400 Received: from terminus.zytor.com ([65.50.211.136]:46663 "EHLO terminus.zytor.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751544AbdF1VGL (ORCPT ); Wed, 28 Jun 2017 17:06:11 -0400 Date: Wed, 28 Jun 2017 14:03:58 -0700 From: tip-bot for Christoph Hellwig Message-ID: Cc: mingo@kernel.org, tglx@linutronix.de, hpa@zytor.com, linux-kernel@vger.kernel.org, keith.busch@intel.com, axboe@kernel.dk, hch@lst.de Reply-To: mingo@kernel.org, tglx@linutronix.de, hpa@zytor.com, keith.busch@intel.com, linux-kernel@vger.kernel.org, axboe@kernel.dk, hch@lst.de In-Reply-To: <20170626102058.10200-2-hch@lst.de> References: <20170626102058.10200-2-hch@lst.de> To: linux-tip-commits@vger.kernel.org Subject: [tip:irq/core] blk-mq: Include all present CPUs in the default queue mapping Git-Commit-ID: 5f042e7cbd9ebd3580077dcdc21f35e68c2adf5f X-Mailer: tip-git-log-daemon Robot-ID: Robot-Unsubscribe: Contact to get blacklisted from these emails MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset=UTF-8 Content-Disposition: inline Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Commit-ID: 5f042e7cbd9ebd3580077dcdc21f35e68c2adf5f Gitweb: http://git.kernel.org/tip/5f042e7cbd9ebd3580077dcdc21f35e68c2adf5f Author: Christoph Hellwig AuthorDate: Mon, 26 Jun 2017 12:20:56 +0200 Committer: Thomas Gleixner CommitDate: Wed, 28 Jun 2017 23:00:06 +0200 blk-mq: Include all present CPUs in the default queue mapping This way we get a nice distribution independent of the current cpu online / offline state. Signed-off-by: Christoph Hellwig Reviewed-by: Jens Axboe Cc: Keith Busch Cc: linux-block@vger.kernel.org Cc: linux-nvme@lists.infradead.org Link: http://lkml.kernel.org/r/20170626102058.10200-2-hch@lst.de Signed-off-by: Thomas Gleixner --- block/blk-mq-cpumap.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/block/blk-mq-cpumap.c b/block/blk-mq-cpumap.c index 8e61e86..5eaecd4 100644 --- a/block/blk-mq-cpumap.c +++ b/block/blk-mq-cpumap.c @@ -35,7 +35,6 @@ int blk_mq_map_queues(struct blk_mq_tag_set *set) { unsigned int *map = set->mq_map; unsigned int nr_queues = set->nr_hw_queues; - const struct cpumask *online_mask = cpu_online_mask; unsigned int i, nr_cpus, nr_uniq_cpus, queue, first_sibling; cpumask_var_t cpus; @@ -44,7 +43,7 @@ int blk_mq_map_queues(struct blk_mq_tag_set *set) cpumask_clear(cpus); nr_cpus = nr_uniq_cpus = 0; - for_each_cpu(i, online_mask) { + for_each_present_cpu(i) { nr_cpus++; first_sibling = get_first_sibling(i); if (!cpumask_test_cpu(first_sibling, cpus)) @@ -54,7 +53,7 @@ int blk_mq_map_queues(struct blk_mq_tag_set *set) queue = 0; for_each_possible_cpu(i) { - if (!cpumask_test_cpu(i, online_mask)) { + if (!cpumask_test_cpu(i, cpu_present_mask)) { map[i] = 0; continue; }