Public bug reported:

Ubuntu 26.04.1 Server cannot be installed on an ACEMAGIC M1A PRO+ with
its factory HOGE H820 2 TB / MAXIO MAP1602 NVMe SSD.

The Ubuntu 26.04.1 live-server ISO boots kernel 7.0.0-30. With this
kernel, reproducible NVMe READ and WRITE failures occur during installation,
and the installation eventually fails during grub-install.

The same physical machine, SSD, M.2 slot, and SSD firmware operate normally
with kernels 7.0.0-14, 6.8, 6.14, and 7.0.0-31.

The regression is also independently reproducible on installed Ubuntu
24.04 and Ubuntu 26.04 systems by switching between 7.0.0-30 and
7.0.0-31.

PRIMARY IMPACT

The current Ubuntu 26.04.1 Server ISO cannot complete installation on this
hardware.

During installation, kernel 7.0.0-30 reports NVMe block I/O failures.
The installer then eventually fails with:

  grub-install: error: cannot copy
  '/usr/lib/grub/x86_64-efi-signed/grubx64.efi.signed'
  to '/boot/efi/EFI/ubuntu/grubx64.efi': Invalid argument.

The grub-install failure occurs in the same installation in which the
kernel is reporting NVMe READ/WRITE failures. I believe the storage
regression is likely contributing to the grub-install failure, but I have
not independently proven that the NVMe errors are the direct cause of the
grub-install error.

HARDWARE

System:
  ACEMAGIC M1A PRO+
  AMD Ryzen AI Max+ 395
  AMD Radeon 8060S
  128 GB memory, 8000 MT/s

BIOS:
  American Megatrends
  Project version:
    P10_F11_20_IEC0008_BI0010_AMI_120W
  Build date:
    2026-01-13

NVMe:
  Model: HOGE H820 2TB
  Firmware: H240313a
  PCI vendor ID: 0x1e4b
  PCI device/controller: 0x1602
  Controller family: MAXIO MAP1602

NVMe SMART data observed during troubleshooting:

  critical_warning: 0
  available_spare: 100%
  percentage_used: 0%
  media_errors: 0
  num_err_log_entries: 0
  temperature: approximately 39 C

UBUNTU 26.04.1 SERVER INSTALL FAILURE

Installation method:

  - Ubuntu 26.04.1 live-server ISO
  - ISO written directly to USB using dd
  - UEFI boot
  - Secure Boot disabled
  - entire NVMe disk
  - no LVM
  - ext4 root filesystem
  - 1 GiB FAT EFI System Partition

The installer successfully partitions the disk, creates the filesystems,
and mounts the target.

During installation, kernel 7.0.0-30 begins producing NVMe block I/O
failures.

Examples of WRITE failures observed:

  invalid error, dev nvme0n1, sector 11896 op 0x1:(WRITE) ...
  invalid error, dev nvme0n1, sector 2080 op 0x1:(WRITE) ...

followed by messages including:

  Buffer I/O error on dev nvme0n1p1, logical block 32,
    lost async page write

  Buffer I/O error on dev nvme0n1p1, logical block 33,
    lost async page write

  Buffer I/O error on dev nvme0n1p1, logical block 34,
    lost async page write

READ failures were also observed, including:

  invalid error, dev nvme0n1, sector 3104 op 0x0:(READ) ...
  invalid error, dev nvme0n1, sector 3144 op 0x0:(READ) ...
  invalid error, dev nvme0n1, sector 3184 op 0x0:(READ) ...
  ...
  invalid error, dev nvme0n1, sector 3480 op 0x0:(READ) ...

The failing READ requests repeatedly showed multi-segment I/O, including
phys_seg 33.

Installation ultimately fails at grub-install with:

  grub-install: error: cannot copy
  '/usr/lib/grub/x86_64-efi-signed/grubx64.efi.signed'
  to '/boot/efi/EFI/ubuntu/grubx64.efi': Invalid argument.

The Ubuntu installer offered to send an error report to Canonical after
the failure, and I selected that option. Therefore an installer-side
failure report from this machine should already exist in Canonical's
error-reporting infrastructure, although I do not currently have an
identifier for that report.

REGRESSION TESTING

All of the following tests used the same physical ACEMAGIC M1A PRO+,
same HOGE H820 SSD, same M.2 slot, and same SSD firmware.

Ubuntu 26.04
------------

1. Ubuntu 26.04 base installation, kernel 7.0.0-14
   PASS

   Ubuntu 26.04 installs and boots successfully.

   No NVMe "invalid error", Buffer I/O errors, or related read/write
   failures are present.

2. Upgrade the installed Ubuntu 26.04 system to kernel 7.0.0-30
   FAIL

   The same NVMe "invalid error" messages return.

3. Upgrade the same Ubuntu 26.04 installation from 7.0.0-30 to
   7.0.0-31 from ppa:canonical-kernel-team/ppa
   PASS

   The NVMe errors disappear again.

Ubuntu 26.04.1 live-server ISO
------------------------------

4. Ubuntu 26.04.1 live-server ISO, kernel 7.0.0-30
   FAIL

   The same NVMe READ/WRITE errors occur during installation.

   Unlike the Ubuntu 24.04.4 installer case below, the failures are severe
   enough here that grub-install fails and Ubuntu 26.04.1 Server cannot be
   installed.

Ubuntu 24.04
------------

