On Monday, November 15, 2010 10:55:24 am Mike Tancsa
wrote:> While trying to debug an issue with an em nic, I noticed that if I
> unload the kld which previously had the nic using multiple msi
> interrupts, and then load it with msix disabled, vmstat -i shows some
> funny output
>
> e.g. before
>
> interrupt total rate
> irq4: uart0 37945 0
> irq16: siis0 90443357 55
> irq18: arcmsr0 138839249 84
> irq19: bge0 twa0 4642943 2
> irq21: ehci0 11565862 7
> irq23: ehci1 3279942 2
> cpu0: timer 3279559638 2000
> irq256: em0 1609329648 981
> irq257: em1:rx 0 756066703 461
> irq258: em1:tx 0 595711018 363
> irq259: em1:link 41186 0
> irq260: ahci0 94752814 57
> cpu1: timer 3279552436 2000
> cpu3: timer 3279552195 2000
> cpu2: timer 3279550937 2000
> Total 16422925873 10015
>
>
> and after
>
> # vmstat -i
> interrupt total rate
> irq4: uart0 42144 0
> irq16: siis0 93796258 54
> irq18: arcmsr0 144244159 83
> irq19: bge0 twa0 4840729 2
> irq21: ehci0 12015466 6
> irq23: ehci1 3436876 2
> cpu0: timer 3436486096 2000
> irq256: em0 1719107713 1000
> irq257: em1 767271792 446
> irq258: 605077993 352
> irq259: 41186 0
> irq260: ahci0 98454608 57
> cpu1: timer 3436478875 2000
> cpu3: timer 3436478653 2000
> cpu2: timer 3436477132 2000
> Total 17194249680 10007
>
> Is this just a display issue, or are the resources still allocated ?
The interrupt doesn't go away when you unload the driver and it's
historical
count doesn't go away. vmstat -i just hides interrupts with a count of
zero,
but unloading the driver doesn't zero the count, so it will stay there
forever. It might get reused by a different driver that uses MSI or MSI-X if
you were to kldload said driver.
--
John Baldwin