[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Reducing NIC interrupt servicing load
- To: misc_(_at_)_openbsd_(_dot_)_org
- Subject: Re: Reducing NIC interrupt servicing load
- From: jared r r spiegel <jrrs_(_at_)_ice-nine_(_dot_)_org>
- Date: Fri, 8 Apr 2005 17:03:14 -0600
- Mail-followup-to: jared r r spiegel <jrrs_(_at_)_ice-nine_(_dot_)_org>, misc_(_at_)_openbsd_(_dot_)_org
On Tue, Mar 22, 2005 at 10:52:40PM +0100, Henning Brauer wrote:
>
> - put them all on the same irq, saves context switches
if i have two pci fxp(4)s, and the bios only lets me reserve or
"available"ize IRQs, but doesn't let me allocate them to specific devices
or PCI slots (it has a toggle for PnP BIOS Y/N, but that's about
it afaict), is there a way to use, say, config(8) to allocate them
both the same IRQ?
ukc> find fxp
97 fxp* at pci* dev -1 function -1 flags 0x0
98 fxp* at cardbus* dev -1 function -1 flags 0x0
i can clone fxp* to be, say, fxp0, and i can change 'dev', 'function',
and 'flags', but don't seem to be able to make it let me say "irq X", etc.
or is this something i would have to change the kernel CONFIG and remake
it at that point (possibly making a new pci0 or something?). or maybe,
if there is a Right Way to take, eg, two pci fxp(4)s, and assign them
the same IRQ, what would be the right direction?
jared
--
[ openbsd 3.7 GENERIC ( mar 18 ) // i386 ]
---------
OpenBSD 3.7 (GENERIC) #46: Fri Mar 18 16:58:45 MST 2005
deraadt_(_at_)_i386_(_dot_)_openbsd_(_dot_)_org:/usr/src/sys/arch/i386/compile/GENERIC
cpu0: Intel Pentium III ("GenuineIntel" 686-class, 512KB L2 cache) 449 MHz
cpu0: FPU,V86,DE,PSE,TSC,MSR,PAE,MCE,CX8,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,SER,MMX,FXSR,SSE
cpu0: disabling processor serial number
real mem = 536436736 (523864K)
avail mem = 482705408 (471392K)
using 4278 buffers containing 26923008 bytes (26292K) of memory
mainbus0 (root)
bios0 at mainbus0: AT/286+(9f) BIOS, date 02/12/99, BIOS32 rev. 0 @ 0xfd7a0
apm0 at bios0: Power Management spec V1.2
apm0: AC on, battery charge unknown
pcibios0 at bios0: rev 2.1 @ 0xfd7a0/0x860
pcibios0: PCI IRQ Routing Table rev 1.0 @ 0xfdf30/176 (9 entries)
pcibios0: PCI Interrupt Router at 000:07:0 ("Intel 82371FB ISA" rev 0x00)
pcibios0: PCI bus #1 is the last bus
bios0: ROM list: 0xc0000/0x8000 0xc8000/0x1800 0xc9800/0x1800 0xcb000/0x2800 0xe0000/0x4000! 0xe4000/0xc000
cpu0 at mainbus0
pci0 at mainbus0 bus 0: configuration mode 1 (no bios)
pchb0 at pci0 dev 0 function 0 "Intel 82443BX AGP" rev 0x03
ppb0 at pci0 dev 1 function 0 "Intel 82443BX AGP" rev 0x03
pci1 at ppb0 bus 1
pcib0 at pci0 dev 7 function 0 "Intel 82371AB PIIX4 ISA" rev 0x02
pciide0 at pci0 dev 7 function 1 "Intel 82371AB IDE" rev 0x01: DMA, channel 0 wired to compatibility, channel 1 wired to compatibility
atapiscsi0 at pciide0 channel 0 drive 0
scsibus0 at atapiscsi0: 2 targets
cd0 at scsibus0 targ 0 lun 0: <SONY, CD-ROM CDU311, 3.0i> SCSI0 5/cdrom removable
cd0(pciide0:0:0): using PIO mode 0, DMA mode 1
pciide0: channel 1 ignored (disabled)
uhci0 at pci0 dev 7 function 2 "Intel 82371AB USB" rev 0x01: irq 9
usb0 at uhci0: USB revision 1.0
uhub0 at usb0
uhub0: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub0: 2 ports with 2 removable, self powered
"Intel 82371AB Power Mgmt" rev 0x02 at pci0 dev 7 function 3 not configured
fxp0 at pci0 dev 13 function 0 "Intel 82557" rev 0x10, i82550: irq 5, address 00:07:e9:09:c3:f1
inphy0 at fxp0 phy 1: i82555 10/100 PHY, rev. 4
fxp1 at pci0 dev 14 function 0 "Intel 82557" rev 0x10, i82550: irq 10, address 00:07:e9:08:d1:fc
inphy1 at fxp1 phy 1: i82555 10/100 PHY, rev. 4
pciide1 at pci0 dev 15 function 0 "Promise PDC20268" rev 0x02: DMA, channel 0 configured to native-PCI, channel 1 configured to native-PCI
pciide1: using irq 15 for native-PCI interrupt
wd0 at pciide1 channel 0 drive 0: <WDC WD200BB-00AUA1>
wd0: 16-sector PIO, LBA, 19092MB, 39102336 sectors
wd1 at pciide1 channel 0 drive 1: <WDC AC29100D>
wd1: 16-sector PIO, LBA, 8693MB, 17803440 sectors
wd0(pciide1:0:0): using PIO mode 4, Ultra-DMA mode 5
wd1(pciide1:0:1): using PIO mode 4, Ultra-DMA mode 4
hifn0 at pci0 dev 16 function 0 "Hifn 7955/7954" rev 0x00: LZS 3DES ARC4 MD5 SHA1 RNG AES PK, 32KB dram, irq 9
isa0 at pcib0
isadma0 at isa0
pckbc0 at isa0 port 0x60/5
pckbd0 at pckbc0 (kbd slot)
pckbc0: using irq 1 for kbd slot
wskbd0 at pckbd0 (mux 1 ignored for console): console keyboard
vga0 at isa0 port 0x3b0/48 iomem 0xa0000/131072
wsdisplay0 at vga0: console (80x25, vt100 emulation), using wskbd0
wsdisplay0: screen 1-5 added (80x25, vt100 emulation)
pcppi0 at isa0 port 0x61
midi0 at pcppi0: <PC speaker>
sysbeep0 at pcppi0
lpt0 at isa0 port 0x378/4 irq 7
npx0 at isa0 port 0xf0/16: using exception 16
pccom0 at isa0 port 0x3f8/8 irq 4: ns16550a, 16 byte fifo
pccom0: console
pccom1 at isa0 port 0x2f8/8 irq 3: ns16550a, 16 byte fifo
fdc0 at isa0 port 0x3f0/6 irq 6 drq 2
fd0 at fdc0 drive 0: 1.44MB 80 cyl, 2 head, 18 sec
biomask fb45 netmask ff65 ttymask ffe7
pctr: 686-class user-level performance counters enabled
mtrr: Pentium Pro MTRR support
dkcsum: wd0 matched BIOS disk 80
dkcsum: wd1 matched BIOS disk 81
root on wd0a
rootdev=0x0 rrootdev=0x300 rawdev=0x302
Visit your host, monkey.org