In general hardware interrupts need to be processed immediately, at least so as to acknowledge it and do some first level of processing. As I understand this is not scheduled activity. Please correct me.
So the question is how to choose a processor that would actually execute this hardware interrupt handler?
One can answer this for Linux and/or BSD systems
It truly depends upon the operating system implementation.
Some assign a all interrupts to a single processor, while others distribute the interrupt handling across some or all of the processors.
On NUMA systems, the operating system should attempt to assign interrupt handling to a "nearby" processor.
You'll have to read the source of the operating system (and version) you're interested in to figure out what it uses.