|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH 14/22] i8259.c: properly cascade secondary i8259 from primary i8259
On Wed, 14 Oct 2026 at 12:20, Mark Cave-Ayland <mark.caveayland@xxxxxxxxxxx> wrote: > > On 13/10/2026 17:18, Peter Maydell wrote: > > > On Wed, 16 Sept 2026 at 11:49, Mark Cave-Ayland > > <mark.caveayland@xxxxxxxxxxx> wrote: > >> > >> Currently the cascaded output from the secondary i8259 is returned > >> directly in > >> the pass_irqs[] array, instead of being connected to the relevant input of > >> the > >> primary i8259. > >> > >> Signed-off-by: Mark Cave-Ayland <mark.caveayland@xxxxxxxxxxx> > >> --- > >> hw/intc/i8259.c | 3 ++- > >> 1 file changed, 2 insertions(+), 1 deletion(-) > >> > >> diff --git a/hw/intc/i8259.c b/hw/intc/i8259.c > >> index fcc94e12f8..964ceb04b2 100644 > >> --- a/hw/intc/i8259.c > >> +++ b/hw/intc/i8259.c > >> @@ -501,7 +501,8 @@ static void i8259_pic_realize(DeviceState *dev, Error > >> **errp) > >> } > >> > >> /* Wire up secondary cascade */ > >> - qdev_connect_gpio_out(sec_dev, 0, s->pass_irqs[2]); > >> + qdev_connect_gpio_out(sec_dev, 0, > >> + qdev_get_gpio_in(pri_dev, 2)); > > > > We just added this line in the previous patch, so we might as well > > squash this change into the previous one I think. > The reason for having this in a separate commit is because it is > technically a behaviour change. Before this commit, an interrupt from > the secondary PIC would *always* raise the passed interrupt, whereas on > real hardware it is possible to disable interrupts from the secondary > PIC by masking the relevant input on the primary PIC [1]. OK, if it's a behaviour change that's fine. The commit message is written as if it's just a refactoring, though -- it would be helpful to spell out what the behaviour change there and that it's fixing a corner case bug. -- PMM
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |