Markus Armbruster <arm...@redhat.com> writes:

> Andreas Färber <andreas.faer...@web.de> writes:
>
>> Signed-off-by: Andreas Färber <andreas.faer...@web.de>
>> ---
>>  hw/isa-bus.c |   14 ++++++++++++++
>>  hw/isa.h     |    1 +
>>  2 files changed, 15 insertions(+), 0 deletions(-)
>>
>> diff --git a/hw/isa-bus.c b/hw/isa-bus.c
>> index 1f64673..6ac3e61 100644
>> --- a/hw/isa-bus.c
>> +++ b/hw/isa-bus.c
>> @@ -80,6 +80,20 @@ void isa_init_irq(ISADevice *dev, qemu_irq *p, int isairq)
>>      dev->nirqs++;
>>  }
>>  
>> +void isa_discard_irq(ISADevice *dev, int isairq)
>> +{
>> +    int i, j;
>> +    for (i = 0; i < dev->nirqs; i++) {
>> +        if (dev->isairq[i] == isairq) {
>> +            for (j = i + 1; j < dev->nirqs; j++) {
>> +                dev->isairq[j - 1] = dev->isairq[j];
>> +            }
>> +            dev->nirqs--;
>> +            break;
>> +        }
>> +    }
>> +}
>
> Comment to 04/12 applies.

Sorry, misleading.

The comment about the naming applies.

The comment about the use of the function doesn't apply: isa_init_irq()
does the complete job, unlike isa_init_ioport_range().

Your isa_discard_irq() keeps the qemu_irq that was set by isa_init_irq()
around, which is perhaps not perfectly clean, but should work.

> [...]

Reply via email to