5. Ubuntu 24.04.4 installation using kernel 7.0.0-30
   KERNEL REGRESSION PRESENT, BUT INSTALLATION COMPLETES

   Ubuntu 24.04.4 installs successfully.

   After boot, the same NVMe "invalid error" messages are present in the
   kernel logs.

   Thus the storage regression is present with 7.0.0-30 on Ubuntu 24.04
   as well, even though that installer happens to complete.

6. Downgrade the same Ubuntu 24.04 system to kernel 6.8
   PASS

   The NVMe errors disappear.

   Sustained fio testing completes without NVMe errors.

   The Radeon 8060S does not initialize correctly on this older kernel,
   which is unrelated to the NVMe regression.

7. Upgrade the same Ubuntu 24.04 system to kernel 6.14
   PASS

   NVMe remains clean.

   Radeon 8060S / amdgpu initializes successfully.

   Sustained fio testing completes without NVMe errors.

8. Upgrade the same Ubuntu 24.04 system to kernel 7.0.0-31 from
   ppa:canonical-kernel-team/ppa
   PASS

   NVMe errors remain absent.

   A 10-minute mixed direct-I/O fio workload using libaio, iodepth=32,
   numjobs=4, and direct=1 completes without NVMe errors.

SUMMARY

  Ubuntu 26.04 + 7.0.0-14       -> PASS
  Ubuntu 26.04 + 7.0.0-30       -> FAIL
  Ubuntu 26.04 + 7.0.0-31       -> PASS

  Ubuntu 26.04.1 ISO + -30      -> FAIL, installation cannot complete

  Ubuntu 24.04.4 + 7.0.0-30     -> regression present, install completes
  Ubuntu 24.04 + 6.8            -> PASS
  Ubuntu 24.04 + 6.14           -> PASS
  Ubuntu 24.04 + 7.0.0-31       -> PASS

The -30 -> -31 comparison has been reproduced on both Ubuntu 24.04 and
Ubuntu 26.04.

This strongly isolates the problem to the kernel code present in
7.0.0-30 and absent/fixed in 7.0.0-31, rather than to the Ubuntu userspace
release or SSD hardware.

APST TESTING

NVMe APST was tested as a possible cause.

The Ubuntu 26.04.1 installer was booted with:

  nvme_core.default_ps_max_latency_us=0

The runtime value was verified as:

  /sys/module/nvme_core/parameters/default_ps_max_latency_us = 0

The same NVMe WRITE / Buffer I/O errors still occurred.

Disabling NVMe APST therefore does not resolve the failure.

STORAGE VALIDATION

The SSD does not appear to contain defective media at the sector range
where errors were reported.

On a working kernel, a direct read spanning the affected region completed
successfully:

  dd if=/dev/nvme0n1 of=/dev/null bs=512 skip=3000 count=600
iflag=direct

  600+0 records in
  600+0 records out

No new NVMe errors were produced.

The same SSD also completed substantial mixed read/write fio testing on
working kernels without media errors or kernel block-I/O failures.

This included sustained testing on:

  - 6.8
  - 6.14
  - 7.0.0-31

LIKELY UPSTREAM REGRESSION / FIX

I have not performed a source-level git bisect, so the following is a
suspected cause rather than independently proven.

Linux 7.0.11 included:

  iommupt: Avoid rewalking during map

  upstream commit:
  d6c65b0fd6218bd21ed0be7a8d3218e8f6dc91de

Linux 7.0.13 later included:

  iommu/dma: Do not try to iommu_map a 0 length region in swiotlb

  upstream commit:
  6ec91df8aff77e2e8fe3179c1f3fc15b43a40ba3

The latter fix describes an IOMMU DMA mapping path in which an unaligned
mapping can produce a zero-length middle region. iommu_map() then rejects
the zero-length mapping as illegal. The upstream description explicitly
notes NVMe as a frequent trigger because NVMe can issue unusually aligned
buffers in some paths.

Ubuntu kernel 7.0.0-31 contains the Linux 7.0.13 and 7.0.14 upstream
stable updates, and 7.0.0-31 is the first tested Ubuntu 7.0 kernel in this
environment where the problem disappears.

Given the observed:

  7.0.0-30 -> FAIL
  7.0.0-31 -> PASS

and the I/O errors being reported as "invalid error", this IOMMU/DMA fix
appears to be a strong candidate for the fix.

Please confirm whether this system is hitting that regression, or another
change incorporated between Ubuntu 7.0.0-30 and 7.0.0-31.

EXPECTED RESULT

Ubuntu 26.04.1 Server should install successfully on this hardware.

The HOGE H820 / MAXIO MAP1602 NVMe controller should operate without
kernel block-I/O failures.

IMPACT

The practical issue is not merely log noise.

The kernel shipped on the Ubuntu 26.04.1 Server ISO causes storage errors
during installation and prevents the current 26.04.1 live-server image
from completing installation on this system.

The same regression can also be reproduced after installation by booting
7.0.0-30 on both Ubuntu 24.04 and Ubuntu 26.04.

Kernel 7.0.0-31 from ppa:canonical-kernel-team/ppa does not reproduce the
problem on either release.

** Affects: linux (Ubuntu)
     Importance: Undecided
         Status: New

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2165806

Title:
  Ubuntu 26.04.1 Server ISO cannot install on MAXIO MAP1602 NVMe due to
  kernel 7.0.0-30 I/O regression; 7.0.0-31 works

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/2165806/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to