OSDN Git Service

genirq/affinity: assign vectors to all possible CPUs
authorChristoph Hellwig <hch@lst.de>
Fri, 12 Jan 2018 02:53:05 +0000 (10:53 +0800)
committerJens Axboe <axboe@kernel.dk>
Fri, 12 Jan 2018 18:01:38 +0000 (11:01 -0700)
commit84676c1f21e8ff54befe985f4f14dc1edc10046b
tree40fe75ec8bab0c1d48604c1d2483b963a925729d
parentc27d53fb445f2d93a1918c3dd7344770b0cd865b
genirq/affinity: assign vectors to all possible CPUs

Currently we assign managed interrupt vectors to all present CPUs.  This
works fine for systems were we only online/offline CPUs.  But in case of
systems that support physical CPU hotplug (or the virtualized version of
it) this means the additional CPUs covered for in the ACPI tables or on
the command line are not catered for.  To fix this we'd either need to
introduce new hotplug CPU states just for this case, or we can start
assining vectors to possible but not present CPUs.

Reported-by: Christian Borntraeger <borntraeger@de.ibm.com>
Tested-by: Christian Borntraeger <borntraeger@de.ibm.com>
Tested-by: Stefan Haberland <sth@linux.vnet.ibm.com>
Fixes: 4b855ad37194 ("blk-mq: Create hctx for each present CPU")
Cc: linux-kernel@vger.kernel.org
Cc: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
kernel/irq/affinity.c