Re: [RESEND PATCH 4/4] um: irq: don't set the chip for all irqs

From: Anton Ivanov
Date: Wed May 08 2019 - 03:10:14 EST


On 07/05/2019 22:26, Richard Weinberger wrote:
On Thu, Apr 11, 2019 at 11:50 AM Bartosz Golaszewski <brgl@xxxxxxxx> wrote:

From: Bartosz Golaszewski <bgolaszewski@xxxxxxxxxxxx>

Setting a chip for an interrupt marks it as allocated. Since UM doesn't
support dynamic interrupt numbers (yet), it means we cannot simply
increase NR_IRQS and then use the free irqs between LAST_IRQ and NR_IRQS
with gpio-mockup or iio testing drivers as irq_alloc_descs() will fail
after not being able to neither find an unallocated range of interrupts
nor expand the range.

Only call irq_set_chip_and_handler() for irqs until LAST_IRQ.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@xxxxxxxxxxxx>
Reviewed-by: Anton Ivanov <anton.ivanov@xxxxxxxxxxxxxxxxxx>
Acked-by: Anton Ivanov <anton.ivanov@xxxxxxxxxxxxxxxxxx>

Just noticed that this triggers the following errors while bootup:
Trying to reregister IRQ 11 FD 8 TYPE 0 ID (null)
write_sigio_irq : um_request_irq failed, err = -16
Trying to reregister IRQ 11 FD 8 TYPE 0 ID (null)
write_sigio_irq : um_request_irq failed, err = -16
VFS: Mounted root (hostfs filesystem) readonly on

Can you please check?
This patch is already queued in -next. So we need to decide whether to
revert or fix it now.

I am looking at it. It passed tests in my case (I did the usual round).

--
Anton R. Ivanov
Cambridgegreys Limited. Registered in England. Company Number 10273661
https://www.cambridgegreys.com/