• Thomas Gleixner's avatar
    genirq: Provide irq_fixup_move_pending() · cdd16365
    Thomas Gleixner authored
    If an CPU goes offline, the interrupts are migrated away, but a eventually
    pending interrupt move, which has not yet been made effective is kept
    pending even if the outgoing CPU is the sole target of the pending affinity
    mask. What's worse is, that the pending affinity mask is discarded even if
    it would contain a valid subset of the online CPUs.
    
    Implement a helper function which allows to avoid these issues.
    Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
    Cc: Jens Axboe <axboe@kernel.dk>
    Cc: Marc Zyngier <marc.zyngier@arm.com>
    Cc: Michael Ellerman <mpe@ellerman.id.au>
    Cc: Keith Busch <keith.busch@intel.com>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Christoph Hellwig <hch@lst.de>
    Link: http://lkml.kernel.org/r/20170619235444.691345468@linutronix.de
    cdd16365
migration.c 2.85 KB