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개를 지정하고 싶습니다.
감사해요.