Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    Драйвера для Intel x540 Virtual Function для HyperV

    Scheduled Pinned Locked Moved Russian
    9 Posts 4 Posters 2.1k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • P
      programmer_86
      last edited by

      Здравствуйте, вчера заметил у себя в HyperV, что для моей виртуальной машины с pfSense не работает SR-IOV. Начал разбираться и понял, что после обновлений слетел драйвер на сетевую карту - if_ixv.ko. Его я собирал вручную для FreeBSD 11.3, а сейчас версия моего pfSense - 2.6.0-RELEASE (amd64), это FreeBSD 12.3. Решил что нужно собрать заново.
      Скачал образ FreeBSD, установил, скачал с сайта intel исходники, собрал драйвер и проверяю, на этой же системе, но SR-IOV так и не работает. После пары не удачных попыток, чуток полазив в исходных кодах, я так понимаю, что в исходниках есть следующие:

      #define IXGBE_DEV_ID_X540_VF_HV			0x1530
      

      но эта константа ни где в коде не используется и по этому драйвер не подтягивается. Вот что выдает pciconf -l (последняя строчка):

      hostb0@pci0:0:0:0:      class=0x060000 card=0x00000000 chip=0x71928086 rev=0x03 hdr=0x00
      isab0@pci0:0:7:0:       class=0x060100 card=0x00001414 chip=0x71108086 rev=0x01 hdr=0x00
      atapci0@pci0:0:7:1:     class=0x010180 card=0x00000000 chip=0x71118086 rev=0x01 hdr=0x00
      none0@pci0:0:7:3:       class=0x068000 card=0x00000000 chip=0x71138086 rev=0x02 hdr=0x00
      vgapci0@pci0:0:8:0:     class=0x030000 card=0x00000000 chip=0x53531414 rev=0x00 hdr=0x00
      none1@pci1:0:2:0:       class=0x020000 card=0x00000000 chip=0x15308086 rev=0x01 hdr=0x00
      

      Вопрос, в том что в прошлый раз я это как-то провернул и драйвер успешно работал, пока не обновился FreeBSD. Скорее всего это были какие-то другие исходники, вопрос в том какие? Я скачал все возможные версии с сайта intel, но во всех нет реализации под HyperV:
      949b3eb3-12fb-4b9b-83ea-e40921f11641-image.png
      Помогите пожалуйста, не знаю что делать, может у кого-то остались другие исходники драйвера или может готовый модуль

      K 1 Reply Last reply Reply Quote 0
      • P
        programmer_86
        last edited by

        Или может просто у кого-то есть ссылка на драйвера Intel x540 Virtual Function (HyperV) для FreeBSD?

        werterW 1 Reply Last reply Reply Quote 0
        • werterW
          werter @programmer_86
          last edited by werter

          Добрый
          @programmer_86
          Уходите с этой проприетарщины. Пользуйте открытое решение linux kvm в исполнении Proxmox VE https://forum.netgate.com/topic/163435/proxmox-ceph-zfs-pfsense-%D0%B8-%D0%B2%D1%81%D0%B5-%D0%B2%D1%81%D0%B5-%D0%B2%D1%81%D0%B5-%D1%87%D0%B0%D1%81%D1%82%D1%8C-2/
          Там sr-iov точно работает.
          Если интересно, пишите в ЛС. Даже покажу как оно выглядит вживую )

          P 1 Reply Last reply Reply Quote 0
          • P
            programmer_86 @werter
            last edited by programmer_86

            @werter Забавно, у меня две темы здесь, на форуме Netgat'а, и в обоих вы откликались первым и заманивали меня на Proxmox. В предыдущей, кстати, вы мне очень помогли и там все заработало в Proxmox. Я попользовался им примерно с месяц или чуть больше, но там был косяк из-за которого я вернулся обратно к HyperV (если интересно, могу расписать в ЛС), в целом он мне больше нравиться. И кстати после всех манипуляций в bios проброс PCI устройства заработал и в HyperV.

            В общем эта тема не про это, тут проблема точно не в гипервизоре, потому что SR-IOV благополучно работал, у меня даже остался .ko модуль, который я компилировал и с ним все работает, но он под старую версию FreeBSD, жаль я не сохранил исходников. Вопрос в том где-же я их взял и что это были за исходники. И где мне их найти сейчас?

            Или может есть способ использовать .ko принудительно от старой версии, но как стабильно он будет работать?

            werterW 1 Reply Last reply Reply Quote 0
            • werterW
              werter @programmer_86
              last edited by

              @programmer_86
              Отпишите в ЛС по поводу ,что не так пошло с pve.

              1 Reply Last reply Reply Quote 0
              • K
                Konstanti @programmer_86
                last edited by

                @programmer_86
                Здр
                я , конечно , слабо в этих адаптерах разбираюсь
                НО
                на сайте Интел есть вот такое
                https://www.intel.com/content/www/us/en/download/14303/14688/intel-network-adapters-driver-for-pcie-10-gigabit-network-connections-under-freebsd.html?

                на выходе драйвер if_ix.ko

                но что меня заинтересовало в Makefile на этот драйвер

                # Enable SR-IOV PF support
                SRIOV_ENABLE = 0
                
                # SR-IOV support requires additional files and a kernel version check
                KERNVER != uname -K
                VERS_CHECK != test $(KERNVER) -ge 1100000 ; echo $$?
                
                .if $(SRIOV_ENABLE) && !$(VERS_CHECK)
                CFLAGS += -DPCI_IOV
                SRCS += pci_iov_if.h
                .endif
                

                Может быть Вам это поможет. Судя по тому , что в С-код полезли , разберетесь ) что и как

                P 1 Reply Last reply Reply Quote 1
                • viktor_gV
                  viktor_g Netgate
                  last edited by

                  Лучше написать багрепорт:
                  https://docs.netgate.com/pfsense/en/latest/development/bug-reports.html

                  1 Reply Last reply Reply Quote 0
                  • P
                    programmer_86 @Konstanti
                    last edited by

                    @konstanti Спасибо, но не тот, мне нужен именно ixv. Этот драйвер подошел бы если я целиком пробросил карту в pfSense.
                    А мне нужно что-то вроде этого:
                    https://www.intel.ru/content/www/ru/ru/download/645984/intel-network-adapter-virtual-function-driver-for-pcie-10-gigabit-network-connections-under-freebsd.html
                    только рабочее для HyperV :)

                    K 1 Reply Last reply Reply Quote 0
                    • K
                      Konstanti @programmer_86
                      last edited by Konstanti

                      @programmer_86 said in Драйвера для Intel x540 Virtual Function для HyperV:

                      https://www.intel.ru/content/www/ru/ru/download/645984/intel-network-adapter-virtual-function-driver-for-pcie-10-gigabit-network-connections-under-freebsd.html

                      Тогда попробуйте ход конем
                      Судя по тому , что в исходниках на ixv-1.5.31 есть файл ixbe_sriov.h и в файле ixgbe.h есть на него ссылка
                      то добавьте в Makefile такой кусок ( по аналогии с Makefile для if_ix )

                      # Enable SR-IOV PF support
                      SRIOV_ENABLE = 1
                      
                      # SR-IOV support requires additional files and a kernel version check
                      KERNVER != uname -K
                      VERS_CHECK != test $(KERNVER) -ge 1100000 ; echo $$?
                      
                      .if $(SRIOV_ENABLE) && !$(VERS_CHECK)
                      CFLAGS += -DPCI_IOV
                      SRCS += pci_iov_if.h
                      .endif
                      

                      и попробуйте собрать драйвер

                      1 Reply Last reply Reply Quote 0
                      • First post
                        Last post
                      Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.