diff options
Diffstat (limited to 'etc/inc')
-rw-r--r-- | etc/inc/pfsense-utils.inc | 12 |
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; |