linux / Qemu / KVMでRx Queue = Nを設定する方法は?

linux / Qemu / KVMでRx Queue = Nを設定する方法は?

CentOS VM(KVMで実行)に8つのマルチキューを設定しました。

<interface type='direct' trustGuestRxFilters='yes'>
  <source dev='ens113f0' mode='passthrough'/>
  <model type='virtio'/>
  <driver name='vhost' queues='8'/>
</interface>

ethtoolを使用して、仮想マシンに8つのキューが作成されたことを確認できます。

[centos@vm ~]$ ethtool -l eth1
Channel parameters for eth1:
Pre-set maximums:
RX:     0
TX:     0
Other:      0
Combined:   8
Current hardware settings:
RX:     0
TX:     0
Other:      0
Combined:   4

DPDKアプリケーションをRXキュー1つとTXキュー2つに制限したいと思います。 ethtoolを使用して同じ値を設定しようとしましたが、次のエラーが発生します。

[centos@vm ~]$ sudo ethtool -L eth1 rx 1 tx 2
Cannot set device channel parameters: Invalid argument

結合キュー = 2 を設定できますが、特定の RX/TX キューは設定できません。

[centos@vm ~]$ sudo ethtool -L eth1 combined 2
[centos@vm ~]$ ethtool -l eth1
Channel parameters for eth1:
Pre-set maximums:
RX:     0
TX:     0
Other:      0
Combined:   8
Current hardware settings:
RX:     0
TX:     0
Other:      0
Combined:   2

何らかの理由/正当性がありますか?

LinuxでRXキューとTXキューを設定する他の方法はありますか?

libvirt XML / QemuコマンドでRXおよびTXキューのサイズを指定する方法はありますか?この質問を投稿する前にGoogleで検索しましたが、何も見つかりませんでした。 RXキュー1個とTXキュー2個を指定したいです。

ありがとうございます。

ベストアンサー1

おすすめ記事