mirror of
https://gitlab.alpinelinux.org/alpine/aports.git
synced 2025-04-19 19:36:44 +02:00
Not a lot of big changes in this release, mostly code shrinks and bug fixes here and there. Hence, I don't expect too much breakage. Most patches applied as is and didn't require any changes either. Nonetheless, I rebased the entire patchset and removed patches that were backported. The 0001-modutils-check-ELF-header-before-calling-finit_modul.patch should be superseded by an upstream modutils change which checks that if the loaded module file path ends in .ko and if not attempts to uncompress it first. Thereby preventing compressed modules to be passed to the kernel and causing a weird error to be emitted. Therefore, this patch was removed See: https://git.busybox.net/busybox/commit/?id=af5277f883e8fc2e0236aa9ecc5115ecaffd0ccb
59 lines
1.9 KiB
Diff
59 lines
1.9 KiB
Diff
From f567b28bc2e59abe681bd6b1bdb4c390c53c0a3f Mon Sep 17 00:00:00 2001
|
|
From: Natanael Copa <ncopa@alpinelinux.org>
|
|
Date: Tue, 28 Nov 2017 16:30:23 +0100
|
|
Subject: [PATCH] fsck: resolve LABEL=.../UUID=... spec to device
|
|
MIME-Version: 1.0
|
|
Content-Type: text/plain; charset=UTF-8
|
|
Content-Transfer-Encoding: 8bit
|
|
|
|
---
|
|
e2fsprogs/fsck.c | 10 +++++-----
|
|
1 file changed, 5 insertions(+), 5 deletions(-)
|
|
|
|
diff --git a/e2fsprogs/fsck.c b/e2fsprogs/fsck.c
|
|
index fd4ea737c..5206b05f5 100644
|
|
--- a/e2fsprogs/fsck.c
|
|
+++ b/e2fsprogs/fsck.c
|
|
@@ -60,6 +60,7 @@
|
|
//usage: "\n -t TYPE List of filesystem types to check"
|
|
|
|
#include "libbb.h"
|
|
+#include "volume_id.h"
|
|
#include "common_bufsiz.h"
|
|
|
|
/* "progress indicator" code is somewhat buggy and ext[23] specific.
|
|
@@ -524,12 +525,13 @@ static int wait_many(int flags)
|
|
* Execute a particular fsck program, and link it into the list of
|
|
* child processes we are waiting for.
|
|
*/
|
|
-static void execute(const char *type, const char *device,
|
|
+static void execute(const char *type, const char *spec,
|
|
const char *mntpt /*, int interactive */)
|
|
{
|
|
int i;
|
|
struct fsck_instance *inst;
|
|
pid_t pid;
|
|
+ char *device = (char *)spec;
|
|
|
|
G.args[0] = xasprintf("fsck.%s", type);
|
|
|
|
@@ -544,7 +546,8 @@ static void execute(const char *type, const char *device,
|
|
}
|
|
#endif
|
|
|
|
- G.args[G.num_args - 2] = (char*)device;
|
|
+ resolve_mount_spec(&device);
|
|
+ G.args[G.num_args - 2] = device;
|
|
/* G.args[G.num_args - 1] = NULL; - already is */
|
|
|
|
if (G.verbose || G.noexecute) {
|
|
@@ -973,9 +976,6 @@ int fsck_main(int argc UNUSED_PARAM, char **argv)
|
|
|
|
/* "/dev/blk" or "/path" or "UUID=xxx" or "LABEL=xxx" */
|
|
if ((arg[0] == '/' && !opts_for_fsck) || strchr(arg, '=')) {
|
|
-// FIXME: must check that arg is a blkdev, or resolve
|
|
-// "/path", "UUID=xxx" or "LABEL=xxx" into block device name
|
|
-// ("UUID=xxx"/"LABEL=xxx" can probably shifted to fsck.auto duties)
|
|
devices = xrealloc_vector(devices, 2, num_devices);
|
|
devices[num_devices++] = arg;
|
|
continue;
|