48 lines
2.3 KiB
Diff
48 lines
2.3 KiB
Diff
From 2cf13464ec92429e5ce22a2ce52f6fa228e28514 Mon Sep 17 00:00:00 2001
|
|
From: Daan De Meyer <daan.j.demeyer@gmail.com>
|
|
Date: Wed, 5 Feb 2025 12:42:39 +0100
|
|
Subject: [PATCH] repart: Don't fail when we're unable to read file attributes
|
|
|
|
We're getting EOVERFLOW when reading file attributes trying to get
|
|
mkosi running in a docker container (don't ask). I have a suspicion
|
|
this is coming from fuse-overlayfs. Anyway, since the file attributes
|
|
stuff is supposed to be purely optional, let's not fail when we can't
|
|
read file attributes for whatever reason.
|
|
|
|
(cherry picked from commit bc1291aa859783673450fc0c66c48a7242a8365b)
|
|
---
|
|
src/repart/repart.c | 6 +++---
|
|
1 file changed, 3 insertions(+), 3 deletions(-)
|
|
|
|
diff --git a/src/repart/repart.c b/src/repart/repart.c
|
|
index 2ddff313fc..b2a2bda2a2 100644
|
|
--- a/src/repart/repart.c
|
|
+++ b/src/repart/repart.c
|
|
@@ -4322,7 +4322,7 @@ static int prepare_temporary_file(Context *context, PartitionTarget *t, uint64_t
|
|
|
|
r = read_attr_fd(fdisk_get_devfd(context->fdisk_context), &attrs);
|
|
if (r < 0 && !ERRNO_IS_NEG_NOT_SUPPORTED(r))
|
|
- return log_error_errno(r, "Failed to read file attributes of %s: %m", arg_node);
|
|
+ log_warning_errno(r, "Failed to read file attributes of %s, ignoring: %m", arg_node);
|
|
|
|
if (FLAGS_SET(attrs, FS_NOCOW_FL)) {
|
|
r = chattr_fd(fd, FS_NOCOW_FL, FS_NOCOW_FL, NULL);
|
|
@@ -6587,7 +6587,7 @@ static int context_split(Context *context) {
|
|
|
|
r = read_attr_fd(fd, &attrs);
|
|
if (r < 0 && !ERRNO_IS_NEG_NOT_SUPPORTED(r))
|
|
- return log_error_errno(r, "Failed to read file attributes of %s: %m", arg_node);
|
|
+ log_warning_errno(r, "Failed to read file attributes of %s, ignoring: %m", arg_node);
|
|
}
|
|
|
|
fdt = xopenat_full(
|
|
@@ -7457,7 +7457,7 @@ static int context_minimize(Context *context) {
|
|
|
|
r = read_attr_fd(context->backing_fd, &attrs);
|
|
if (r < 0 && !ERRNO_IS_NEG_NOT_SUPPORTED(r))
|
|
- return log_error_errno(r, "Failed to read file attributes of %s: %m", arg_node);
|
|
+ log_warning_errno(r, "Failed to read file attributes of %s, ignoring: %m", arg_node);
|
|
|
|
LIST_FOREACH(partitions, p, context->partitions) {
|
|
_cleanup_(rm_rf_physical_and_freep) char *root = NULL;
|