Re: [OE-core][PATCH] grub: update search parameter

Xiangyu Chen
2026-04-23T06:04:48Z

Hi Richard,

Since the behavior was found in OE scarthgap branch, could you please
help to cherry-pick this

commit: 42b530581f72 ("grub: update search parameter") to whinlatter and
scarthgap branch?

Thanks.

Br,

Xiangyu

在 2026/3/31 10:57, Xiangyu Chen 写道:
> Hi Paul,
>
>
> On 3/5/26 19:49, Paul Barker wrote:
>> I'm not sure that this can work for all use cases. The grub
>> documentatation for hints says "First try the device HINT" (i.e. it's
>> explicitly a device), whereas the documentation for cmdpath says that it
>> is "an absolute directory name".
> While the documentation defines $cmdpath as a directory and hints as
> devices, grub’s internal implementation of
> grub_disk_open (grub-core/kern/disk.c [1]) is designed to handle this
> exact "device+path" format.
>
> When a hint like (hd0,gpt1)/EFI/BOOT/ is passed, grub_disk_open calls
> find_part_sep to locate the partition/path delimiter.
> It then uses grub_memcpy to extract only the device part (e.g., (hd0)
> into the raw buffer for the disk driver.
>
> The remaining string (gpt1)/EFI/BOOT/) is passed to
> grub_partition_probe, which identifies the partition and gracefully
> ignores the trailing directory path.
>
> The current syntax ($cmdpath) results in double parentheses ((hd0...))
> if the variable is already populated.
> In grub_disk_open, this extracts a malformed device name ((hd0 which
> no driver can open, triggering a hard no such device error.
>
>
> Ref:
>
> [1]
> https://elixir.bootlin.com/grub/grub-2.14/source/grub-core/kern/disk.c#L192
>
>
> Br,
>
> Xiangyu
>