package: procd: Bug fix for case when kernel cmdline="console=null". In this case, the message is displayed in procd log: failed to set stdio: No such device and the working directory for the procd remains /dev ! chdir("/dev") is done in set_stdio(). And this, in turn, is already breaking the sysupgrade mechanism. chroot(".") is already performed not in the "/" but in the "/dev" and the sysupgrade process fails.

adron at yapic.net adron at yapic.net
Sat Jun 27 07:18:25 EDT 2020


From: Sergey Sergeev <adron at yapic.net>

Signed-off-by: Sergey Sergeev <adron at yapic.net>
---
 package/system/procd/patches/001-fix_null_console_bug.patch | 12 ++++++++++++
 1 file changed, 12 insertions(+)
 create mode 100644 package/system/procd/patches/001-fix_null_console_bug.patch

diff --git a/package/system/procd/patches/001-fix_null_console_bug.patch b/package/system/procd/patches/001-fix_null_console_bug.patch
new file mode 100644
index 0000000..d1e53b7
--- /dev/null
+++ b/package/system/procd/patches/001-fix_null_console_bug.patch
@@ -0,0 +1,12 @@
+diff -rNu a/state.c b/state.c
+--- a/state.c	2018-03-28 12:29:49.000000000 +0300
++++ b/state.c	2020-06-26 18:52:27.098719261 +0300
+@@ -108,7 +108,7 @@
+ 	case STATE_UBUS:
+ 		// try to reopen incase the wdt was not available before coldplug
+ 		watchdog_init(0);
+-		set_stdio("console");
++		set_console();
+ 		LOG("- ubus -\n");
+ 		procd_connect_ubus();
+ 		service_start_early("ubus", ubus_cmd);
-- 
2.7.4




More information about the openwrt-devel mailing list