Intel PCI-E Quad Port Card passthrough

The name of the pictureThe name of the pictureThe name of the pictureClash Royale CLAN TAG#URR8PPP








up vote
0
down vote

favorite












Im sorry for maybe lame question, but Im starting with linux so have mercy.



I have Ryzen 2400G setup with ubuntu 18.04 and IOMMU turned on.
I added Intel Quad Port Gigabit Ethernet and I wanna use it on pfsense on KVM.



I saw a lot of posts etc about this issue but only with VGA pci-e cards and I cant make it work with my ethernet card.
If I understands it I need to unbind HW from driver and bind it to KVM.
But I dont know how to do it :(



Info about my ethernet controller:



 1d:00.0 Ethernet controller [0200]: Intel Corporation 82571EB Gigabit Ethernet Controller (Copper) [8086:10bc] (rev 06)
Subsystem: IBM 82571EB Gigabit Ethernet Controller (Copper) (4-Port 10/100/1000 Base-TX PCI Express Adapter for POWER) [1014:0368]
Flags: bus master, fast devsel, latency 0, IRQ 60
Memory at fe6a0000 (32-bit, non-prefetchable) [size=128K]
Memory at fe680000 (32-bit, non-prefetchable) [size=128K]
I/O ports at d020 [disabled] [size=32]
Expansion ROM at fe660000 [disabled] [size=128K]
Capabilities: <access denied>
Kernel driver in use: e1000e
Kernel modules: e1000e

1d:00.1 Ethernet controller [0200]: Intel Corporation 82571EB Gigabit Ethernet Controller (Copper) [8086:10bc] (rev 06)
Subsystem: IBM 82571EB Gigabit Ethernet Controller (Copper) (4-Port 10/100/1000 Base-TX PCI Express Adapter for POWER) [1014:0368]
Flags: bus master, fast devsel, latency 0, IRQ 64
Memory at fe640000 (32-bit, non-prefetchable) [size=128K]
Memory at fe620000 (32-bit, non-prefetchable) [size=128K]
I/O ports at d000 [disabled] [size=32]
Expansion ROM at fe600000 [disabled] [size=128K]
Capabilities: <access denied>
Kernel driver in use: e1000e
Kernel modules: e1000e

1e:00.0 Ethernet controller [0200]: Intel Corporation 82571EB Gigabit Ethernet Controller (Copper) [8086:10bc] (rev 06)
Subsystem: IBM 82571EB Gigabit Ethernet Controller (Copper) (4-Port 10/100/1000 Base-TX PCI Express Adapter for POWER) [1014:0368]
Flags: bus master, fast devsel, latency 0, IRQ 65
Memory at fe5a0000 (32-bit, non-prefetchable) [size=128K]
Memory at fe580000 (32-bit, non-prefetchable) [size=128K]
I/O ports at c020 [disabled] [size=32]
Expansion ROM at fe560000 [disabled] [size=128K]
Capabilities: <access denied>
Kernel driver in use: e1000e
Kernel modules: e1000e

1e:00.1 Ethernet controller [0200]: Intel Corporation 82571EB Gigabit Ethernet Controller (Copper) [8086:10bc] (rev 06)
Subsystem: IBM 82571EB Gigabit Ethernet Controller (Copper) (4-Port 10/100/1000 Base-TX PCI Express Adapter for POWER) [1014:0368]
Flags: bus master, fast devsel, latency 0, IRQ 66
Memory at fe540000 (32-bit, non-prefetchable) [size=128K]
Memory at fe520000 (32-bit, non-prefetchable) [size=128K]
I/O ports at c000 [disabled] [size=32]
Expansion ROM at fe500000 [disabled] [size=128K]
Capabilities: <access denied>
Kernel driver in use: e1000e
Kernel modules: e1000e


Can someone please help to achieve what I want?
If you need any more info about my system etc, just ask.



Thanks for any suggestions and answers..







share|improve this question
























    up vote
    0
    down vote

    favorite












    Im sorry for maybe lame question, but Im starting with linux so have mercy.



    I have Ryzen 2400G setup with ubuntu 18.04 and IOMMU turned on.
    I added Intel Quad Port Gigabit Ethernet and I wanna use it on pfsense on KVM.



    I saw a lot of posts etc about this issue but only with VGA pci-e cards and I cant make it work with my ethernet card.
    If I understands it I need to unbind HW from driver and bind it to KVM.
    But I dont know how to do it :(



    Info about my ethernet controller:



     1d:00.0 Ethernet controller [0200]: Intel Corporation 82571EB Gigabit Ethernet Controller (Copper) [8086:10bc] (rev 06)
    Subsystem: IBM 82571EB Gigabit Ethernet Controller (Copper) (4-Port 10/100/1000 Base-TX PCI Express Adapter for POWER) [1014:0368]
    Flags: bus master, fast devsel, latency 0, IRQ 60
    Memory at fe6a0000 (32-bit, non-prefetchable) [size=128K]
    Memory at fe680000 (32-bit, non-prefetchable) [size=128K]
    I/O ports at d020 [disabled] [size=32]
    Expansion ROM at fe660000 [disabled] [size=128K]
    Capabilities: <access denied>
    Kernel driver in use: e1000e
    Kernel modules: e1000e

    1d:00.1 Ethernet controller [0200]: Intel Corporation 82571EB Gigabit Ethernet Controller (Copper) [8086:10bc] (rev 06)
    Subsystem: IBM 82571EB Gigabit Ethernet Controller (Copper) (4-Port 10/100/1000 Base-TX PCI Express Adapter for POWER) [1014:0368]
    Flags: bus master, fast devsel, latency 0, IRQ 64
    Memory at fe640000 (32-bit, non-prefetchable) [size=128K]
    Memory at fe620000 (32-bit, non-prefetchable) [size=128K]
    I/O ports at d000 [disabled] [size=32]
    Expansion ROM at fe600000 [disabled] [size=128K]
    Capabilities: <access denied>
    Kernel driver in use: e1000e
    Kernel modules: e1000e

    1e:00.0 Ethernet controller [0200]: Intel Corporation 82571EB Gigabit Ethernet Controller (Copper) [8086:10bc] (rev 06)
    Subsystem: IBM 82571EB Gigabit Ethernet Controller (Copper) (4-Port 10/100/1000 Base-TX PCI Express Adapter for POWER) [1014:0368]
    Flags: bus master, fast devsel, latency 0, IRQ 65
    Memory at fe5a0000 (32-bit, non-prefetchable) [size=128K]
    Memory at fe580000 (32-bit, non-prefetchable) [size=128K]
    I/O ports at c020 [disabled] [size=32]
    Expansion ROM at fe560000 [disabled] [size=128K]
    Capabilities: <access denied>
    Kernel driver in use: e1000e
    Kernel modules: e1000e

    1e:00.1 Ethernet controller [0200]: Intel Corporation 82571EB Gigabit Ethernet Controller (Copper) [8086:10bc] (rev 06)
    Subsystem: IBM 82571EB Gigabit Ethernet Controller (Copper) (4-Port 10/100/1000 Base-TX PCI Express Adapter for POWER) [1014:0368]
    Flags: bus master, fast devsel, latency 0, IRQ 66
    Memory at fe540000 (32-bit, non-prefetchable) [size=128K]
    Memory at fe520000 (32-bit, non-prefetchable) [size=128K]
    I/O ports at c000 [disabled] [size=32]
    Expansion ROM at fe500000 [disabled] [size=128K]
    Capabilities: <access denied>
    Kernel driver in use: e1000e
    Kernel modules: e1000e


    Can someone please help to achieve what I want?
    If you need any more info about my system etc, just ask.



    Thanks for any suggestions and answers..







    share|improve this question






















      up vote
      0
      down vote

      favorite









      up vote
      0
      down vote

      favorite











      Im sorry for maybe lame question, but Im starting with linux so have mercy.



      I have Ryzen 2400G setup with ubuntu 18.04 and IOMMU turned on.
      I added Intel Quad Port Gigabit Ethernet and I wanna use it on pfsense on KVM.



      I saw a lot of posts etc about this issue but only with VGA pci-e cards and I cant make it work with my ethernet card.
      If I understands it I need to unbind HW from driver and bind it to KVM.
      But I dont know how to do it :(



      Info about my ethernet controller:



       1d:00.0 Ethernet controller [0200]: Intel Corporation 82571EB Gigabit Ethernet Controller (Copper) [8086:10bc] (rev 06)
      Subsystem: IBM 82571EB Gigabit Ethernet Controller (Copper) (4-Port 10/100/1000 Base-TX PCI Express Adapter for POWER) [1014:0368]
      Flags: bus master, fast devsel, latency 0, IRQ 60
      Memory at fe6a0000 (32-bit, non-prefetchable) [size=128K]
      Memory at fe680000 (32-bit, non-prefetchable) [size=128K]
      I/O ports at d020 [disabled] [size=32]
      Expansion ROM at fe660000 [disabled] [size=128K]
      Capabilities: <access denied>
      Kernel driver in use: e1000e
      Kernel modules: e1000e

      1d:00.1 Ethernet controller [0200]: Intel Corporation 82571EB Gigabit Ethernet Controller (Copper) [8086:10bc] (rev 06)
      Subsystem: IBM 82571EB Gigabit Ethernet Controller (Copper) (4-Port 10/100/1000 Base-TX PCI Express Adapter for POWER) [1014:0368]
      Flags: bus master, fast devsel, latency 0, IRQ 64
      Memory at fe640000 (32-bit, non-prefetchable) [size=128K]
      Memory at fe620000 (32-bit, non-prefetchable) [size=128K]
      I/O ports at d000 [disabled] [size=32]
      Expansion ROM at fe600000 [disabled] [size=128K]
      Capabilities: <access denied>
      Kernel driver in use: e1000e
      Kernel modules: e1000e

      1e:00.0 Ethernet controller [0200]: Intel Corporation 82571EB Gigabit Ethernet Controller (Copper) [8086:10bc] (rev 06)
      Subsystem: IBM 82571EB Gigabit Ethernet Controller (Copper) (4-Port 10/100/1000 Base-TX PCI Express Adapter for POWER) [1014:0368]
      Flags: bus master, fast devsel, latency 0, IRQ 65
      Memory at fe5a0000 (32-bit, non-prefetchable) [size=128K]
      Memory at fe580000 (32-bit, non-prefetchable) [size=128K]
      I/O ports at c020 [disabled] [size=32]
      Expansion ROM at fe560000 [disabled] [size=128K]
      Capabilities: <access denied>
      Kernel driver in use: e1000e
      Kernel modules: e1000e

      1e:00.1 Ethernet controller [0200]: Intel Corporation 82571EB Gigabit Ethernet Controller (Copper) [8086:10bc] (rev 06)
      Subsystem: IBM 82571EB Gigabit Ethernet Controller (Copper) (4-Port 10/100/1000 Base-TX PCI Express Adapter for POWER) [1014:0368]
      Flags: bus master, fast devsel, latency 0, IRQ 66
      Memory at fe540000 (32-bit, non-prefetchable) [size=128K]
      Memory at fe520000 (32-bit, non-prefetchable) [size=128K]
      I/O ports at c000 [disabled] [size=32]
      Expansion ROM at fe500000 [disabled] [size=128K]
      Capabilities: <access denied>
      Kernel driver in use: e1000e
      Kernel modules: e1000e


      Can someone please help to achieve what I want?
      If you need any more info about my system etc, just ask.



      Thanks for any suggestions and answers..







      share|improve this question












      Im sorry for maybe lame question, but Im starting with linux so have mercy.



      I have Ryzen 2400G setup with ubuntu 18.04 and IOMMU turned on.
      I added Intel Quad Port Gigabit Ethernet and I wanna use it on pfsense on KVM.



      I saw a lot of posts etc about this issue but only with VGA pci-e cards and I cant make it work with my ethernet card.
      If I understands it I need to unbind HW from driver and bind it to KVM.
      But I dont know how to do it :(



      Info about my ethernet controller:



       1d:00.0 Ethernet controller [0200]: Intel Corporation 82571EB Gigabit Ethernet Controller (Copper) [8086:10bc] (rev 06)
      Subsystem: IBM 82571EB Gigabit Ethernet Controller (Copper) (4-Port 10/100/1000 Base-TX PCI Express Adapter for POWER) [1014:0368]
      Flags: bus master, fast devsel, latency 0, IRQ 60
      Memory at fe6a0000 (32-bit, non-prefetchable) [size=128K]
      Memory at fe680000 (32-bit, non-prefetchable) [size=128K]
      I/O ports at d020 [disabled] [size=32]
      Expansion ROM at fe660000 [disabled] [size=128K]
      Capabilities: <access denied>
      Kernel driver in use: e1000e
      Kernel modules: e1000e

      1d:00.1 Ethernet controller [0200]: Intel Corporation 82571EB Gigabit Ethernet Controller (Copper) [8086:10bc] (rev 06)
      Subsystem: IBM 82571EB Gigabit Ethernet Controller (Copper) (4-Port 10/100/1000 Base-TX PCI Express Adapter for POWER) [1014:0368]
      Flags: bus master, fast devsel, latency 0, IRQ 64
      Memory at fe640000 (32-bit, non-prefetchable) [size=128K]
      Memory at fe620000 (32-bit, non-prefetchable) [size=128K]
      I/O ports at d000 [disabled] [size=32]
      Expansion ROM at fe600000 [disabled] [size=128K]
      Capabilities: <access denied>
      Kernel driver in use: e1000e
      Kernel modules: e1000e

      1e:00.0 Ethernet controller [0200]: Intel Corporation 82571EB Gigabit Ethernet Controller (Copper) [8086:10bc] (rev 06)
      Subsystem: IBM 82571EB Gigabit Ethernet Controller (Copper) (4-Port 10/100/1000 Base-TX PCI Express Adapter for POWER) [1014:0368]
      Flags: bus master, fast devsel, latency 0, IRQ 65
      Memory at fe5a0000 (32-bit, non-prefetchable) [size=128K]
      Memory at fe580000 (32-bit, non-prefetchable) [size=128K]
      I/O ports at c020 [disabled] [size=32]
      Expansion ROM at fe560000 [disabled] [size=128K]
      Capabilities: <access denied>
      Kernel driver in use: e1000e
      Kernel modules: e1000e

      1e:00.1 Ethernet controller [0200]: Intel Corporation 82571EB Gigabit Ethernet Controller (Copper) [8086:10bc] (rev 06)
      Subsystem: IBM 82571EB Gigabit Ethernet Controller (Copper) (4-Port 10/100/1000 Base-TX PCI Express Adapter for POWER) [1014:0368]
      Flags: bus master, fast devsel, latency 0, IRQ 66
      Memory at fe540000 (32-bit, non-prefetchable) [size=128K]
      Memory at fe520000 (32-bit, non-prefetchable) [size=128K]
      I/O ports at c000 [disabled] [size=32]
      Expansion ROM at fe500000 [disabled] [size=128K]
      Capabilities: <access denied>
      Kernel driver in use: e1000e
      Kernel modules: e1000e


      Can someone please help to achieve what I want?
      If you need any more info about my system etc, just ask.



      Thanks for any suggestions and answers..









      share|improve this question











      share|improve this question




      share|improve this question










      asked Apr 26 at 17:39









      Sparhawk

      1




      1




















          1 Answer
          1






          active

          oldest

          votes

















          up vote
          0
          down vote













          you can follow the Ubuntu Server Guide on this which has an example on vfio based passthrough. With that you do not need to unbind, but instead create virtual functions on your card and then forward these partitions of the card to your VMs. It also has an example on the libvirt xml fragments that you can either add to your guest xml directly or as a file on its own to be used by virsh attach-device ....



          If instead you have no VF capable card you can still go with the unbinding of the device as you mentioned it. The forwarding part through libvirt looks just the same, but to unbinde you might take a look at examples of the linux-KVM wiki that uses the pci-stub.



          If you don't want to use libvirt then linux-KVM wiki pci and linux-KVM wiki vfio also hold examples on the qemu commandline of this.






          share|improve this answer




















            Your Answer







            StackExchange.ready(function()
            var channelOptions =
            tags: "".split(" "),
            id: "89"
            ;
            initTagRenderer("".split(" "), "".split(" "), channelOptions);

            StackExchange.using("externalEditor", function()
            // Have to fire editor after snippets, if snippets enabled
            if (StackExchange.settings.snippets.snippetsEnabled)
            StackExchange.using("snippets", function()
            createEditor();
            );

            else
            createEditor();

            );

            function createEditor()
            StackExchange.prepareEditor(
            heartbeatType: 'answer',
            convertImagesToLinks: true,
            noModals: false,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: 10,
            bindNavPrevention: true,
            postfix: "",
            onDemand: true,
            discardSelector: ".discard-answer"
            ,immediatelyShowMarkdownHelp:true
            );



            );













             

            draft saved


            draft discarded


















            StackExchange.ready(
            function ()
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2faskubuntu.com%2fquestions%2f1028489%2fintel-pci-e-quad-port-card-passthrough%23new-answer', 'question_page');

            );

            Post as a guest






























            1 Answer
            1






            active

            oldest

            votes








            1 Answer
            1






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes








            up vote
            0
            down vote













            you can follow the Ubuntu Server Guide on this which has an example on vfio based passthrough. With that you do not need to unbind, but instead create virtual functions on your card and then forward these partitions of the card to your VMs. It also has an example on the libvirt xml fragments that you can either add to your guest xml directly or as a file on its own to be used by virsh attach-device ....



            If instead you have no VF capable card you can still go with the unbinding of the device as you mentioned it. The forwarding part through libvirt looks just the same, but to unbinde you might take a look at examples of the linux-KVM wiki that uses the pci-stub.



            If you don't want to use libvirt then linux-KVM wiki pci and linux-KVM wiki vfio also hold examples on the qemu commandline of this.






            share|improve this answer
























              up vote
              0
              down vote













              you can follow the Ubuntu Server Guide on this which has an example on vfio based passthrough. With that you do not need to unbind, but instead create virtual functions on your card and then forward these partitions of the card to your VMs. It also has an example on the libvirt xml fragments that you can either add to your guest xml directly or as a file on its own to be used by virsh attach-device ....



              If instead you have no VF capable card you can still go with the unbinding of the device as you mentioned it. The forwarding part through libvirt looks just the same, but to unbinde you might take a look at examples of the linux-KVM wiki that uses the pci-stub.



              If you don't want to use libvirt then linux-KVM wiki pci and linux-KVM wiki vfio also hold examples on the qemu commandline of this.






              share|improve this answer






















                up vote
                0
                down vote










                up vote
                0
                down vote









                you can follow the Ubuntu Server Guide on this which has an example on vfio based passthrough. With that you do not need to unbind, but instead create virtual functions on your card and then forward these partitions of the card to your VMs. It also has an example on the libvirt xml fragments that you can either add to your guest xml directly or as a file on its own to be used by virsh attach-device ....



                If instead you have no VF capable card you can still go with the unbinding of the device as you mentioned it. The forwarding part through libvirt looks just the same, but to unbinde you might take a look at examples of the linux-KVM wiki that uses the pci-stub.



                If you don't want to use libvirt then linux-KVM wiki pci and linux-KVM wiki vfio also hold examples on the qemu commandline of this.






                share|improve this answer












                you can follow the Ubuntu Server Guide on this which has an example on vfio based passthrough. With that you do not need to unbind, but instead create virtual functions on your card and then forward these partitions of the card to your VMs. It also has an example on the libvirt xml fragments that you can either add to your guest xml directly or as a file on its own to be used by virsh attach-device ....



                If instead you have no VF capable card you can still go with the unbinding of the device as you mentioned it. The forwarding part through libvirt looks just the same, but to unbinde you might take a look at examples of the linux-KVM wiki that uses the pci-stub.



                If you don't want to use libvirt then linux-KVM wiki pci and linux-KVM wiki vfio also hold examples on the qemu commandline of this.







                share|improve this answer












                share|improve this answer



                share|improve this answer










                answered Apr 30 at 5:07









                Christian Ehrhardt

                391110




                391110



























                     

                    draft saved


                    draft discarded















































                     


                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function ()
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2faskubuntu.com%2fquestions%2f1028489%2fintel-pci-e-quad-port-card-passthrough%23new-answer', 'question_page');

                    );

                    Post as a guest













































































                    Popular posts from this blog

                    pylint3 and pip3 broken

                    Missing snmpget and snmpwalk

                    How to enroll fingerprints to Ubuntu 17.10 with VFS491