[Winpcap-bugs] Potential waste of NonPaged kernel buffer space on Hyper-Threading machines in the NPF Driver?

Gadi Elishayov haxorcize at gmail.com
Sat May 23 12:33:28 PDT 2009


I've conducted some tests on an Hyper-Threading enabled machine with 2
Physical CPUs and I found out that NdisSystemProcessorCount() returns 4
(that is due to the virtual cpu).
Also, to my understanding, in the HT technology, only one CPU out of a pair
of 2 virtual will ever handle interrupts.
 
The code in the NPF driver uses this value to divide its per-CPU buffer,
but given the fact that only half of the processors handle interrupts, the
buffer itself is wasted on those CPUs who don't handle interrupts.
 
Am I wrong?
Is there a way to fix this besides making a single buffer for the entire
machine?
Maybe some good way to know which CPUs will handle interrupts, drain the DPC
queue?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.winpcap.org/pipermail/winpcap-bugs/attachments/20090523/e17dc64c/attachment.htm 


More information about the Winpcap-bugs mailing list