summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStephen Hemminger <stephen.hemminger@vyatta.com>2011-02-22 14:11:27 -0800
committerStephen Hemminger <stephen.hemminger@vyatta.com>2011-02-22 14:11:27 -0800
commit018c1ac6286ad40d7fff612573a7efffafe0d480 (patch)
tree78e1ce280ef3f9d4f71f4d4db718ee4bbbda4e5d
parente42ffb4077c29c28f9e4b4d9cb62e863d7f24027 (diff)
downloadvyatta-cfg-quagga-018c1ac6286ad40d7fff612573a7efffafe0d480.tar.gz
vyatta-cfg-quagga-018c1ac6286ad40d7fff612573a7efffafe0d480.zip
Handle Vmware mulitqueue naming convention
Adapt to irq naming convention in 2.6.37 kernel for vmxnet3 driver.
-rwxr-xr-xscripts/system/irq-affinity.pl10
1 files changed, 9 insertions, 1 deletions
diff --git a/scripts/system/irq-affinity.pl b/scripts/system/irq-affinity.pl
index e334f4aa..99d37bbc 100755
--- a/scripts/system/irq-affinity.pl
+++ b/scripts/system/irq-affinity.pl
@@ -289,16 +289,24 @@ sub affinity_auto {
my $ntx = grep { /$ifname-tx-/ } @irqnames;
die "$ifname: rx queues $nq != tx queues $ntx"
unless ( $nq == $ntx );
-
+
return assign_multiqueue( $ifname, $nq, $irqmap,
[ '%s-rx-%d', '%s-tx-%d' ] );
}
+ # intel convention
$nq = grep { /$ifname-TxRx-/ } @irqnames;
if ( $nq > 0 ) {
return assign_multiqueue( $ifname, $nq, $irqmap, ['%s-TxRx-%d'] );
}
+ # vmxnet3 convention
+ $nq = grep { /$ifname-rxtx-/ } @irqnames;
+ if ( $nq > 0 ) {
+ return assign_multiqueue( $ifname, $nq, $irqmap, ['%s-rxtx-%d'] );
+ }
+
+ # old naming
$nq = grep { /$ifname-\d$/ } @irqnames;
if ( $nq > 0 ) {
return assign_multiqueue( $ifname, $nq, $irqmap, ['%s-%d'] );