URL:
  <https://savannah.gnu.org/bugs/?66827>

                 Summary: `grub-mount' hang with 100% CPU usage on `ls'
operations with wildcards
                   Group: GNU GRUB
               Submitter: mingcongbai
               Submitted: Fri 21 Feb 2025 04:00:26 PM UTC
                Category: Filesystem
                Severity: Major
                Priority: 5 - Normal
              Item Group: Software Error
                  Status: None
                 Privacy: Public
             Assigned to: None
         Originator Name:
        Originator Email:
             Open/Closed: Open
         Discussion Lock: Any
                 Release: other
                 Release:
         Reproducibility: Every Time
         Planned Release: None


    _______________________________________________________

Follow-up Comments:


-------------------------------------------------------
Date: Fri 21 Feb 2025 04:00:26 PM UTC By: Mingcong Bai <mingcongbai>
(GRUB 2.12)

---

If a system partition was mounted via grub-mount, whenever any script or user
calls a `ls' command with wildcards, the command would never complete.

For instance, if /dev/nvme0n1p6 was mounted at /mnt via `grub-mount
/dev/nvme0n1p6 /mnt' and if someone calls `ls /mnt/bin/bash*', the command
would hang. With `ls /mnt/bin/bash[Tab]`, the same hang would occur. At this
point, neither ^C or ^Z would be able to interrupt/suspend that command, only
a SIGKILL on the `grub-mount' process would terminate the command.

However, with any `ls' command that does not involve a wildcard, say, `ls
/mnt/bin/bash', the aforementioned issue would not occur.

---

Incidentally (and how I found out about this issue), in os-prober's
90linux-distro scriptlet, the `if' condition tests for certain ld.so patterns
with wildcards:

  /usr/lib/os-probes/mounted/90linux-distro:

  if (ls "$dir"/lib*/ld*.so* && [ -d "$dir/boot" ] || ls
"$dir"/usr/lib*/ld*.so*) >/dev/null 2>/dev/null; then
      ...

A user indicated that their `update-grub' invocations would hang at the
os-prober stage. With some script debugging I was able to locate this issue. 

As such, this will cause os-prober to hang as it probes Linux system roots.







    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/bugs/?66827>

_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/

Attachment: signature.asc
Description: PGP signature

Reply via email to