Ubuntu installation won't boot, most likely due to iommu thingy

So i finished Ubuntu installation from USB drive. That took really some time, tinkering with boot parameters and stuff. Ubuntu worked fine, so i pressed the reboot, remove installation medium and press enter, went into GRUB. So, i simply entered to Ubuntu, and nothing happens, and it rebooted. I tried adding the iommu=pt to the boot parameter in GRUB, no result. What should i do now?

what are you talking about?

why did you do this?

telling us what device, firmware, ubuntu version, etc you’re using would be a pretty good start, no?

I’m pretty sure this guy has a Thinkpad C13 Yoga that initally was refusing to boot into an operating system, but it booted once he added “iommu=pt” to the boot parameters. I still don’t understand why it won’t work unless you put that in the GRUB boot params, since I didn’t have that problem when I was installing Gentoo. He had an post in the Linux support section about issues booting into Arch linux on his C13 Yoga.
Edit: I think I might have inadvertantly found a possible solution. Pretty sure Veronica Explains had a similar issue with her C13 Yoga: https://youtu.be/z6oyqrrXTLM?si=5gGbAA6_iMlt9isV&t=942

perhaps so, but I’m not tracking down a post from another thread to try and get context. If people can’t be bothered to provide the relevant info necessary, I can’t be bothered to help

I understand man, it’s difficult to help people if they don’t provide you with any info that you could use as a jumping off point.

I was talking about when i tried to install Arch. Didn’t work, so i installed Ubuntu. It worked, only after i added “iommu=pt” to GRUB boot parameters. And i did that, simply so i could BOOT into the USB Desktop installer.. I have a Morphius, with Full UEFI, Ubuntu 24. I was trying to get into Ubuntu from the local drive, as it “successfully” installed from the USB. But, that didn’t work. I only see GRUB, i enter Ubuntu, reboot to the Coreboot. And it loops over and over

you needed to add the iommu param to boot the live USB. Did you add it to boot the installed version? Because that would be the logical thing to do…

I tried, but don’t think it made any effect. Can you tell me where should i put it? I remember i put it after — quite , but i don’t know where i should put it now. And what does iommu=pt actually do!!!

As for where the config is, it should be in /etc/default

How to i access /etc/default if i can’t even boot into the system?

Maybe try yanking out the drive, put it in an nvme drive sled, and edit the config on another Linux machine, if you don’t have a sled, try to boot off a USB again and see if you can mount the drive and edit the config. I’m just spit balling ideas.

Edit: here’s an old resource that might be useful
https://askubuntu.com/questions/19486/how-do-i-add-a-kernel-boot-parameter

Ok. Will try.

you press a key to bring up the grub menu, and edit the kernel boot params. then once booted, you edit the grub config to make it permanent

So i tried that, and yes, still doesn’t work. I also tried booting over USB again, but weirdly, even after using the exact same iommu=pt, it won’t boot. So i think when i managed to install Ubuntu on the NVME, it was a lucky moment. What else can i try?

This illudes me since like I said in the previous post, it should work, if Gentoo can boot, then I don’t see why Debian, Arch, or Ubuntu couldn’t? Computers are a crapshoot. Tell me, does any other distro work with the iommu=pt boot parameter? I’m wondering if said issue can be replicated on something like Linux mint or Debian? I’m just throwing out ideas since if you can get another distro to work then that’s at least something, maybe it might just be Ubuntu. Then again though I don’t really have a way of telling without either nuking my current Gentoo install, or swapping drives. It’s just a hunch I have.

Unrelated but basically IOMMU is used for stuff like GPU/PCI passthrough for hypervisors like KVM.

Ok. Will try Arch again,

Update= Arch doesn’t use GRUB (i think) and i am still not able to boot into ANYTHING right now.

Systemd-boot, why did it have to be Systemd-boot? Anyways, arch doesn’t work but does Mint? Or even Gentoo? I know this frustrating but keep at it.

I think I might have found something: Kernel parameters - ArchWiki

Arch doesnt boot. Mint doesnt. Ubuntu doesn’t. Endeavour doesnt. I’m starting to think it isn’t because of the operating system, but because something i don’t know. EDIT: While i was even writing this, i found out that i could add sleep 60 to the grub boot parameters, and it would stay on for 1 minute longer before doing it’s reboot thingy. What could this conclude?

EDIT AGAIN: On ubuntu, efi stub loaded initrd from linux_efi_initrd_media_guid device path ubuntu shows up in the right-top middle of the screen after the wait time from GRUB boot parameters. So maybe, the problem is with the initrd settings? Or something else?

all of the distros you listed boot without issue for me on Morphius with iommu=pt added to the kernel boot params. Audio even works OOTB on Ubuntu 25.04

My morphius is the R5 3500c/8GB/256GB NVMe model