diff options
author | Stephen Hemminger <stephen.hemminger@vyatta.com> | 2011-02-22 14:11:27 -0800 |
---|---|---|
committer | Stephen Hemminger <stephen.hemminger@vyatta.com> | 2011-02-22 14:11:27 -0800 |
commit | 018c1ac6286ad40d7fff612573a7efffafe0d480 (patch) | |
tree | 78e1ce280ef3f9d4f71f4d4db718ee4bbbda4e5d /scripts/system/irq-affinity.pl | |
parent | e42ffb4077c29c28f9e4b4d9cb62e863d7f24027 (diff) | |
download | vyatta-cfg-system-018c1ac6286ad40d7fff612573a7efffafe0d480.tar.gz vyatta-cfg-system-018c1ac6286ad40d7fff612573a7efffafe0d480.zip |
Handle Vmware mulitqueue naming convention
Adapt to irq naming convention in 2.6.37 kernel for vmxnet3 driver.
Diffstat (limited to 'scripts/system/irq-affinity.pl')
-rwxr-xr-x | scripts/system/irq-affinity.pl | 10 |
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'] ); |