Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Cannot get NIC to show when setting up a VM

Featured Replies

G'day Unraid Community!

 

I'm very new to servers / unraid so please excuse my ignorance!

 

I'm having trouble getting my NIC to display as an "Other PCI Devices" to allow passthrough when creating a freebsd VM - I'm trying to get the VM to host pfSense.

 

I'm following SpaceInvader One's guide on pfSense install on Unraid:

 

I'm using a Dell r730 server, I have enabled IOMMU within the BIOS. I have also checked that my Broadcom BCM5720 Gigabit Ethernet PCIe is compatible with freebsd.

 

I have no idea what I've done wrong - could anyone please help me out??

 

Please find below pictures to show my config, etc.

 

My Syslinux Config where I performed the ACS overide:

1818879525_syslinuxconfig.thumb.JPG.face432e8157967ac4768bd4341cb2e1.JPG

 

My IOMMU groups did look like this prior to the ACS overide:

943330616_iommu1.thumb.JPG.716b3f84cb7d33e624b5f14a0c3e3a02.JPG

 

Now what my IOMMU groups look like after the ACS overide:

1204889999_iommugroups.thumb.JPG.f6bdd68af682190e4cfa4db0d12ea147.JPG

 

My Network Settings:

1667709381_Networksettings1.thumb.JPG.3c581f834897a04877877f3729115e22.JPG

1024729550_Networksettings2.thumb.JPG.b9e4d7b679dbb6eb1cbe79713267b40d.JPG199251185_Networksettings3.thumb.JPG.d4bdfdc5cdd74d73794c7108e09227f3.JPG

 

The VM I'm trying to create:

VM1.thumb.JPG.6c56ddc45047541e891cb06a7bef183e.JPG

VM2.thumb.JPG.3ab2f56777eee24f86a39d7568b88d89.JPG

 

What I'm expecting to see from @SpaceInvaderOne video:
786396660_SPOVMScreenshot.thumb.JPG.a92611411c60af34d9667e282d74f562.JPG

 

Thanks guys!

Edited by partyx
Deleted extra screen shot

Solved by ghost82

  • Solution

Syslinux config looks good to me, but I would set it to:

pcie_acs_override=downstream,multifunction

Reboot the server.

Go to your iommu groups through the unraid gui and see if you can put checkmarks on ehternet controllers that you want to passthrough, save and reboot the server.

Now go to your vm and see if something shows.

Note that you can't passthrough ethernet controllers that are in use by unraid (which seems the case, since you are setting in unraid eth0 -->eth3), boxes will show greyed out in iommu groups.

--

The above instructions may not work..

Be sure to have another device to attach the unraid usb in case something goes wrong and restore a backup

Not sure but you may need to set the config manually since all the controllers have the same vendor/device id.

1. backup the unraid usb, so to restore if something goes wrong

2. open config/vfio-pci.cfg with a text editor in the unraid usb stick

3. Add BIND=0000:01:00.1|14e4:165f 0000:02:00.0|14e4:165f 0000:02:00.1|14e4:165f

Note that I didn't write 01:00.0 which should be eth0, needed and reserved for unraid

 

Save and reboot, and your eth1-->eth3 (3 ports) should now be isolated, without loosing eth0 connectivity for unraid.

Edited by ghost82

  • Author

Thanks for the reply!

 

Ok so I've changed the acs overide to what you suggested:
973912131_syslinuxconfig1.thumb.JPG.10b8b8e2f8107b73cc9e427d66277999.JPG

 

The IOMMU groups for the NIC is already greyed out:

769005964_iommu2.thumb.JPG.0c0395ed0922f2fb5b4587c2dfbf1aa5.JPG

 

VM still doesn't show the card to passthrough:

VM3.thumb.JPG.8cca6cab048ec5546d341d43631e28e5.JPG

Look my edited post above and go/try the manual way

  • Author

So I left the pcie_acs_override=downstream,multifunction config in the syslinux.

 

I went to the config folder, there was no vfio-pci.cfg file so I manually created it.

 

In that file, I only have the following line written:

 

BIND=14e4:165f 0000:01:00.1|14e4:165f 0000:02:00.0|14e4:165f 0000:02:00.1

 

