Commit 6ec54370 authored by Natanael Copa's avatar Natanael Copa

main/mkinitfs: upgrade to 3.0.5

parent 0d39eee5
From 23adfc18b162327df1c480f8e6f394bc113c0f0a Mon Sep 17 00:00:00 2001
From: Natanael Copa <ncopa@alpinelinux.org>
Date: Wed, 18 May 2016 13:19:15 +0000
Subject: [PATCH] init: add crc32 modules for raid5
They are not pulled in automatically
---
features.d/raid.modules | 2 ++
1 file changed, 2 insertions(+)
diff --git a/features.d/raid.modules b/features.d/raid.modules
index b73a51e..ec45c7e 100644
--- a/features.d/raid.modules
+++ b/features.d/raid.modules
@@ -1,3 +1,5 @@
kernel/drivers/md/raid*
kernel/drivers/block/cciss*
kernel/drivers/block/sx8*
+kernel/arch/*/crypto/crc32*
+kernel/crypto/crc32*
--
2.8.2
From 7389119f3283687adb521aec1397f8db996207fb Mon Sep 17 00:00:00 2001
From: Natanael Copa <ncopa@alpinelinux.org>
Date: Fri, 10 Jun 2016 14:11:01 +0000
Subject: [PATCH] nlplug-findfs: increase max delay
Increase timeout to 5sec if we have not found anything so we don't get
error too early.
If boot repos are found then reduce the event timeout to 250ms. If
usb_storage is found, then always add 1 second of delay in addition, to
let the usb host settle.
---
nlplug-findfs.c | 31 +++++++++++++++++++++----------
1 file changed, 21 insertions(+), 10 deletions(-)
diff --git a/nlplug-findfs.c b/nlplug-findfs.c
index b11b7b8..7a3a136 100644
--- a/nlplug-findfs.c
+++ b/nlplug-findfs.c
@@ -40,6 +40,7 @@
#include "arg.h"
+#define MAX_EVENT_TIMEOUT 5000
#define DEFAULT_EVENT_TIMEOUT 250
/* usb mass storage needs 1 sec to settle */
#define USB_STORAGE_TIMEOUT 1000
@@ -204,6 +205,7 @@ struct ueventconf {
char *bootrepos;
char *apkovls;
int timeout;
+ int usb_storage_timeout;
int efd;
unsigned running_threads;
pthread_t cryptsetup_tid;
@@ -682,8 +684,6 @@ static int searchdev(struct uevent *ev, const char *searchdev, char *bootrepos,
static int dispatch_uevent(struct uevent *ev, struct ueventconf *conf)
{
- static int timeout_increment = USB_STORAGE_TIMEOUT;
-
if (conf->subsystem_filter && ev->subsystem
&& strcmp(ev->subsystem, conf->subsystem_filter) != 0) {
dbg("subsystem '%s' filtered out (by '%s').",
@@ -701,10 +701,8 @@ static int dispatch_uevent(struct uevent *ev, struct ueventconf *conf)
conf->modalias_count++;
/* increase timeout so usb drives gets time to settle */
- if (strcmp(buf, "usb_storage") == 0) {
- conf->timeout += timeout_increment;
- timeout_increment = 0;
- }
+ if (strcmp(buf, "usb_storage") == 0)
+ conf->usb_storage_timeout = USB_STORAGE_TIMEOUT;
} else if (ev->devname != NULL) {
if (conf->program_argv[0] != NULL) {
@@ -842,6 +840,7 @@ int main(int argc, char *argv[])
size_t total_bytes = 0;
int found = 0;
int not_found_is_ok = 0;
+ int timeout = DEFAULT_EVENT_TIMEOUT;
char *program_argv[2] = {0,0};
pthread_t tid;
sigset_t sigchldmask;
@@ -853,7 +852,8 @@ int main(int argc, char *argv[])
memset(&conf, 0, sizeof(conf));
conf.program_argv = program_argv;
- conf.timeout = DEFAULT_EVENT_TIMEOUT;
+ conf.timeout = MAX_EVENT_TIMEOUT;
+ conf.usb_storage_timeout = 0;
use_lvm = access(LVM_PATH, X_OK) == 0;
use_mdadm = access(MDADM_PATH, X_OK) == 0;
@@ -890,7 +890,7 @@ int main(int argc, char *argv[])
conf.program_argv[0] = EARGF(usage(1));
break;
case 't':
- conf.timeout = atoi(EARGF(usage(1)));
+ timeout = atoi(EARGF(usage(1)));
break;
default:
usage(1);
@@ -921,14 +921,15 @@ int main(int argc, char *argv[])
conf.running_threads |= TRIGGER_THREAD;
while (1) {
- r = poll(fds, numfds, (spawn_active(&spawnmgr) || conf.running_threads) ? -1 : conf.timeout);
+ int t = conf.timeout + conf.usb_storage_timeout;
+ r = poll(fds, numfds, (spawn_active(&spawnmgr) || conf.running_threads) ? -1 : t);
if (r == -1) {
if (errno == EINTR || errno == ERESTART)
continue;
err(1, "poll");
}
if (r == 0) {
- dbg("exit due to timeout (%i)", conf.timeout);
+ dbg("exit due to timeout (%i)", t);
break;
}
@@ -977,9 +978,19 @@ int main(int argc, char *argv[])
if ((found & FOUND_DEVICE)
|| ((found & FOUND_BOOTREPO) &&
(found & FOUND_APKOVL))) {
+ /* we have found everything we need, so no
+ no need to wait for anything new event */
if (conf.timeout)
dbg("FOUND! setting timeout to 0");
conf.timeout = 0;
+ conf.usb_storage_timeout= 0;
+ } else if ((found & FOUND_BOOTREPO) && conf.timeout) {
+ /* we have found boot repo, but not apkovl
+ we reduce timeout to default timeout */
+ if (conf.timeout != timeout)
+ dbg("Setting timeout to %d",
+ timeout);
+ conf.timeout = timeout;
}
}
--
2.8.4
From b7b285ee9e05102f770d41643e5534bade289a58 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Timo=20Ter=C3=A4s?= <timo.teras@iki.fi>
Date: Mon, 21 Mar 2016 11:31:18 +0200
Subject: [PATCH] nlplug-findfs: increase the /sys recursion limit
certain platform and usb devices expose things deep down the tree,
increase the recursion limit
---
nlplug-findfs.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/nlplug-findfs.c b/nlplug-findfs.c
index 5bdb7b1..b11b7b8 100644
--- a/nlplug-findfs.c
+++ b/nlplug-findfs.c
@@ -805,9 +805,9 @@ static void *trigger_thread(void *data)
};
char path[PATH_MAX] = "/sys/bus";
- recurse_dir(path, &opts, 8);
+ recurse_dir(path, &opts, 64);
strcpy(path, "/sys/devices");
- recurse_dir(path, &opts, 8);
+ recurse_dir(path, &opts, 64);
write(fd, &ok, sizeof(ok));
return NULL;
}
--
2.7.4
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=mkinitfs
pkgver=3.0.4
pkgver=3.0.5
_ver=${pkgver%_git*}
pkgrel=3
pkgrel=0
pkgdesc="Tool to generate initramfs images for Alpine"
url="http://git.alpinelinux.org/cgit/mkinitfs"
makedepends="kmod-dev util-linux-dev cryptsetup-dev linux-headers"
......@@ -10,9 +10,6 @@ depends="acct busybox apk-tools>=2.0 lddtree>=1.25"
install="$pkgname.pre-upgrade $pkgname.post-install $pkgname.post-upgrade"
triggers="$pkgname.trigger=/usr/share/kernel/*"
source="http://dev.alpinelinux.org/archive/$pkgname/$pkgname-$_ver.tar.xz
0001-nlplug-findfs-increase-the-sys-recursion-limit.patch
0001-init-add-crc32-modules-for-raid5.patch
0001-nlplug-findfs-increase-max-delay.patch
"
arch="all"
license="GPL2"
......@@ -38,15 +35,6 @@ package() {
cd "$_builddir"
make install DESTDIR="$pkgdir" || return 1
}
md5sums="682a28918a7013d198b443e6b71a4df2 mkinitfs-3.0.4.tar.xz
fc43c3f1f037b6902179c5d90c97c8fc 0001-nlplug-findfs-increase-the-sys-recursion-limit.patch
0253c3bba385402a7bfa4a7e364dd36c 0001-init-add-crc32-modules-for-raid5.patch
257abd19e0904f581c06a73441ade078 0001-nlplug-findfs-increase-max-delay.patch"
sha256sums="f8ca92bf99870ba3076117e4af7fa56659bf2fa3f18a924507b6541ad10475cc mkinitfs-3.0.4.tar.xz
f7b983025fdb5cfdeedced11e445989e384e5d5773daf6f062ec32f8853b3cb7 0001-nlplug-findfs-increase-the-sys-recursion-limit.patch
cfd3db306374cfdb53b894e1397f8a26764553e060ebeac44ca436f20d580982 0001-init-add-crc32-modules-for-raid5.patch
e4f54925aad1d9474e43a950f2d7d8070d76cb2677dd61acf2c05ac1fd458cde 0001-nlplug-findfs-increase-max-delay.patch"
sha512sums="c0d2f6fb9d03afe2358dc0c1aecfd6aac46f69c63ed62e8513d525e54d3abb077f6b91ded4085c10480480d7ee3e8d0d6e91495b723ae2dc78c455d92329021d mkinitfs-3.0.4.tar.xz
fae8f44e2e2fa0898ee837fd88de5ada4ffb4c89c65fdda4ed3cffac7ae56c5dd6e01617f9b99a5e4aceacbd53ebdb879ea7c5562ecf0cbd7dce21af2f6da539 0001-nlplug-findfs-increase-the-sys-recursion-limit.patch
3b66146e77fe7ee46a3ae73016148c932954f1460a26eeb65cd430d61c3a2347ddaddc2cdd25a0cbfc3601f715af9c32fc0da2d0b7479d07234546ebfc712476 0001-init-add-crc32-modules-for-raid5.patch
b0d56a7f4e1012e0d4a3c0b058acf68844e2012474ffc5dca7a6408638f7443732f18f6f9e11928dd372533963f4361365c462675f5bd71fb373ebe7f2104c85 0001-nlplug-findfs-increase-max-delay.patch"
md5sums="de3f95912a542dfabbf0573620549a29 mkinitfs-3.0.5.tar.xz"
sha256sums="3f13619f161c506796b91f2db17644eba25c2ffc923aa0c8fff0213d1f660aa4 mkinitfs-3.0.5.tar.xz"
sha512sums="246f25ce3fb65ea19dbe611ad44a106930c28b2c7111908462d4a252433011280715b2cf87ee81cc6f0860679fd1d0a109d03040647498137e42b22ccc711662 mkinitfs-3.0.5.tar.xz"
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment