lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <467936FE.8050704@redhat.com>
Date:	Wed, 20 Jun 2007 10:17:34 -0400
From:	Steven Rostedt <srostedt@...hat.com>
To:	Michal Schmidt <mschmidt@...hat.com>
CC:	Ingo Molnar <mingo@...hat.com>,
	Thomas Gleixner <tglx@...utronix.de>,
	linux-rt-users@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH -rt] irq nobody cared workaround for i386

Michal Schmidt wrote:
> Michal Schmidt wrote:

> I came to the conclusion that the IO-APICs which need the fix for the
> nobody cared bug don't have the issue ack_ioapic_quirk_irq is designed
> to work-around. It should be safe simply to use the normal
> ack_ioapic_irq as the .eoi method in pcix_ioapic_chip.
> So this is the port of Steven's fix for the nobody cared bug to i386. It
> works fine on IBM LS21 I have access to.
> 

Thanks Michal for doing this!

> Signed-off-by: Michal Schmidt <mschmidt@...hat.com>


> @@ -1336,7 +1371,7 @@ static void __init setup_IO_APIC_irqs(vo
>  		if (IO_APIC_IRQ(irq)) {
>  			vector = assign_irq_vector(irq);
>  			entry.vector = vector;
> -			ioapic_register_intr(irq, vector, IOAPIC_AUTO);
> +			ioapic_register_intr(irq, vector, IOAPIC_AUTO, apic>0);

You want to make that "apic > 0".  Note the spacing. If it breaks
80 characters, then simply put it to a new line.

>  		
>  			if (!apic && (irq < 16))
>  				disable_8259A_irq(irq);
> @@ -2058,6 +2093,18 @@ static struct irq_chip ioapic_chip __rea
>  	.retrigger	= ioapic_retrigger_irq,
>  };
>  

[...]

>  static inline void init_IO_APIC_traps(void)
>  {
> @@ -2858,7 +2905,7 @@ int io_apic_set_pci_routing (int ioapic,
>  		mp_ioapics[ioapic].mpc_apicid, pin, entry.vector, irq,
>  		edge_level, active_high_low);
>  
> -	ioapic_register_intr(irq, entry.vector, edge_level);
> +	ioapic_register_intr(irq, entry.vector, edge_level, ioapic>0);

Again, add the spaces.

>  
>  	if (!ioapic && (irq < 16))
>  		disable_8259A_irq(irq);
> 
> 


ACK

-- Steve
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