From: Alexandre Belloni <alexandre.belloni@bootlin.com>
To: Ming Liu <liu.ming50@gmail.com>
Cc: openembedded-core@lists.openembedded.org
Subject: Re: [OE-core] [PATCH] grub: fs/fat: Don't error when mtime is 0
Date: Thu, 4 Jan 2024 10:49:52 +0100 [thread overview]
Message-ID: <20240104094952d0f43a9f@mail.local> (raw)
In-Reply-To: <20240103123052.711083-1-liu.ming50@gmail.com>
Hello,
Your patch has a declared charset of 'y' which is not a thing and git am
fails with:
error: cannot convert from y to UTF-8
fatal: could not parse patch
You got the following prompt:
The following files are 8bit, but do not declare a Content-Transfer-Encoding.
something.patch
Which 8bit encoding should I declare [UTF-8]?
At that point, you pressed y but you should simply press enter. Please
resend.
On 03/01/2024 13:30:52+0100, Ming Liu wrote:
> From: Ming Liu <liu.ming50@gmail.com>
>
> A issue was found when I run "runqemu genericx86-64 ovmf", grub failed
> to boot, it's a known issue has been fixed in grub upstream, backport
> the fix.
>
> Signed-off-by: Ming Liu <liu.ming50@gmail.com>
> ---
> ...1-fs-fat-Don-t-error-when-mtime-is-0.patch | 70 +++++++++++++++++++
> meta/recipes-bsp/grub/grub2.inc | 1 +
> 2 files changed, 71 insertions(+)
> create mode 100644 meta/recipes-bsp/grub/files/0001-fs-fat-Don-t-error-when-mtime-is-0.patch
>
> diff --git a/meta/recipes-bsp/grub/files/0001-fs-fat-Don-t-error-when-mtime-is-0.patch b/meta/recipes-bsp/grub/files/0001-fs-fat-Don-t-error-when-mtime-is-0.patch
> new file mode 100644
> index 0000000000..a5fbd58f46
> --- /dev/null
> +++ b/meta/recipes-bsp/grub/files/0001-fs-fat-Don-t-error-when-mtime-is-0.patch
> @@ -0,0 +1,70 @@
> +From e43f3d93b28cce852c110c7a8e40d8311bcd8bb1 Mon Sep 17 00:00:00 2001
> +From: Robbie Harwood <rharwood@redhat.com>
> +Date: Fri, 15 Jul 2022 16:13:02 -0400
> +Subject: [PATCH] fs/fat: Don't error when mtime is 0
> +MIME-Version: 1.0
> +Content-Type: text/plain; charset=UTF-8
> +Content-Transfer-Encoding: 8bit
> +
> +In the wild, we occasionally see valid ESPs where some file modification
> +times are 0. For instance:
> +
> + ├── [Dec 31 1979] EFI
> + │ ├── [Dec 31 1979] BOOT
> + │ │ ├── [Dec 31 1979] BOOTX64.EFI
> + │ │ └── [Dec 31 1979] fbx64.efi
> + │ └── [Jun 27 02:41] fedora
> + │ ├── [Dec 31 1979] BOOTX64.CSV
> + │ ├── [Dec 31 1979] fonts
> + │ ├── [Mar 14 03:35] fw
> + │ │ ├── [Mar 14 03:35] fwupd-359c1169-abd6-4a0d-8bce-e4d4713335c1.cap
> + │ │ ├── [Mar 14 03:34] fwupd-9d255c4b-2d88-4861-860d-7ee52ade9463.cap
> + │ │ └── [Mar 14 03:34] fwupd-b36438d8-9128-49d2-b280-487be02d948b.cap
> + │ ├── [Dec 31 1979] fwupdx64.efi
> + │ ├── [May 10 10:47] grub.cfg
> + │ ├── [Jun 3 12:38] grub.cfg.new.new
> + │ ├── [May 10 10:41] grub.cfg.old
> + │ ├── [Jun 27 02:41] grubenv
> + │ ├── [Dec 31 1979] grubx64.efi
> + │ ├── [Dec 31 1979] mmx64.efi
> + │ ├── [Dec 31 1979] shim.efi
> + │ ├── [Dec 31 1979] shimx64.efi
> + │ └── [Dec 31 1979] shimx64-fedora.efi
> + └── [Dec 31 1979] FSCK0000.REC
> +
> + 5 directories, 17 files
> +
> +This causes grub-probe failure, which in turn causes grub-mkconfig
> +failure. They are valid filesystems that appear intact, and the Linux
> +FAT stack is able to mount and manipulate them without complaint.
> +
> +The check for mtime of 0 has been present since
> +20def1a3c3952982395cd7c3ea7e78638527962b (fat: support file
> +modification times).
> +
> +Upstream-Status: Backport [https://git.savannah.gnu.org/cgit/grub.git/commit/?id=e43f3d93b28cce852c110c7a8e40d8311bcd8bb1]
> +
> +Signed-off-by: Robbie Harwood <rharwood@redhat.com>
> +Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
> +Signed-off-by: Ming Liu <liu.ming50@gmail.com>
> +---
> + grub-core/fs/fat.c | 3 ---
> + 1 file changed, 3 deletions(-)
> +
> +diff --git a/grub-core/fs/fat.c b/grub-core/fs/fat.c
> +index 0951b2e63..c5efed724 100644
> +--- a/grub-core/fs/fat.c
> ++++ b/grub-core/fs/fat.c
> +@@ -1027,9 +1027,6 @@ grub_fat_dir (grub_device_t device, const char *path, grub_fs_dir_hook_t hook,
> + grub_le_to_cpu16 (ctxt.dir.w_date),
> + &info.mtime);
> + #endif
> +- if (info.mtimeset == 0)
> +- grub_error (GRUB_ERR_OUT_OF_RANGE,
> +- "invalid modification timestamp for %s", path);
> +
> + if (hook (ctxt.filename, &info, hook_data))
> + break;
> +--
> +2.34.1
> +
> diff --git a/meta/recipes-bsp/grub/grub2.inc b/meta/recipes-bsp/grub/grub2.inc
> index f594e7d3a4..1215b24668 100644
> --- a/meta/recipes-bsp/grub/grub2.inc
> +++ b/meta/recipes-bsp/grub/grub2.inc
> @@ -44,6 +44,7 @@ SRC_URI = "${GNU_MIRROR}/grub/grub-${PV}.tar.gz \
> file://0001-fs-ext2-Ignore-checksum-seed-incompat-feature.patch \
> file://CVE-2023-4692.patch \
> file://CVE-2023-4693.patch \
> + file://0001-fs-fat-Don-t-error-when-mtime-is-0.patch \
> "
>
> SRC_URI[sha256sum] = "23b64b4c741569f9426ed2e3d0e6780796fca081bee4c99f62aa3f53ae803f5f"
> --
> 2.34.1
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#193286): https://lists.openembedded.org/g/openembedded-core/message/193286
> Mute This Topic: https://lists.openembedded.org/mt/103500707/3617179
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [alexandre.belloni@bootlin.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
--
Alexandre Belloni, co-owner and COO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
next prev parent reply other threads:[~2024-01-04 9:50 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-01-03 12:30 [OE-core] [PATCH] grub: fs/fat: Don't error when mtime is 0 liu.ming50
2024-01-04 9:49 ` Alexandre Belloni [this message]
2024-01-04 10:04 ` Ming Liu
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240104094952d0f43a9f@mail.local \
--to=alexandre.belloni@bootlin.com \
--cc=liu.ming50@gmail.com \
--cc=openembedded-core@lists.openembedded.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox