procd: update to latest git head
Signed-off-by: John Crispin <blogic@openwrt.org> SVN-Revision: 37504
This commit is contained in:
parent
99f15eec91
commit
11d027380e
|
@ -1,13 +1,13 @@
|
|||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=procd
|
||||
PKG_VERSION:=2013-07-14
|
||||
PKG_VERSION:=2013-07-22
|
||||
PKG_RELEASE=$(PKG_SOURCE_VERSION)-1
|
||||
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_URL:=git://nbd.name/luci2/procd.git
|
||||
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
|
||||
PKG_SOURCE_VERSION:=36d79a90c28ac9d655ccd8261b3ac0b497a5aec1
|
||||
PKG_SOURCE_VERSION:=eed8e77dcf5b9ce9c21919ea6d549b5dd92bb18a
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
|
||||
CMAKE_INSTALL:=1
|
||||
|
||||
|
|
|
@ -1,49 +0,0 @@
|
|||
From 13ebb50d2789de7bd47cebe57e3f6eba58fdcc7e Mon Sep 17 00:00:00 2001
|
||||
From: Gabor Juhos <juhosg@openwrt.org>
|
||||
Date: Fri, 19 Jul 2013 08:43:35 +0200
|
||||
Subject: [PATCH 1/2] early: keep stdio files open
|
||||
|
||||
At the end of the 'early_console' function, the
|
||||
file descriptor is closed unconditionally. This
|
||||
'close' call closes the stdio files if the fd
|
||||
returned by the 'open(dev/console)' call equals
|
||||
with any of the STD{IN,OUT,ERR}_FILENO values.
|
||||
When this happens, all subsequent accesses to
|
||||
the stdio files will fail and early console
|
||||
access won't work.
|
||||
|
||||
To avoid this, don't close the file descriptor if
|
||||
that equals with any of the STD*_FILENO values.
|
||||
|
||||
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
|
||||
---
|
||||
Note:
|
||||
|
||||
The issue happens if Linux is unable to open the
|
||||
initial console before calling init. In this case,
|
||||
the 'open(dev/console)' call in the 'early_console'
|
||||
function returns with zero.
|
||||
---
|
||||
early.c | 6 +++++-
|
||||
1 file changed, 5 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/early.c b/early.c
|
||||
index 27d0929..204623b 100644
|
||||
--- a/early.c
|
||||
+++ b/early.c
|
||||
@@ -65,7 +65,11 @@ static void early_console(const char *dev)
|
||||
dup2(dd, STDIN_FILENO);
|
||||
dup2(dd, STDOUT_FILENO);
|
||||
dup2(dd, STDERR_FILENO);
|
||||
- close(dd);
|
||||
+
|
||||
+ if (dd != STDIN_FILENO &&
|
||||
+ dd != STDOUT_FILENO &&
|
||||
+ dd != STDERR_FILENO)
|
||||
+ close(dd);
|
||||
}
|
||||
|
||||
static void early_env(void)
|
||||
--
|
||||
1.7.10
|
||||
|
|
@ -1,40 +0,0 @@
|
|||
From 1edd25cfa0a26dac1ca5d49bce479ebdea336437 Mon Sep 17 00:00:00 2001
|
||||
From: Gabor Juhos <juhosg@openwrt.org>
|
||||
Date: Fri, 19 Jul 2013 08:21:17 +0200
|
||||
Subject: [PATCH 2/2] early: remove superfluous close of stdio file
|
||||
descriptors
|
||||
|
||||
'man dup2' says:
|
||||
|
||||
dup2() makes newfd be the copy of oldfd, closing newfd first if
|
||||
necessary, but note the following:
|
||||
|
||||
* If oldfd is not a valid file descriptor, then the call fails,
|
||||
and newfd is not closed.
|
||||
|
||||
* If oldfd is a valid file descriptor, and newfd has the same
|
||||
value as oldfd, then dup2() does nothing, and returns newfd.
|
||||
|
||||
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
|
||||
---
|
||||
early.c | 4 ----
|
||||
1 file changed, 4 deletions(-)
|
||||
|
||||
diff --git a/early.c b/early.c
|
||||
index 204623b..f9e3277 100644
|
||||
--- a/early.c
|
||||
+++ b/early.c
|
||||
@@ -53,10 +53,6 @@ static void early_console(const char *dev)
|
||||
mkdev("*console", 0600);
|
||||
|
||||
dd = open(dev, O_RDWR);
|
||||
- close(STDIN_FILENO);
|
||||
- close(STDOUT_FILENO);
|
||||
- close(STDERR_FILENO);
|
||||
-
|
||||
if (dd < 0) {
|
||||
ERROR("Failed to open %s\n", dev);
|
||||
return;
|
||||
--
|
||||
1.7.10
|
||||
|
Loading…
Reference in New Issue