image_2022-12-16_095114869.thumb.png.ee3eb1d79eaed9ef54bbc970cb184a51.png

 

Other PCI Devices within the VM configuration screen, still shows "None available".

 

  • Author

Ok so I misunderstood in my previous post...

I had to create a vfio-pci.cfg file via the terminal and within the file put:

 

BIND=14e4:165f 0000:01:00.1|14e4:165f 0000:02:00.0|14e4:165f 0000:02:00.1

 

After reboot, nothing has changed...

 

I double checked that the vfio-pci.cfg file is still within the config:

image_2022-12-16_121632284.thumb.png.a3a43cefd42bfaa29cb37b8d0d4d88c3.png

 

There is no button for vfio-pci within the tools: 

tools.thumb.JPG.5c56334e33c97a6fbb6d4a6ef2e2013d.JPG

 

It appears that the vfio-pci.cfg file isnt being read?

 

Cheers

  • Author

Thanks for your assistance @ghost82 - I got it going now!

 

 

Nica that it works now.

Just for completeness, before making it going I can see following errors:

8 hours ago, partyx said:

BIND=14e4:165f 0000:01:00.1|14e4:165f 0000:02:00.0|14e4:165f 0000:02:00.1

 

it's wrong, should be:

BIND=0000:01:00.1|14e4:165f 0000:02:00.0|14e4:165f 0000:02:00.1|14e4:165f

 

5 hours ago, partyx said:

image_2022-12-16_121632284.thumb.png.a3a43cefd42bfaa29cb37b8d0d4d88c3.png

 

Name of the file vfio.pci.cfg is wrong, should be vfio-pci.cfg

  • Author

Ok cool - I will change the binding now.

 

Yeah i picked up the issue with the vfio.pci.cfg...

 

1210972330_iommu4.thumb.JPG.6a4c70954dbe4f693b29949f090590e2.JPG

 

I've selected all 3 for me freebsd VM.

 

The issue I'm having now however, is pfSense is only picking up one interface during the install - bge0.

image_2022-12-16_182031014.thumb.png.6708683ac295e59ba749bf4549eb5e64.png

 

 

If the vm is setup correctly for all the controllers passed it could be an issue with configuration (?).

I know @Ford Prefect is a sort of guru for network related things, maybe he knows what's wrong.

  • Author

So after some testing with a mate, we found that only selecting the 2 interfaces on BUS 2 works, you just cannot get split the other BUS and have one interface work.

 

I proved this by creating another VM and just selecting 0000:01:00.1 - during pfSense booting up, it says not ethernet found and wont allow you to go any further with the configuration.

11 minutes ago, partyx said:

we found that only selecting the 2 interfaces on BUS 2 works

Thanks for reporting. It can be quite tricky even to pass the controllers so consider yourself lucky to have 2 nics available in the vm.

It could be an issue with initialization for the driver, since you have 4 controllers, coupled 2 by 2 in a multifunction device; having one of the multifunction controller missing may cause issue for the driver or for the firmware.

 

So, having only one nic available for the vm (in your last screenshot) was probably due to the error in the vfio-pci.cfg:

BIND=14e4:165f 0000:01:00.1|14e4:165f 0000:02:00.0|14e4:165f 0000:02:00.1 

Most probably only the controller on 02:00.0 was available, but changing the sintax into vfio-pci.cfg made both available.

12 hours ago, ghost82 said:

If the vm is setup correctly for all the controllers passed it could be an issue with configuration (?).

I know @Ford Prefect is a sort of guru for network related things, maybe he knows what's wrong.

 

10 hours ago, partyx said:

So after some testing with a mate, we found that only selecting the 2 interfaces on BUS 2 works, you just cannot get split the other BUS and have one interface work.

 

I proved this by creating another VM and just selecting 0000:01:00.1 - during pfSense booting up, it says not ethernet found and wont allow you to go any further with the configuration.

...I only had a brief look into this thread....with pfsense/freebsd another issue I remember with NICs on passthrough not showing up in the OS, had something to do with the machine model and BIOS selected in the VM config.

What helped was to select a less advanced machine, like an i440fx-??? and Seabios instead of OVMF.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.