bug-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] irqdev: remove tot_num_intr


From: Junling Ma
Subject: Re: [PATCH] irqdev: remove tot_num_intr
Date: Tue, 4 Aug 2020 16:39:10 -0700

In summary, there is no easy way for device_* interface to know who called. So 
registering a notification port is a simple and sane way,  We only need to move 
device_intr_register/ack to irq_register/ack into something like irq.defs, so 
that other devices are freed from having to implement these two device_* called 
that are only meant for the irq device.

Best,
Junling

> On Aug 4, 2020, at 3:58 PM, Samuel Thibault <samuel.thibault@gnu.org> wrote:
> 
> Junling Ma, le mar. 04 août 2020 14:47:09 -0700, a ecrit:
>> The tot_num_intr field is a count of how many deliverable interrupts across 
>> all lines. When we move
>> to the scheme of blocking read for request and write for acking, it is 
>> possible that an interrupt
>> can happen during a small period that the interrupt is acked, but the read 
>> has not happended yet.
> 
> As discussed on IRC, this is rather a problem of the device_read/write
> concept, that would require device_read() to be called before the
> interrupt raises, just because on the kernel side the mach_device_t is
> the same for all userland processes sharing the IRQ. I don't think it's
> a path we want to follow, and we'd rather use register/ack IPC like we
> have now.
> 
> Samuel




reply via email to

[Prev in Thread] Current Thread [Next in Thread]