Ubuntu only boots when iommu=soft












0















Ok, so I've been battling with this problem for few weeks now.



I'm currently rocking:




  • fx-8320E


  • GA-970A-DS3P


  • RX-480 4GB



and I've been having a problem with the IOMMU boot.



So, if I try to boot with anything other than the soft mode on iommu in grub, I get stuck on booting, no matter what the amd_iommu setting is set to. iommu=off works fine, but no usb devices are recognised.



Also, I've checked the BIOS and I have enabled SVM and IOMMU for my cpu, and both CPU and the MB support AMD-Vi



If I run dmesg | grep iommu -i I get this output:



[    0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-4.18.0-16-generic root=UUID=087205d6-21bf-4c57-87d6-3621a0f04b6c ro iommu=soft
[ 0.000000] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-4.18.0-16-generic root=UUID=087205d6-21bf-4c57-87d6-3621a0f04b6c ro iommu=soft
[ 5.003506] AMD IOMMUv2 driver by Joerg Roedel <jroedel@suse.de>
[ 5.003507] AMD IOMMUv2 functionality not available on this system


I'm assuming that it's saying that functionality is not available because I'm not running the motherboard iommu, but the software one.



So, I'd like to know if there's anything else I can try or check to fix this "problem" and maybe get a Windows VM running with GPU passthrough.



Thanks in advance.



EDIT



When running virt-host-validate I receive this output:



  QEMU: Checking for hardware virtualization                                 : PASS
QEMU: Checking if device /dev/kvm exists : PASS
QEMU: Checking if device /dev/kvm is accessible : PASS
QEMU: Checking if device /dev/vhost-net exists : PASS
QEMU: Checking if device /dev/net/tun exists : PASS
QEMU: Checking for cgroup 'memory' controller support : PASS
QEMU: Checking for cgroup 'memory' controller mount-point : PASS
QEMU: Checking for cgroup 'cpu' controller support : PASS
QEMU: Checking for cgroup 'cpu' controller mount-point : PASS
QEMU: Checking for cgroup 'cpuacct' controller support : PASS
QEMU: Checking for cgroup 'cpuacct' controller mount-point : PASS
QEMU: Checking for cgroup 'cpuset' controller support : PASS
QEMU: Checking for cgroup 'cpuset' controller mount-point : PASS
QEMU: Checking for cgroup 'devices' controller support : PASS
QEMU: Checking for cgroup 'devices' controller mount-point : PASS
QEMU: Checking for cgroup 'blkio' controller support : PASS
QEMU: Checking for cgroup 'blkio' controller mount-point : PASS
QEMU: Checking for device assignment IOMMU support : PASS
QEMU: Checking if IOMMU is enabled by kernel : WARN (IOMMU appears to be disabled in kernel. Add iommu=pt iommu=1 to kernel cmdline arguments)
LXC: Checking for Linux >= 2.6.26 : PASS
LXC: Checking for namespace ipc : PASS
LXC: Checking for namespace mnt : PASS
LXC: Checking for namespace pid : PASS
LXC: Checking for namespace uts : PASS
LXC: Checking for namespace net : PASS
LXC: Checking for namespace user : PASS
LXC: Checking for cgroup 'memory' controller support : PASS
LXC: Checking for cgroup 'memory' controller mount-point : PASS
LXC: Checking for cgroup 'cpu' controller support : PASS
LXC: Checking for cgroup 'cpu' controller mount-point : PASS
LXC: Checking for cgroup 'cpuacct' controller support : PASS
LXC: Checking for cgroup 'cpuacct' controller mount-point : PASS
LXC: Checking for cgroup 'cpuset' controller support : PASS
LXC: Checking for cgroup 'cpuset' controller mount-point : PASS
LXC: Checking for cgroup 'devices' controller support : PASS
LXC: Checking for cgroup 'devices' controller mount-point : PASS
LXC: Checking for cgroup 'blkio' controller support : PASS
LXC: Checking for cgroup 'blkio' controller mount-point : PASS
LXC: Checking if device /sys/fs/fuse/connections exists : PASS


and the problem is that the iommu=pt iommu=1 don't work for me, as they don't seem to boot.










share|improve this question









New contributor




MG lolenstine is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.

























    0















    Ok, so I've been battling with this problem for few weeks now.



    I'm currently rocking:




    • fx-8320E


    • GA-970A-DS3P


    • RX-480 4GB



    and I've been having a problem with the IOMMU boot.



    So, if I try to boot with anything other than the soft mode on iommu in grub, I get stuck on booting, no matter what the amd_iommu setting is set to. iommu=off works fine, but no usb devices are recognised.



    Also, I've checked the BIOS and I have enabled SVM and IOMMU for my cpu, and both CPU and the MB support AMD-Vi



    If I run dmesg | grep iommu -i I get this output:



    [    0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-4.18.0-16-generic root=UUID=087205d6-21bf-4c57-87d6-3621a0f04b6c ro iommu=soft
    [ 0.000000] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-4.18.0-16-generic root=UUID=087205d6-21bf-4c57-87d6-3621a0f04b6c ro iommu=soft
    [ 5.003506] AMD IOMMUv2 driver by Joerg Roedel <jroedel@suse.de>
    [ 5.003507] AMD IOMMUv2 functionality not available on this system


    I'm assuming that it's saying that functionality is not available because I'm not running the motherboard iommu, but the software one.



    So, I'd like to know if there's anything else I can try or check to fix this "problem" and maybe get a Windows VM running with GPU passthrough.



    Thanks in advance.



    EDIT



    When running virt-host-validate I receive this output:



      QEMU: Checking for hardware virtualization                                 : PASS
    QEMU: Checking if device /dev/kvm exists : PASS
    QEMU: Checking if device /dev/kvm is accessible : PASS
    QEMU: Checking if device /dev/vhost-net exists : PASS
    QEMU: Checking if device /dev/net/tun exists : PASS
    QEMU: Checking for cgroup 'memory' controller support : PASS
    QEMU: Checking for cgroup 'memory' controller mount-point : PASS
    QEMU: Checking for cgroup 'cpu' controller support : PASS
    QEMU: Checking for cgroup 'cpu' controller mount-point : PASS
    QEMU: Checking for cgroup 'cpuacct' controller support : PASS
    QEMU: Checking for cgroup 'cpuacct' controller mount-point : PASS
    QEMU: Checking for cgroup 'cpuset' controller support : PASS
    QEMU: Checking for cgroup 'cpuset' controller mount-point : PASS
    QEMU: Checking for cgroup 'devices' controller support : PASS
    QEMU: Checking for cgroup 'devices' controller mount-point : PASS
    QEMU: Checking for cgroup 'blkio' controller support : PASS
    QEMU: Checking for cgroup 'blkio' controller mount-point : PASS
    QEMU: Checking for device assignment IOMMU support : PASS
    QEMU: Checking if IOMMU is enabled by kernel : WARN (IOMMU appears to be disabled in kernel. Add iommu=pt iommu=1 to kernel cmdline arguments)
    LXC: Checking for Linux >= 2.6.26 : PASS
    LXC: Checking for namespace ipc : PASS
    LXC: Checking for namespace mnt : PASS
    LXC: Checking for namespace pid : PASS
    LXC: Checking for namespace uts : PASS
    LXC: Checking for namespace net : PASS
    LXC: Checking for namespace user : PASS
    LXC: Checking for cgroup 'memory' controller support : PASS
    LXC: Checking for cgroup 'memory' controller mount-point : PASS
    LXC: Checking for cgroup 'cpu' controller support : PASS
    LXC: Checking for cgroup 'cpu' controller mount-point : PASS
    LXC: Checking for cgroup 'cpuacct' controller support : PASS
    LXC: Checking for cgroup 'cpuacct' controller mount-point : PASS
    LXC: Checking for cgroup 'cpuset' controller support : PASS
    LXC: Checking for cgroup 'cpuset' controller mount-point : PASS
    LXC: Checking for cgroup 'devices' controller support : PASS
    LXC: Checking for cgroup 'devices' controller mount-point : PASS
    LXC: Checking for cgroup 'blkio' controller support : PASS
    LXC: Checking for cgroup 'blkio' controller mount-point : PASS
    LXC: Checking if device /sys/fs/fuse/connections exists : PASS


    and the problem is that the iommu=pt iommu=1 don't work for me, as they don't seem to boot.










    share|improve this question









    New contributor




    MG lolenstine is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
    Check out our Code of Conduct.























      0












      0








      0








      Ok, so I've been battling with this problem for few weeks now.



      I'm currently rocking:




      • fx-8320E


      • GA-970A-DS3P


      • RX-480 4GB



      and I've been having a problem with the IOMMU boot.



      So, if I try to boot with anything other than the soft mode on iommu in grub, I get stuck on booting, no matter what the amd_iommu setting is set to. iommu=off works fine, but no usb devices are recognised.



      Also, I've checked the BIOS and I have enabled SVM and IOMMU for my cpu, and both CPU and the MB support AMD-Vi



      If I run dmesg | grep iommu -i I get this output:



      [    0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-4.18.0-16-generic root=UUID=087205d6-21bf-4c57-87d6-3621a0f04b6c ro iommu=soft
      [ 0.000000] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-4.18.0-16-generic root=UUID=087205d6-21bf-4c57-87d6-3621a0f04b6c ro iommu=soft
      [ 5.003506] AMD IOMMUv2 driver by Joerg Roedel <jroedel@suse.de>
      [ 5.003507] AMD IOMMUv2 functionality not available on this system


      I'm assuming that it's saying that functionality is not available because I'm not running the motherboard iommu, but the software one.



      So, I'd like to know if there's anything else I can try or check to fix this "problem" and maybe get a Windows VM running with GPU passthrough.



      Thanks in advance.



      EDIT



      When running virt-host-validate I receive this output:



        QEMU: Checking for hardware virtualization                                 : PASS
      QEMU: Checking if device /dev/kvm exists : PASS
      QEMU: Checking if device /dev/kvm is accessible : PASS
      QEMU: Checking if device /dev/vhost-net exists : PASS
      QEMU: Checking if device /dev/net/tun exists : PASS
      QEMU: Checking for cgroup 'memory' controller support : PASS
      QEMU: Checking for cgroup 'memory' controller mount-point : PASS
      QEMU: Checking for cgroup 'cpu' controller support : PASS
      QEMU: Checking for cgroup 'cpu' controller mount-point : PASS
      QEMU: Checking for cgroup 'cpuacct' controller support : PASS
      QEMU: Checking for cgroup 'cpuacct' controller mount-point : PASS
      QEMU: Checking for cgroup 'cpuset' controller support : PASS
      QEMU: Checking for cgroup 'cpuset' controller mount-point : PASS
      QEMU: Checking for cgroup 'devices' controller support : PASS
      QEMU: Checking for cgroup 'devices' controller mount-point : PASS
      QEMU: Checking for cgroup 'blkio' controller support : PASS
      QEMU: Checking for cgroup 'blkio' controller mount-point : PASS
      QEMU: Checking for device assignment IOMMU support : PASS
      QEMU: Checking if IOMMU is enabled by kernel : WARN (IOMMU appears to be disabled in kernel. Add iommu=pt iommu=1 to kernel cmdline arguments)
      LXC: Checking for Linux >= 2.6.26 : PASS
      LXC: Checking for namespace ipc : PASS
      LXC: Checking for namespace mnt : PASS
      LXC: Checking for namespace pid : PASS
      LXC: Checking for namespace uts : PASS
      LXC: Checking for namespace net : PASS
      LXC: Checking for namespace user : PASS
      LXC: Checking for cgroup 'memory' controller support : PASS
      LXC: Checking for cgroup 'memory' controller mount-point : PASS
      LXC: Checking for cgroup 'cpu' controller support : PASS
      LXC: Checking for cgroup 'cpu' controller mount-point : PASS
      LXC: Checking for cgroup 'cpuacct' controller support : PASS
      LXC: Checking for cgroup 'cpuacct' controller mount-point : PASS
      LXC: Checking for cgroup 'cpuset' controller support : PASS
      LXC: Checking for cgroup 'cpuset' controller mount-point : PASS
      LXC: Checking for cgroup 'devices' controller support : PASS
      LXC: Checking for cgroup 'devices' controller mount-point : PASS
      LXC: Checking for cgroup 'blkio' controller support : PASS
      LXC: Checking for cgroup 'blkio' controller mount-point : PASS
      LXC: Checking if device /sys/fs/fuse/connections exists : PASS


      and the problem is that the iommu=pt iommu=1 don't work for me, as they don't seem to boot.










      share|improve this question









      New contributor




      MG lolenstine is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.












      Ok, so I've been battling with this problem for few weeks now.



      I'm currently rocking:




      • fx-8320E


      • GA-970A-DS3P


      • RX-480 4GB



      and I've been having a problem with the IOMMU boot.



      So, if I try to boot with anything other than the soft mode on iommu in grub, I get stuck on booting, no matter what the amd_iommu setting is set to. iommu=off works fine, but no usb devices are recognised.



      Also, I've checked the BIOS and I have enabled SVM and IOMMU for my cpu, and both CPU and the MB support AMD-Vi



      If I run dmesg | grep iommu -i I get this output:



      [    0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-4.18.0-16-generic root=UUID=087205d6-21bf-4c57-87d6-3621a0f04b6c ro iommu=soft
      [ 0.000000] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-4.18.0-16-generic root=UUID=087205d6-21bf-4c57-87d6-3621a0f04b6c ro iommu=soft
      [ 5.003506] AMD IOMMUv2 driver by Joerg Roedel <jroedel@suse.de>
      [ 5.003507] AMD IOMMUv2 functionality not available on this system


      I'm assuming that it's saying that functionality is not available because I'm not running the motherboard iommu, but the software one.



      So, I'd like to know if there's anything else I can try or check to fix this "problem" and maybe get a Windows VM running with GPU passthrough.



      Thanks in advance.



      EDIT



      When running virt-host-validate I receive this output:



        QEMU: Checking for hardware virtualization                                 : PASS
      QEMU: Checking if device /dev/kvm exists : PASS
      QEMU: Checking if device /dev/kvm is accessible : PASS
      QEMU: Checking if device /dev/vhost-net exists : PASS
      QEMU: Checking if device /dev/net/tun exists : PASS
      QEMU: Checking for cgroup 'memory' controller support : PASS
      QEMU: Checking for cgroup 'memory' controller mount-point : PASS
      QEMU: Checking for cgroup 'cpu' controller support : PASS
      QEMU: Checking for cgroup 'cpu' controller mount-point : PASS
      QEMU: Checking for cgroup 'cpuacct' controller support : PASS
      QEMU: Checking for cgroup 'cpuacct' controller mount-point : PASS
      QEMU: Checking for cgroup 'cpuset' controller support : PASS
      QEMU: Checking for cgroup 'cpuset' controller mount-point : PASS
      QEMU: Checking for cgroup 'devices' controller support : PASS
      QEMU: Checking for cgroup 'devices' controller mount-point : PASS
      QEMU: Checking for cgroup 'blkio' controller support : PASS
      QEMU: Checking for cgroup 'blkio' controller mount-point : PASS
      QEMU: Checking for device assignment IOMMU support : PASS
      QEMU: Checking if IOMMU is enabled by kernel : WARN (IOMMU appears to be disabled in kernel. Add iommu=pt iommu=1 to kernel cmdline arguments)
      LXC: Checking for Linux >= 2.6.26 : PASS
      LXC: Checking for namespace ipc : PASS
      LXC: Checking for namespace mnt : PASS
      LXC: Checking for namespace pid : PASS
      LXC: Checking for namespace uts : PASS
      LXC: Checking for namespace net : PASS
      LXC: Checking for namespace user : PASS
      LXC: Checking for cgroup 'memory' controller support : PASS
      LXC: Checking for cgroup 'memory' controller mount-point : PASS
      LXC: Checking for cgroup 'cpu' controller support : PASS
      LXC: Checking for cgroup 'cpu' controller mount-point : PASS
      LXC: Checking for cgroup 'cpuacct' controller support : PASS
      LXC: Checking for cgroup 'cpuacct' controller mount-point : PASS
      LXC: Checking for cgroup 'cpuset' controller support : PASS
      LXC: Checking for cgroup 'cpuset' controller mount-point : PASS
      LXC: Checking for cgroup 'devices' controller support : PASS
      LXC: Checking for cgroup 'devices' controller mount-point : PASS
      LXC: Checking for cgroup 'blkio' controller support : PASS
      LXC: Checking for cgroup 'blkio' controller mount-point : PASS
      LXC: Checking if device /sys/fs/fuse/connections exists : PASS


      and the problem is that the iommu=pt iommu=1 don't work for me, as they don't seem to boot.







      boot grub2 amd-graphics






      share|improve this question









      New contributor




      MG lolenstine is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.











      share|improve this question









      New contributor




      MG lolenstine is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.









      share|improve this question




      share|improve this question








      edited Mar 12 at 20:52







      MG lolenstine













      New contributor




      MG lolenstine is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.









      asked Mar 12 at 20:22









      MG lolenstineMG lolenstine

      11




      11




      New contributor




      MG lolenstine is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.





      New contributor





      MG lolenstine is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.






      MG lolenstine is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.






















          0






          active

          oldest

          votes











          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',
          autoActivateHeartbeat: false,
          convertImagesToLinks: true,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: 10,
          bindNavPrevention: true,
          postfix: "",
          imageUploader: {
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          },
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          });


          }
          });






          MG lolenstine is a new contributor. Be nice, and check out our Code of Conduct.










          draft saved

          draft discarded


















          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2faskubuntu.com%2fquestions%2f1125139%2fubuntu-only-boots-when-iommu-soft%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown

























          0






          active

          oldest

          votes








          0






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes








          MG lolenstine is a new contributor. Be nice, and check out our Code of Conduct.










          draft saved

          draft discarded


















          MG lolenstine is a new contributor. Be nice, and check out our Code of Conduct.













          MG lolenstine is a new contributor. Be nice, and check out our Code of Conduct.












          MG lolenstine is a new contributor. Be nice, and check out our Code of Conduct.
















          Thanks for contributing an answer to Ask Ubuntu!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid



          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.


          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2faskubuntu.com%2fquestions%2f1125139%2fubuntu-only-boots-when-iommu-soft%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          How did Captain America manage to do this?

          迪纳利

          南乌拉尔铁路局