How to obtain what swi1:net is doing?

Коньков Евгений kes-kes at yandex.ru
Sun Nov 14 16:48:46 UTC 2010


Здравствуйте, Ivan.

Вы писали 13 ноября 2010 г., 20:35:12:

IV> 2010/11/13 Коньков Евгений <kes-kes at yandex.ru>:

>> IV> net.isr.direct_force=0
>> IV> net.isr.maxthreads=2
>> FreeBSD/SMP: Multiprocessor System Detected: 4 CPUs
>> FreeBSD/SMP: 1 package(s) x 2 core(s) x 2 SMT threads
>>  cpu0 (BSP): APIC ID:  0
>>  cpu1 (AP): APIC ID:  1
>>  cpu2 (AP): APIC ID:  4
>>  cpu3 (AP): APIC ID:  5
>> ioapic0: Changing APIC ID to 6
>> ioapic0 <Version 2.0> irqs 0-23 on motherboard
>> netisr_init: forcing maxthreads to 1 and bindthreads to 0 for device polling
>>
>> # cat /boot/loader.conf
>> net.isr.maxthreads=2
>>
>> maxthreads does not affected

IV> I don't understand: how is it not affected?
# cat /boot/loader.conf
net.isr.maxthreads=2
after server was rebooted:
# sysctl net.isr.maxthreads
net.isr.maxthreads: 1


IV> On a system with maxthreads=2, here is how it shows:

IV> betelgeuse:/home/ivoras# ps axuHc | grep isr
IV> root          12  3.0  0.0     0   432  ??  WL   12:21PM   0:09.21
IV> intr/swi1: netisr 7
IV> root          12  0.0  0.0     0   432  ??  WL   12:21PM   0:00.00
IV> intr/swi1: netisr 0

IV> I.e. there are two threads here, bound to CPU cores 0 and 7.
on my system with
# cat /boot/loader.conf
net.isr.maxthreads=2
and server reboot
# ps axuHc | grep isr
root     12   0,0  0,0      0    224  ??  WL   12:54     0:00,00 intr/swi1: netisr 0


>> #uname -r
>> 9.0-CURRENT

IV> Yes, multithreaded netisr was introduced in FreeBSD 8, it wasn't there in 7.




-- 
С уважением,
 Коньков                          mailto:kes-kes at yandex.ru



More information about the freebsd-questions mailing list