genirq/affinity: Don't return with empty affinity masks on error
authorThomas Gleixner <tglx@linutronix.de>
Wed, 4 Apr 2018 10:40:07 +0000 (12:40 +0200)
committerThomas Gleixner <tglx@linutronix.de>
Fri, 6 Apr 2018 10:19:50 +0000 (12:19 +0200)
commit0211e12dd0a5385ecffd3557bc570dbad7fcf245
tree7565018404d1075b968f69ee4e90b2bf5b9cf981
parent83fbdf1c0595470d98ee99a6474099aee870640f
genirq/affinity: Don't return with empty affinity masks on error

When the allocation of node_to_possible_cpumask fails, then
irq_create_affinity_masks() returns with a pointer to the empty affinity
masks array, which will cause malfunction.

Reorder the allocations so the masks array allocation comes last and every
failure path returns NULL.

Fixes: 9a0ef98e186d ("genirq/affinity: Assign vectors to all present CPUs")
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Christoph Hellwig <hch@infradead.org>
Cc: Ming Lei <ming.lei@redhat.com>
kernel/irq/affinity.c