summaryrefslogtreecommitdiffstats
path: root/etc/inc
diff options
context:
space:
mode:
authorScott Ullrich <sullrich@pfsense.org>2005-10-13 02:14:23 +0000
committerScott Ullrich <sullrich@pfsense.org>2005-10-13 02:14:23 +0000
commit65dea9fbc041371113df13ac3dc2023920e675f7 (patch)
tree247caef1cf3309f5ab010a1986ade8baa5678c07 /etc/inc
parentcd0392df20336381da44d4bc9de908ab4f6b92ee (diff)
downloadpfsense-65dea9fbc041371113df13ac3dc2023920e675f7.zip
pfsense-65dea9fbc041371113df13ac3dc2023920e675f7.tar.gz
Enable polling for an interface if it supports it.
Thanks to the revised polling code that is SMP compatible!
Diffstat (limited to 'etc/inc')
-rw-r--r--etc/inc/pfsense-utils.inc12
1 files changed, 12 insertions, 0 deletions
diff --git a/etc/inc/pfsense-utils.inc b/etc/inc/pfsense-utils.inc
index b7d683a..c1d3738 100644
--- a/etc/inc/pfsense-utils.inc
+++ b/etc/inc/pfsense-utils.inc
@@ -124,6 +124,18 @@ function enable_hardware_offloading($interface) {
if(isset($config['system']['do_not_use_nic_microcode']))
return;
if($g['booting']) {
+ /* active polling for interface if it supports it
+ * man polling on a freebsd box for the following list
+ */
+ $supported_ints = array('dc', 'em', 'fwe', 'fwip', 'fxp', 'ixgb',
+ 'nge', 're', 'rl', 'sf', 'sis', 'ste', 'vge', 'vr', 'xl', 'fxp');
+ foreach($supported_ints as $int) {
+ echo "\n{$interface} ";
+ if(stristr($interface,$int) != false) {
+ echo "enable polling for {$interface}";
+ mwexec("/sbin/ifconfig {$interface} polling");
+ }
+ }
/* translate wan, lan, opt -> real interface if needed */
$int = filter_translate_type_to_real_interface($interface);
if($int <> "") $interface = $int;
OpenPOWER on IntegriCloud