igb(4) Pondering a bind to cpu patch
Sean Bruno
seanbru at yahoo-inc.com
Wed Apr 25 00:11:29 UTC 2012
http://people.freebsd.org/~sbruno/if_igb.c.txt
Scenario I've just seen:
8 core machine
2 igb(4) interfaces
set num_queues=4
igb0:0 --> cpu0
igb0:1 --> cpu1
igb0:2 --> cpu2
igb0:3 --> cpu3
igb1:0 --> cpu0
igb1:1 --> cpu1
igb1:2 --> cpu2
igb1:3 --> cpu3
I suspect, that we need a static global to keep track of what cpu last
was last bound to a queue. My patch does do this, but I don't know if
its the right thing.
Since I'm doing multiple interfaces, I need to make sure I don't
schedule a queue to a non existent cpu, so take a modulo of the counter
and the number of cpus in the box.
Perhaps not the most elegant solution, but its a thing?
Sean
More information about the freebsd-net
mailing list