Jump to content

Recommended Posts

Posted

ситуация такая - есть сервак с сетевушкой Intel 82599. она двухпортовая. физическое устройство имеет 16 очередей и 64 прерывания. а виртуальное на RX всего одну.

 

 

вот физическая сетевуха:

05:00.0 Ethernet controller: Intel Corporation 82599EB 10-Gigabit Network Connection (rev 01)

Capabilities: [70] MSI-X: Enable+ Count=64 Masked-

 

а вот её VF девайс:

05:10.0 Ethernet controller: Intel Corporation Device 10ed (rev 01)

Capabilities: [70] MSI-X: Enable- Count=3 Masked-

при загрузке драйвера становится Enable+

это то что видно из _dom0. с KVM аналогично.

в госте соответственно тоже Count=3

одно RX одно TX и одно lsc

а у драйвера ixgbevf опций, относящихся к виртуализации вообще нет.

 

 

нет очередей потому что нет прерываний? или оно как-то по другому работает? ни в readme ни в описании ничего не нашёл про то как оно должно быть.

у драйвера ixgbe есть опция VMDQ про которую в readme ничего нет. в версии 3.3.9 она вроде как рабочая но очереди только у основных сетевух появляются.

в 3.2.10 с этой опцией переставала работать сеть в _dom0. при этом работала в гостевой системе.

опций у модуля ixgbe кроме VMDQ и max_vfs больше нет - смотрел в сорцах.

хочется и в госте иметь несколько очередей но вот как это сделать?

вариант с прокидыванием нескольких VF сетевух и сооружением port-channel'а не прокатил, да и костыль это.

Posted (edited)

PCI-SIG SR-IOV Primer: An Introduction To SR-IOV Technology, 2.5

Intel® 82599 SR-IOV Driver Companion Guide, 1.0

 

насколько я понял, если даешь max_vfs=64 (default), то ресурсы делятся поровну на 64 vf, соответственно по 1 на vm.

по даташиту вроде как есть 3 градации: 16, 32 и 64. попробуй задать max_vfs=16, может очередей станет больше.

 

VMDq тебе не нужен - это софтэмуль для тех гостевых осей, под которые intel не писала драйвер.

 

UPD: возможно это ещё связано и с наличием/отсутствием поддержки VT-d процом.

Edited by zurz
Posted (edited)

при включении max_vfs очереди пропадают вообще. даже в dom0, пока не пропишешь их в VMDQ.

параметр max_vfs отключает и блокирует RSS. количество vfs никак не влияет на количество прерываний у них.

какой бы ни был max_vfs, у VF всегда Capabilities: [70] MSI-X: Enable- Count=3 Masked-

я так понимаю что нет прерываний - нет очередей.

Edited by lionel
Posted

с другой стороны, если логически помыслить...

обычно на физической машине прерывания сетевухи прибиваются к конкретным CPU.

виртуальная машина в абстрактном случае запускается на хз каком CPU -> для вешания прерываний нужно биндить VM к CPU?

Posted

если это паравиртуализация то да. если нет то наверно как на физической машине. физическую сетевуху гостю давал - очередей несколько, всё замечательно работает, из KVM нагрузка видна, распределена по ядрам как и в госте.

Posted

From: Alexander Duyck <alexander.h.duyck@intel.com>

CC: e1000-devel@lists.sf.net

Subject: Re: [E1000-devel] ixgbe 3.3.9 driver for linux and undocumented VMDQ option. VF multiple queues.

Date: Thu, 07 Jul 2011 08:52:29 -0700

User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.17) Gecko/20110428 Fedora/3.1.10-1.fc14 Lightning/1.0b3pre Thunderbird/3.1.10

 

The ixgbe and ixgbevf drivers currently do not support multi-queue VFs.

 

The VMDQ option is also not fully feature complete at this time.

Currently all it does is configure the device to support multiple VMDq

pools, however since the Linux kernel currently doesn't have a defined

means of making use of these pools they are unused.

 

Thanks,

 

Alex

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...
На сайте используются файлы cookie и сервисы аналитики для корректной работы форума и улучшения качества обслуживания. Продолжая использовать сайт, вы соглашаетесь с использованием файлов cookie и с Политикой конфиденциальности.