TL;DR: The following patch seems to fix the problem: https://lore.kernel.org/all/wlscshbqan2svtqkz5xc6v47tzndfnsvge7h4lbfn67zoplekl@elt2oxwhrp6f/T/#u
--- As noted, when trying to load the i40e driver by itself it does not load with the following error: ## Plucky P9 # unzstd /lib/modules/6.14.0-13-generic/kernel/drivers/net/ethernet/intel/i40e/i40e.ko.zst -o ./i40e.ko # insmod i40e.ko insmod: ERROR: could not insert module i40e.ko: Unknown symbol in module # dmesg | tail -n 1 [81939.426842] i40e: Unknown symbol libie_rx_pt_lut (err -2) This is simply due to the fact that libie.ko must be loaded first, since it is a dependency: ## Plucky P9 # modinfo ./i40e.ko filename: /home/mpellizzer/playground/./i40e.ko license: GPL v2 import_ns: LIBIE description: Intel(R) Ethernet Connection XL710 Network Driver srcversion: 67BA2C92026E29EF9B4B3FD ... depends: libie intree: Y name: i40e When trying to load libie.ko we get: ## Plucky P9 # unzstd /lib/modules/6.14.0-13-generic/kernel/drivers/net/ethernet/intel/libie/libie.ko.zst -o ./libie.ko # insmod libie.ko [82148.116767] module_64: libie: doesn't contain __patchable_function_entries. [82148.117858] module_64: libie: doesn't contain __patchable_function_entries. insmod: ERROR: could not insert module libie.ko: Cannot allocate memory # sudo dmesg | tail -n 4 [82148.116767] module_64: libie: doesn't contain __patchable_function_entries. [82148.116833] execmem: unable to allocate memory [82148.117858] module_64: libie: doesn't contain __patchable_function_entries. [82148.117899] execmem: unable to allocate memory This happens because (from the mail thread linked above): "get_stubs_size assumes that there must always be at least one patchable function entry, which is not always the case (modules that export data but no code), otherwise it returns -ENOEXEC and thus the section header sh_size is set to that value. During module_memory_alloc() the size is passed to execmem_alloc() after being page-aligned and thus set to zero which will cause it to fail the allocation (and thus module loading) as __vmalloc_node_range() checks for zero-sized allocs and returns null" Therefore the changes proposed here: - https://lore.kernel.org/all/wlscshbqan2svtqkz5xc6v47tzndfnsvge7h4lbfn67zoplekl@elt2oxwhrp6f/T/#u should fix the issue. I applied the patch on top of the latest Plucky kernel, compiled and loaded the new kernel on a P9 bare metal with Oracular on top (it was not possible to install the kernel on Plucky since Plucky does not boot). After the reboot the system comes up without presenting the bug again: # uname -a Linux p9bm-t 6.14.0-13-generic #13 SMP Thu Apr 3 23:33:14 UTC 2025 ppc64le ppc64le ppc64le GNU/Linux -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/2104297 Title: not able to install a Power9 bare metal with Ubuntu 25.04 Plucky To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu-power-systems/+bug/2104297/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs