commit:     32d6c84b9fea8841df83c16caff20042c273209f
Author:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Tue Aug  4 09:06:46 2020 +0000
Commit:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Tue Aug  4 09:06:46 2020 +0000
URL:        https://gitweb.gentoo.org/proj/genkernel.git/commit/?id=32d6c84b

Bump busybox to v1.32.0

Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org>

 patches/busybox/1.31.1/README                      | 11 ----
 patches/busybox/1.31.1/busybox-1.18.1-openvt.diff  | 19 -------
 .../busybox/1.31.1/busybox-1.20.2-modprobe.patch   | 26 ---------
 .../busybox/1.31.1/busybox-1.31.1-glibc-2.31.patch | 61 ----------------------
 .../busybox/1.31.1/busybox-1.7.4-signal-hack.patch | 28 ----------
 .../busybox/1.32.0/busybox-1.20.2-modprobe.patch   | 46 ++++++++++++++++
 ...-1.30.1-allow-for-genkernel-cross-compile.patch |  0
 7 files changed, 46 insertions(+), 145 deletions(-)

diff --git a/patches/busybox/1.31.1/README b/patches/busybox/1.31.1/README
deleted file mode 100644
index 654c172..0000000
--- a/patches/busybox/1.31.1/README
+++ /dev/null
@@ -1,11 +0,0 @@
-1.18.1-mdstart.diff:
-This adds a 'mdstart' command to busybox, which is used for the activation of
-individual mdraid arrays. It originated with 1.1.3+gentoo or earlier.
-Patch ported from 1.7.4 to 1.18.1 by Denis Kaganovich.
-
-1.18.1-openvt.diff:
-It is unknown what problem this patch fixes. It may no longer be needed.
-Patch ported from 1.7.4 to 1.18.1 by Denis Kaganovich.
-
-busybox-1.7.4-signal-hack.patch:
-It is unknown what this patch does. It may no longer be needed.

diff --git a/patches/busybox/1.31.1/busybox-1.18.1-openvt.diff 
b/patches/busybox/1.31.1/busybox-1.18.1-openvt.diff
deleted file mode 100644
index b8a9f8a..0000000
--- a/patches/busybox/1.31.1/busybox-1.18.1-openvt.diff
+++ /dev/null
@@ -1,19 +0,0 @@
-Based on:
-
-> Allow a slightly wider range of valid vt numbers. Forward-ported from Gentoo
-> Busybox 1.1.3.
-
-> The previous spin of this patch on 1.1.3 had a 'wait(NULL);' right before
-> return EXIT_SUCCESS. I don't think it's needed anymore, so I left it out.
-
---- a/console-tools/openvt.c   2010-11-22 22:24:58.000000000 +0200
-+++ b/console-tools/openvt.c   2010-11-29 15:32:18.000000000 +0200
-@@ -124,7 +124,7 @@ int openvt_main(int argc UNUSED_PARAM, c
- 
-       if (flags & OPT_c) {
-               /* Check for illegal vt number: < 1 or > 63 */
--              vtno = xatou_range(str_c, 1, 63);
-+              vtno = xatou_range(str_c, 0, 63);
-       } else {
-               vtno = find_free_vtno();
-       }

diff --git a/patches/busybox/1.31.1/busybox-1.20.2-modprobe.patch 
b/patches/busybox/1.31.1/busybox-1.20.2-modprobe.patch
deleted file mode 100644
index 491eb05..0000000
--- a/patches/busybox/1.31.1/busybox-1.20.2-modprobe.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-diff --git a/modutils/modprobe.c b/modutils/modprobe.c
-index fb6c659..11fa521 100644
---- a/modutils/modprobe.c
-+++ b/modutils/modprobe.c
-@@ -413,7 +413,7 @@ static int do_modprobe(struct module_entry *m)
-       rc = 0;
-       while (m->deps) {
-               struct module_entry *m2;
--              char *fn, *options;
-+              char *fn, *options, *path;
- 
-               rc = 0;
-               fn = llist_pop(&m->deps); /* we leak it */
-@@ -460,7 +460,11 @@ static int do_modprobe(struct module_entry *m)
-                       continue;
-               }
- 
--              rc = bb_init_module(fn, options);
-+              path = xmalloc(strlen(fn) + strlen(CONFIG_DEFAULT_MODULES_DIR) 
+ strlen(G.uts.release) + 3);
-+              sprintf(path, "%s/%s/%s", CONFIG_DEFAULT_MODULES_DIR, 
G.uts.release, fn);
-+
-+              rc = bb_init_module(path, options);
-+              free(path);
-               DBG("loaded %s '%s', rc:%d", fn, options, rc);
-               if (rc == EEXIST)
-                       rc = 0;

diff --git a/patches/busybox/1.31.1/busybox-1.31.1-glibc-2.31.patch 
b/patches/busybox/1.31.1/busybox-1.31.1-glibc-2.31.patch
deleted file mode 100644
index 48fb46c..0000000
--- a/patches/busybox/1.31.1/busybox-1.31.1-glibc-2.31.patch
+++ /dev/null
@@ -1,61 +0,0 @@
-https://git.busybox.net/busybox/commit/?id=d3539be8f27b8cbfdfee460fe08299158f08bcd9
-
---- a/coreutils/date.c
-+++ b/coreutils/date.c
-@@ -279,6 +279,9 @@ int date_main(int argc UNUSED_PARAM, char **argv)
-               time(&ts.tv_sec);
- #endif
-       }
-+#if !ENABLE_FEATURE_DATE_NANO
-+      ts.tv_nsec = 0;
-+#endif
-       localtime_r(&ts.tv_sec, &tm_time);
- 
-       /* If date string is given, update tm_time, and maybe set date */
-@@ -301,9 +304,10 @@ int date_main(int argc UNUSED_PARAM, char **argv)
-               if (date_str[0] != '@')
-                       tm_time.tm_isdst = -1;
-               ts.tv_sec = validate_tm_time(date_str, &tm_time);
-+              ts.tv_nsec = 0;
- 
-               /* if setting time, set it */
--              if ((opt & OPT_SET) && stime(&ts.tv_sec) < 0) {
-+              if ((opt & OPT_SET) && clock_settime(CLOCK_REALTIME, &ts) < 0) {
-                       bb_perror_msg("can't set date");
-               }
-       }
---- a/libbb/missing_syscalls.c
-+++ b/libbb/missing_syscalls.c
-@@ -15,14 +15,6 @@ pid_t getsid(pid_t pid)
-       return syscall(__NR_getsid, pid);
- }
- 
--int stime(const time_t *t)
--{
--      struct timeval tv;
--      tv.tv_sec = *t;
--      tv.tv_usec = 0;
--      return settimeofday(&tv, NULL);
--}
--
- int sethostname(const char *name, size_t len)
- {
-       return syscall(__NR_sethostname, name, len);
---- a/util-linux/rdate.c
-+++ b/util-linux/rdate.c
-@@ -95,9 +95,13 @@ int rdate_main(int argc UNUSED_PARAM, char **argv)
-       if (!(flags & 2)) { /* no -p (-s may be present) */
-               if (time(NULL) == remote_time)
-                       bb_error_msg("current time matches remote time");
--              else
--                      if (stime(&remote_time) < 0)
-+              else {
-+                      struct timespec ts;
-+                      ts.tv_sec = remote_time;
-+                      ts.tv_nsec = 0;
-+                      if (clock_settime(CLOCK_REALTIME, &ts) < 0)
-                               bb_perror_msg_and_die("can't set time of day");
-+              }
-       }
- 
-       if (flags != 1) /* not lone -s */

diff --git a/patches/busybox/1.31.1/busybox-1.7.4-signal-hack.patch 
b/patches/busybox/1.31.1/busybox-1.7.4-signal-hack.patch
deleted file mode 100644
index ba11830..0000000
--- a/patches/busybox/1.31.1/busybox-1.7.4-signal-hack.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-workaround while we get it fixed upstream
-
-http://bugs.gentoo.org/201114
-
---- libbb/u_signal_names.c
-+++ libbb/u_signal_names.c
-@@ -66,7 +66,7 @@
- #ifdef SIGTERM
-       [SIGTERM  ] = "TERM",
- #endif
--#ifdef SIGSTKFLT
-+#if defined(SIGSTKFLT) && SIGSTKFLT < 32
-       [SIGSTKFLT] = "STKFLT",
- #endif
- #ifdef SIGCHLD
-@@ -90,10 +90,10 @
- #ifdef SIGURG
-       [SIGURG   ] = "URG",
- #endif
--#ifdef SIGXCPU
-+#if defined(SIGXCPU) && SIGXCPU < 32
-       [SIGXCPU  ] = "XCPU",
- #endif
--#ifdef SIGXFSZ
-+#if defined(SIGXFSZ) && SIGXFSZ < 32
-       [SIGXFSZ  ] = "XFSZ",
- #endif
- #ifdef SIGVTALRM

diff --git a/patches/busybox/1.32.0/busybox-1.20.2-modprobe.patch 
b/patches/busybox/1.32.0/busybox-1.20.2-modprobe.patch
new file mode 100644
index 0000000..9021a0f
--- /dev/null
+++ b/patches/busybox/1.32.0/busybox-1.20.2-modprobe.patch
@@ -0,0 +1,46 @@
+Load modules by absolute path in busybox modprobe
+
+Our switch to busybox modprobe broke ZFS module loading where busybox
+modprobe would load two modules and then fail. Limited developer time
+resulted in a hack being put into place to repeat modprobe until ZFS
+appeared. However, this was never a real long term solution.
+
+Recent analysis with strace suggests that loading two modules corrupts
+busybox's current working directory inside the kernel. Consequently,
+subsequent tests where absolute paths were used instead of relative ones
+made the problem disappear.
+
+Modifying busybox to use full paths when loading modules makes module
+loading work on all affected kernels. While the long term plan is to fix
+the kernel, this workaround will be needed indefinitely for affected
+kernels, even after mainline Linux is fixed.
+
+Signed-off-by: Richard Yao <[email protected]>
+
+Added via commit 006a5d6d56e622b5ef82e5a066ca7af7b8c2aeed.
+
+--- a/modutils/modprobe.c
++++ b/modutils/modprobe.c
+@@ -413,7 +413,7 @@ static int do_modprobe(struct module_entry *m)
+       rc = 0;
+       while (m->deps) {
+               struct module_entry *m2;
+-              char *fn, *options;
++              char *fn, *options, *path;
+ 
+               rc = 0;
+               fn = llist_pop(&m->deps); /* we leak it */
+@@ -460,7 +460,11 @@ static int do_modprobe(struct module_entry *m)
+                       continue;
+               }
+ 
+-              rc = bb_init_module(fn, options);
++              path = xmalloc(strlen(fn) + strlen(CONFIG_DEFAULT_MODULES_DIR) 
+ strlen(G.uts.release) + 3);
++              sprintf(path, "%s/%s/%s", CONFIG_DEFAULT_MODULES_DIR, 
G.uts.release, fn);
++
++              rc = bb_init_module(path, options);
++              free(path);
+               DBG("loaded %s '%s', rc:%d", fn, options, rc);
+               if (rc == EEXIST)
+                       rc = 0;
+ 

diff --git 
a/patches/busybox/1.31.1/busybox-1.30.1-allow-for-genkernel-cross-compile.patch 
b/patches/busybox/1.32.0/busybox-1.30.1-allow-for-genkernel-cross-compile.patch
similarity index 100%
rename from 
patches/busybox/1.31.1/busybox-1.30.1-allow-for-genkernel-cross-compile.patch
rename to 
patches/busybox/1.32.0/busybox-1.30.1-allow-for-genkernel-cross-compile.patch

Reply via email to