On Tue, Jun 11, 2019 at 06:29:49PM +0100, Marc Zyngier wrote: > On 11/06/2019 17:59, Lorenzo Pieralisi wrote: > > On Fri, Apr 12, 2019 at 08:35:36AM +0000, Z.q. Hou wrote: > >> From: Hou Zhiqiang <Zhiqiang.Hou@xxxxxxx> > >> > >> The current code does not support multiple MSIs, so remove > >> the corresponding flag from the msi_domain_info structure. > > > > Please explain me what's the problem before removing multi MSI > > support. > > The reason seems to be the following code in the allocator: > > WARN_ON(nr_irqs != 1); > mutex_lock(&msi->lock); > > bit = find_first_zero_bit(msi->msi_irq_in_use, msi->num_of_vectors); > if (bit >= msi->num_of_vectors) { > mutex_unlock(&msi->lock); > return -ENOSPC; > } > > set_bit(bit, msi->msi_irq_in_use); > > So instead of fixing the allocator, the author prefers disabling > the feature. I'm not sure whether that is an acceptable outcome... :) No it is not that's why I asked and I am waiting for an answer. Lorenzo