disconnect_bsp_APIC(); 
/* * If the i82559 is routed through an IOAPIC * Put that IOAPIC in virtual wire mode * so legacy interrups can be delivered. */ pin = find_isa_irq_pin(0, mp_ExtINT); if (pin != -1) { struct IO_APIC_route_entry entry; unsigned long flags;  memset(&entry, 0, sizeof(entry)); entry.mask            = 0; /* Enabled */ entry.trigger         = 0; /* Edge */ entry.irr             = 0; entry.polarity        = 0; /* High */ entry.delivery_status = 0; entry.dest_mode       = 0; /* Physical */ entry.delivery_mode   = 7; /* ExtInt */ entry.vector          = 0; entry.dest.physical.physical_dest = 0;   /* * Add it to the IO-APIC irq-routing table: */ spin_lock_irqsave(&ioapic_lock, flags); io_apic_write(0, 0x11+2*pin, *(((int *)&entry)+1)); io_apic_write(0, 0x10+2*pin, *(((int *)&entry)+0)); spin_unlock_irqrestore(&ioapic_lock, flags); }  disconnect_bsp_APIC(pin != -1); 
void disable_IO_APIC(void){	/*	 * Clear the IO-APIC before rebooting:	 */	clear_IO_APIC();	disconnect_bsp_APIC();}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/208fb93162d51faa69b9774fa7809858d84fd9dc/io_apic.c/clean/arch/x86_64/kernel/io_apic.c