Re: [PATCH gnumach] interrupt: Mask, eoi, unmask

2023-10-01 Thread Damien Zammit
On 2/10/23 10:56, Samuel Thibault wrote: > So in the end, I'd tend to think that it's up to queue_intr to do the > unmasking, like it does now, while spl is still high and thus we don't > risk nesting. That way it's the in-kernel intr handler that knows > whether to mask/unmask or not. I.e. it'd

Re: [PATCH gnumach] interrupt: Mask, eoi, unmask

2023-10-01 Thread Samuel Thibault
Samuel Thibault, le lun. 02 oct. 2023 01:43:48 +0200, a ecrit: > Also, "don't EOI in the user handlers anymore.", isn't that already the > case? Ah, that's the irqtab.irqdev_ack call in irq_acknowledge. Then I'd say we should try to move it to queue_intr? So that it's done before the driver

Re: [PATCH gnumach] interrupt: Mask, eoi, unmask

2023-10-01 Thread Samuel Thibault
Samuel Thibault, le lun. 02 oct. 2023 01:56:51 +0200, a ecrit: > Samuel Thibault, le lun. 02 oct. 2023 01:50:14 +0200, a ecrit: > > Samuel Thibault, le lun. 02 oct. 2023 01:43:48 +0200, a ecrit: > > > Damien Zammit, le dim. 01 oct. 2023 23:26:02 +, a ecrit: > > > > I think the logic for this

Re: [PATCH gnumach] interrupt: Mask, eoi, unmask

2023-10-01 Thread Samuel Thibault
Samuel Thibault, le lun. 02 oct. 2023 01:50:14 +0200, a ecrit: > Samuel Thibault, le lun. 02 oct. 2023 01:43:48 +0200, a ecrit: > > Damien Zammit, le dim. 01 oct. 2023 23:26:02 +, a ecrit: > > > I think the logic for this should be: > > > > > > When we get irq N, first we mask irq N, then EOI

Re: [PATCH gnumach] interrupt: Mask, eoi, unmask

2023-10-01 Thread Samuel Thibault
Samuel Thibault, le lun. 02 oct. 2023 01:43:48 +0200, a ecrit: > Damien Zammit, le dim. 01 oct. 2023 23:26:02 +, a ecrit: > > I think the logic for this should be: > > > > When we get irq N, first we mask irq N, then EOI irq N. > > Then call the handler. If there is a user handler for irq N,

Re: [PATCH gnumach] interrupt: Mask, eoi, unmask

2023-10-01 Thread Samuel Thibault
Damien Zammit, le dim. 01 oct. 2023 23:26:02 +, a ecrit: > I think the logic for this should be: > > When we get irq N, first we mask irq N, then EOI irq N. > Then call the handler. If there is a user handler for irq N, let the irq_ack > unmask irq N, otherwise we need to unmask irq N now. >

Re: [PATCH gnumach] interrupt: Mask, eoi, unmask

2023-10-01 Thread Damien Zammit
Hi, On 1/10/23 20:13, Samuel Thibault wrote: > Sometimes the "why" of a commit is obvious, so it doesn't need to be > explained, but here it's really not and thus it definitely needs to > be. We have had various pings-pongs in the past about whether to EOI > before/after the interrupt, masking

Re: [PATCH gnumach] interrupt: Mask, eoi, unmask

2023-10-01 Thread Samuel Thibault
Hello, Sometimes the "why" of a commit is obvious, so it doesn't need to be explained, but here it's really not and thus it definitely needs to be. We have had various pings-pongs in the past about whether to EOI before/after the interrupt, masking or not, etc. So we really need a firm

[PATCH gnumach] interrupt: Mask, eoi, unmask

2023-09-30 Thread Damien Zammit
--- i386/i386at/interrupt.S | 19 --- x86_64/interrupt.S | 19 +++ 2 files changed, 31 insertions(+), 7 deletions(-) diff --git a/i386/i386at/interrupt.S b/i386/i386at/interrupt.S index 8ae6b97c..ec2fc656 100644 --- a/i386/i386at/interrupt.S +++