Re: netisr ambigios policy

From: Коньков Евгений <kes-kes_at_yandex.ru>
Date: Sat, 14 Jan 2012 16:45:31 +0200
Здравствуйте, Коньков.

Вы писали 14 января 2012 г., 15:31:04:


КЕ> From sys/net/netisr.c

КЕ>         switch (netisr_dispatch_policy) {
КЕ>         case NETISR_DISPATCH_DEFERRED:
КЕ>                 netisr_direct_force = 0;
КЕ>                 netisr_direct = 0;
КЕ>                 break;

КЕ>         case NETISR_DISPATCH_HYBRID:
КЕ>                 netisr_direct_force = 0;
КЕ>                 netisr_direct = 1;
КЕ>                 break;

КЕ>         case NETISR_DISPATCH_DIRECT:
КЕ>                 netisr_direct_force = 1;
КЕ>                 netisr_direct = 1;
КЕ>                 break;

КЕ> that having direct_force = 0 and direct = 0 it is DISPATCH_DEFFERED

КЕ> but doing:
КЕ> # sysctl net.isr
КЕ> net.isr.numthreads: 4
КЕ> net.isr.maxprot: 16
КЕ> net.isr.defaultqlimit: 256
КЕ> net.isr.maxqlimit: 10240
КЕ> net.isr.bindthreads: 0
КЕ> net.isr.maxthreads: 4
КЕ> net.isr.direct: 0
КЕ> net.isr.direct_force: 0
КЕ> net.isr.dispatch: direct

КЕ> you can see that net.isr.dispatch is 'direct'
КЕ> I expect 'deffered' as it declared here:

КЕ> static const struct netisr_dispatch_table_entry netisr_dispatch_table[] = {
КЕ>         { NETISR_DISPATCH_DEFAULT, "default" },
КЕ>         { NETISR_DISPATCH_DEFERRED, "deferred" },
КЕ>         { NETISR_DISPATCH_HYBRID, "hybrid" },
КЕ>         { NETISR_DISPATCH_DIRECT, "direct" },


КЕ> Is this a BUG?

setting this to
net.isr.direct=1
net.isr.direct_force=1
in /boot/loader.conf
has no effect

# sysctl net.isr
net.isr.numthreads: 4
net.isr.maxprot: 16
net.isr.defaultqlimit: 256
net.isr.maxqlimit: 10240
net.isr.bindthreads: 0
net.isr.maxthreads: 4
net.isr.direct: 0
net.isr.direct_force: 0
net.isr.dispatch: direct

It seems has been broken in r222249



-- 
С уважением,
 Коньков                          mailto:kes-kes_at_yandex.ru
Received on Sat Jan 14 2012 - 13:45:39 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:23 UTC