All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH V2 3/3] uclibc: Revert systemd regressing patch from upsteam uclibc and uprev SRCREV
@ 2012-09-12  7:55 Khem Raj
  2012-09-14 15:41 ` Saul Wold
  2015-03-20 13:07 ` Bernhard Reutner-Fischer
  0 siblings, 2 replies; 6+ messages in thread
From: Khem Raj @ 2012-09-12  7:55 UTC (permalink / raw)
  To: openembedded-core

This patch is causing systemd based systemd to not boot
Revert of patch has been tested on tip of master hence the new SRCREV

New SRCREV brings in one another regression fix as described here
http://lists.uclibc.org/pipermail/uclibc/2012-August/046993.html

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta/recipes-core/uclibc/uclibc-git.inc            |    5 +-
 ...nt.c-wtent.c-move-functions-from-utxent.c.patch |  321 ++++++++++++++++++++
 2 files changed, 324 insertions(+), 2 deletions(-)
 create mode 100644 meta/recipes-core/uclibc/uclibc-git/0001-Revert-utent.c-wtent.c-move-functions-from-utxent.c.patch

diff --git a/meta/recipes-core/uclibc/uclibc-git.inc b/meta/recipes-core/uclibc/uclibc-git.inc
index eec4ded..4da9c58 100644
--- a/meta/recipes-core/uclibc/uclibc-git.inc
+++ b/meta/recipes-core/uclibc/uclibc-git.inc
@@ -1,9 +1,9 @@
-SRCREV="555ae2e88cd16a83f854634b6c3f35715b11d3d4"
+SRCREV="cb43f2afba0633400387fa7c55dda3396517f58a"
 
 DEFAULT_PREFERENCE = "-1"
 
 PV = "0.9.33+git${SRCPV}"
-PR = "${INC_PR}.3"
+PR = "${INC_PR}.4"
 
 FILESPATH = "${@base_set_filespath([ '${FILE_DIRNAME}/uclibc-git' ], d)}"
 
@@ -26,5 +26,6 @@ SRC_URI = "git://uclibc.org/uClibc.git;branch=master;protocol=git \
 	file://0001-nptl-atfork-Hide-pthread_atfork-in-shared-versions.patch \
 	file://0001-librt-Use-nodefaultlibs-instead-of-nostdlib.patch \
 	file://mount.h-update.patch \
+	file://0001-Revert-utent.c-wtent.c-move-functions-from-utxent.c.patch \
 	"
 S = "${WORKDIR}/git"
diff --git a/meta/recipes-core/uclibc/uclibc-git/0001-Revert-utent.c-wtent.c-move-functions-from-utxent.c.patch b/meta/recipes-core/uclibc/uclibc-git/0001-Revert-utent.c-wtent.c-move-functions-from-utxent.c.patch
new file mode 100644
index 0000000..8c202ac
--- /dev/null
+++ b/meta/recipes-core/uclibc/uclibc-git/0001-Revert-utent.c-wtent.c-move-functions-from-utxent.c.patch
@@ -0,0 +1,321 @@
+Upstream-Status: Pending
+
+From 096abf14d2dc978607ccd8a0d7f42da65d8991f3 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sun, 9 Sep 2012 22:00:04 -0700
+Subject: [PATCH] Revert "utent.c, wtent.c: move functions from utxent.c"
+
+This reverts commit 84135275cfeebc0b233c1c96eeada4d4178a0b18.
+---
+ include/utmp.h          |    8 +++++
+ libc/misc/utmp/utent.c  |   80 +++++++++++------------------------------------
+ libc/misc/utmp/utxent.c |    4 +--
+ libc/misc/utmp/wtent.c  |   14 ++-------
+ 4 files changed, 30 insertions(+), 76 deletions(-)
+
+diff --git a/include/utmp.h b/include/utmp.h
+index cb8e08f..10b75c9 100644
+--- a/include/utmp.h
++++ b/include/utmp.h
+@@ -57,29 +57,37 @@ extern void logwtmp (__const char *__ut_line, __const char *__ut_name,
+ /* Append entry UTMP to the wtmp-like file WTMP_FILE.  */
+ extern void updwtmp (__const char *__wtmp_file, __const struct utmp *__utmp)
+      __THROW;
++libc_hidden_proto(updwtmp)
+ 
+ /* Change name of the utmp file to be examined.  */
+ extern int utmpname (__const char *__file) __THROW;
++libc_hidden_proto(utmpname)
+ 
+ /* Read next entry from a utmp-like file.  */
+ extern struct utmp *getutent (void) __THROW;
++libc_hidden_proto(getutent)
+ 
+ /* Reset the input stream to the beginning of the file.  */
+ extern void setutent (void) __THROW;
++libc_hidden_proto(setutent)
+ 
+ /* Close the current open file.  */
+ extern void endutent (void) __THROW;
++libc_hidden_proto(endutent)
+ 
+ /* Search forward from the current point in the utmp file until the
+    next entry with a ut_type matching ID->ut_type.  */
+ extern struct utmp *getutid (__const struct utmp *__id) __THROW;
++libc_hidden_proto(getutid)
+ 
+ /* Search forward from the current point in the utmp file until the
+    next entry with a ut_line matching LINE->ut_line.  */
+ extern struct utmp *getutline (__const struct utmp *__line) __THROW;
++libc_hidden_proto(getutline)
+ 
+ /* Write out entry pointed to by UTMP_PTR into the utmp file.  */
+ extern struct utmp *pututline (__const struct utmp *__utmp_ptr) __THROW;
++libc_hidden_proto(pututline)
+ 
+ 
+ #if 0 /* def	__USE_MISC */
+diff --git a/libc/misc/utmp/utent.c b/libc/misc/utmp/utent.c
+index a35bb2b..07ca44e 100644
+--- a/libc/misc/utmp/utent.c
++++ b/libc/misc/utmp/utent.c
+@@ -19,9 +19,6 @@
+ #include <errno.h>
+ #include <string.h>
+ #include <utmp.h>
+-#ifdef __UCLIBC_HAS_UTMPX__
+-# include <utmpx.h>
+-#endif
+ #include <not-cancel.h>
+ 
+ #include <bits/uClibc_mutex.h>
+@@ -34,7 +31,7 @@ static const char default_file_name[] = _PATH_UTMP;
+ static const char *static_ut_name = default_file_name;
+ 
+ /* This function must be called with the LOCK held */
+-static void __setutent_unlocked(void)
++static void __setutent(void)
+ {
+     if (static_fd < 0) {
+ 	static_fd = open_not_cancel_2(static_ut_name, O_RDWR | O_CLOEXEC);
+@@ -53,24 +50,19 @@ static void __setutent_unlocked(void)
+     lseek(static_fd, 0, SEEK_SET);
+ }
+ #if defined __UCLIBC_HAS_THREADS__
+-static void __setutent(void)
++void setutent(void)
+ {
+     __UCLIBC_MUTEX_LOCK(utmplock);
+-    __setutent_unlocked();
++    __setutent();
+     __UCLIBC_MUTEX_UNLOCK(utmplock);
+ }
+ #else
+-static void __setutent(void);
+-strong_alias(__setutent_unlocked,__setutent)
+-#endif
+ strong_alias(__setutent,setutent)
+-
+-#ifdef __UCLIBC_HAS_UTMPX__
+-strong_alias(__setutent,setutxent)
+ #endif
++libc_hidden_def(setutent)
+ 
+ /* This function must be called with the LOCK held */
+-static struct utmp *__getutent_unlocked(void)
++static struct utmp *__getutent(void)
+ {
+     if (static_fd < 0) {
+ 	__setutent();
+@@ -86,27 +78,19 @@ static struct utmp *__getutent_unlocked(void)
+     return NULL;
+ }
+ #if defined __UCLIBC_HAS_THREADS__
+-static struct utmp *__getutent(void)
++struct utmp *getutent(void)
+ {
+     struct utmp *ret;
+ 
+     __UCLIBC_MUTEX_LOCK(utmplock);
+-    ret = __getutent_unlocked();
++    ret = __getutent();
+     __UCLIBC_MUTEX_UNLOCK(utmplock);
+     return ret;
+ }
+ #else
+-static struct utmp *__getutent(void);
+-strong_alias(__getutent_unlocked,__getutent)
+-#endif
+ strong_alias(__getutent,getutent)
+-
+-#ifdef __UCLIBC_HAS_UTMPX__
+-struct utmpx *getutxent(void)
+-{
+-	return (struct utmpx *) __getutent ();
+-}
+ #endif
++libc_hidden_def(getutent)
+ 
+ static void __endutent(void)
+ {
+@@ -117,13 +101,10 @@ static void __endutent(void)
+     __UCLIBC_MUTEX_UNLOCK(utmplock);
+ }
+ strong_alias(__endutent,endutent)
+-
+-#ifdef __UCLIBC_HAS_UTMPX__
+-strong_alias(__endutent,endutxent)
+-#endif
++libc_hidden_def(endutent)
+ 
+ /* This function must be called with the LOCK held */
+-static struct utmp *__getutid_unlocked(const struct utmp *utmp_entry)
++static struct utmp *__getutid(const struct utmp *utmp_entry)
+ {
+     struct utmp *lutmp;
+     unsigned type;
+@@ -133,7 +114,7 @@ static struct utmp *__getutid_unlocked(const struct utmp *utmp_entry)
+     type = utmp_entry->ut_type - 1;
+     type /= 4;
+ 
+-    while ((lutmp = __getutent_unlocked()) != NULL) {
++    while ((lutmp = __getutent()) != NULL) {
+ 	if (type == 0 && lutmp->ut_type == utmp_entry->ut_type)	{
+ 	    /* one of RUN_LVL, BOOT_TIME, NEW_TIME, OLD_TIME */
+ 	    return lutmp;
+@@ -147,34 +128,26 @@ static struct utmp *__getutid_unlocked(const struct utmp *utmp_entry)
+     return NULL;
+ }
+ #if defined __UCLIBC_HAS_THREADS__
+-static struct utmp *__getutid(const struct utmp *utmp_entry)
++struct utmp *getutid(const struct utmp *utmp_entry)
+ {
+     struct utmp *ret;
+ 
+     __UCLIBC_MUTEX_LOCK(utmplock);
+-    ret = __getutid_unlocked(utmp_entry);
++    ret = __getutid(utmp_entry);
+     __UCLIBC_MUTEX_UNLOCK(utmplock);
+     return ret;
+ }
+ #else
+-static struct utmp *__getutid(const struct utmp *utmp_entry);
+-strong_alias(__getutid_unlocked,__getutid)
+-#endif
+ strong_alias(__getutid,getutid)
+-
+-#ifdef __UCLIBC_HAS_UTMPX__
+-struct utmpx *getutxid(const struct utmpx *utmp_entry)
+-{
+-	return (struct utmpx *) __getutid ((const struct utmp *) utmp_entry);
+-}
+ #endif
++libc_hidden_def(getutid)
+ 
+ static struct utmp *__getutline(const struct utmp *utmp_entry)
+ {
+     struct utmp *lutmp;
+ 
+     __UCLIBC_MUTEX_LOCK(utmplock);
+-    while ((lutmp = __getutent_unlocked()) != NULL) {
++    while ((lutmp = __getutent()) != NULL) {
+ 	if (lutmp->ut_type == USER_PROCESS || lutmp->ut_type == LOGIN_PROCESS) {
+ 	    if (strncmp(lutmp->ut_line, utmp_entry->ut_line, sizeof(lutmp->ut_line)) == 0) {
+ 		break;
+@@ -185,13 +158,7 @@ static struct utmp *__getutline(const struct utmp *utmp_entry)
+     return lutmp;
+ }
+ strong_alias(__getutline,getutline)
+-
+-#ifdef __UCLIBC_HAS_UTMPX__
+-struct utmpx *getutxline(const struct utmpx *utmp_entry)
+-{
+-	return (struct utmpx *) __getutline ((const struct utmp *) utmp_entry);
+-}
+-#endif
++libc_hidden_def(getutline)
+ 
+ static struct utmp *__pututline(const struct utmp *utmp_entry)
+ {
+@@ -200,7 +167,7 @@ static struct utmp *__pututline(const struct utmp *utmp_entry)
+        the file pointer where they want it, everything will work out. */
+     lseek(static_fd, (off_t) - sizeof(struct utmp), SEEK_CUR);
+ 
+-    if (__getutid_unlocked(utmp_entry) != NULL)
++    if (__getutid(utmp_entry) != NULL)
+ 	lseek(static_fd, (off_t) - sizeof(struct utmp), SEEK_CUR);
+     else
+ 	lseek(static_fd, (off_t) 0, SEEK_END);
+@@ -211,13 +178,7 @@ static struct utmp *__pututline(const struct utmp *utmp_entry)
+     return (struct utmp *)utmp_entry;
+ }
+ strong_alias(__pututline,pututline)
+-
+-#ifdef __UCLIBC_HAS_UTMPX__
+-struct utmpx *pututxline (const struct utmpx *utmp_entry)
+-{
+-	return (struct utmpx *) __pututline ((const struct utmp *) utmp_entry);
+-}
+-#endif
++libc_hidden_def(pututline)
+ 
+ static int __utmpname(const char *new_ut_name)
+ {
+@@ -241,7 +202,4 @@ static int __utmpname(const char *new_ut_name)
+     return 0; /* or maybe return -(static_ut_name != new_ut_name)? */
+ }
+ strong_alias(__utmpname,utmpname)
+-
+-#ifdef __UCLIBC_HAS_UTMPX__
+-strong_alias(__utmpname,utmpxname)
+-#endif
++libc_hidden_def(utmpname)
+diff --git a/libc/misc/utmp/utxent.c b/libc/misc/utmp/utxent.c
+index 71157cc..a0e80a6 100644
+--- a/libc/misc/utmp/utxent.c
++++ b/libc/misc/utmp/utxent.c
+@@ -13,7 +13,6 @@
+ #include <utmpx.h>
+ #include <utmp.h>
+ 
+-#if 0 /* moved to utent.c */
+ void setutxent(void)
+ {
+ 	setutent ();
+@@ -49,12 +48,10 @@ int utmpxname (const char *new_ut_name)
+ 	return utmpname (new_ut_name);
+ }
+ 
+-/* moved to wtent.c */
+ void updwtmpx (const char *wtmpx_file, const struct utmpx *utmpx)
+ {
+ 	updwtmp (wtmpx_file, (const struct utmp *) utmpx);
+ }
+-#endif
+ 
+ /* Copy the information in UTMPX to UTMP. */
+ void getutmp (const struct utmpx *utmpx, struct utmp *utmp)
+@@ -107,3 +104,4 @@ void getutmpx (const struct utmp *utmp, struct utmpx *utmpx)
+ 	utmpx->ut_time = utmp->ut_time;
+ #endif
+ }
++
+diff --git a/libc/misc/utmp/wtent.c b/libc/misc/utmp/wtent.c
+index 9b3ad50..b5e4ee5 100644
+--- a/libc/misc/utmp/wtent.c
++++ b/libc/misc/utmp/wtent.c
+@@ -11,9 +11,6 @@
+ #include <time.h>
+ #include <unistd.h>
+ #include <utmp.h>
+-#ifdef __UCLIBC_HAS_UTMPX__
+-# include <utmpx.h>
+-#endif
+ #include <fcntl.h>
+ #include <sys/file.h>
+ #include <not-cancel.h>
+@@ -36,7 +33,7 @@ void logwtmp (const char *line, const char *name, const char *host)
+ }
+ #endif
+ 
+-static void __updwtmp(const char *wtmp_file, const struct utmp *lutmp)
++void updwtmp(const char *wtmp_file, const struct utmp *lutmp)
+ {
+     int fd;
+ 
+@@ -49,11 +46,4 @@ static void __updwtmp(const char *wtmp_file, const struct utmp *lutmp)
+ 	}
+     }
+ }
+-strong_alias(__updwtmp,updwtmp)
+-
+-#ifdef __UCLIBC_HAS_UTMPX__
+-void updwtmpx (const char *wtmpx_file, const struct utmpx *utmpx)
+-{
+-	__updwtmp (wtmpx_file, (const struct utmp *) utmpx);
+-}
+-#endif
++libc_hidden_def(updwtmp)
+-- 
+1.7.9.5
+
-- 
1.7.9.5




^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH V2 3/3] uclibc: Revert systemd regressing patch from upsteam uclibc and uprev SRCREV
  2012-09-12  7:55 [PATCH V2 3/3] uclibc: Revert systemd regressing patch from upsteam uclibc and uprev SRCREV Khem Raj
@ 2012-09-14 15:41 ` Saul Wold
  2015-03-20 13:07 ` Bernhard Reutner-Fischer
  1 sibling, 0 replies; 6+ messages in thread
From: Saul Wold @ 2012-09-14 15:41 UTC (permalink / raw)
  To: Khem Raj; +Cc: openembedded-core

On 09/12/2012 12:55 AM, Khem Raj wrote:
> This patch is causing systemd based systemd to not boot
> Revert of patch has been tested on tip of master hence the new SRCREV
>
> New SRCREV brings in one another regression fix as described here
> http://lists.uclibc.org/pipermail/uclibc/2012-August/046993.html
>
> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> ---
>   meta/recipes-core/uclibc/uclibc-git.inc            |    5 +-
>   ...nt.c-wtent.c-move-functions-from-utxent.c.patch |  321 ++++++++++++++++++++
>   2 files changed, 324 insertions(+), 2 deletions(-)
>   create mode 100644 meta/recipes-core/uclibc/uclibc-git/0001-Revert-utent.c-wtent.c-move-functions-from-utxent.c.patch
>

Merged into OE-Core

Thanks
	Sau!

> diff --git a/meta/recipes-core/uclibc/uclibc-git.inc b/meta/recipes-core/uclibc/uclibc-git.inc
> index eec4ded..4da9c58 100644
> --- a/meta/recipes-core/uclibc/uclibc-git.inc
> +++ b/meta/recipes-core/uclibc/uclibc-git.inc
> @@ -1,9 +1,9 @@
> -SRCREV="555ae2e88cd16a83f854634b6c3f35715b11d3d4"
> +SRCREV="cb43f2afba0633400387fa7c55dda3396517f58a"
>
>   DEFAULT_PREFERENCE = "-1"
>
>   PV = "0.9.33+git${SRCPV}"
> -PR = "${INC_PR}.3"
> +PR = "${INC_PR}.4"
>
>   FILESPATH = "${@base_set_filespath([ '${FILE_DIRNAME}/uclibc-git' ], d)}"
>
> @@ -26,5 +26,6 @@ SRC_URI = "git://uclibc.org/uClibc.git;branch=master;protocol=git \
>   	file://0001-nptl-atfork-Hide-pthread_atfork-in-shared-versions.patch \
>   	file://0001-librt-Use-nodefaultlibs-instead-of-nostdlib.patch \
>   	file://mount.h-update.patch \
> +	file://0001-Revert-utent.c-wtent.c-move-functions-from-utxent.c.patch \
>   	"
>   S = "${WORKDIR}/git"
> diff --git a/meta/recipes-core/uclibc/uclibc-git/0001-Revert-utent.c-wtent.c-move-functions-from-utxent.c.patch b/meta/recipes-core/uclibc/uclibc-git/0001-Revert-utent.c-wtent.c-move-functions-from-utxent.c.patch
> new file mode 100644
> index 0000000..8c202ac
> --- /dev/null
> +++ b/meta/recipes-core/uclibc/uclibc-git/0001-Revert-utent.c-wtent.c-move-functions-from-utxent.c.patch
> @@ -0,0 +1,321 @@
> +Upstream-Status: Pending
> +
> +From 096abf14d2dc978607ccd8a0d7f42da65d8991f3 Mon Sep 17 00:00:00 2001
> +From: Khem Raj <raj.khem@gmail.com>
> +Date: Sun, 9 Sep 2012 22:00:04 -0700
> +Subject: [PATCH] Revert "utent.c, wtent.c: move functions from utxent.c"
> +
> +This reverts commit 84135275cfeebc0b233c1c96eeada4d4178a0b18.
> +---
> + include/utmp.h          |    8 +++++
> + libc/misc/utmp/utent.c  |   80 +++++++++++------------------------------------
> + libc/misc/utmp/utxent.c |    4 +--
> + libc/misc/utmp/wtent.c  |   14 ++-------
> + 4 files changed, 30 insertions(+), 76 deletions(-)
> +
> +diff --git a/include/utmp.h b/include/utmp.h
> +index cb8e08f..10b75c9 100644
> +--- a/include/utmp.h
> ++++ b/include/utmp.h
> +@@ -57,29 +57,37 @@ extern void logwtmp (__const char *__ut_line, __const char *__ut_name,
> + /* Append entry UTMP to the wtmp-like file WTMP_FILE.  */
> + extern void updwtmp (__const char *__wtmp_file, __const struct utmp *__utmp)
> +      __THROW;
> ++libc_hidden_proto(updwtmp)
> +
> + /* Change name of the utmp file to be examined.  */
> + extern int utmpname (__const char *__file) __THROW;
> ++libc_hidden_proto(utmpname)
> +
> + /* Read next entry from a utmp-like file.  */
> + extern struct utmp *getutent (void) __THROW;
> ++libc_hidden_proto(getutent)
> +
> + /* Reset the input stream to the beginning of the file.  */
> + extern void setutent (void) __THROW;
> ++libc_hidden_proto(setutent)
> +
> + /* Close the current open file.  */
> + extern void endutent (void) __THROW;
> ++libc_hidden_proto(endutent)
> +
> + /* Search forward from the current point in the utmp file until the
> +    next entry with a ut_type matching ID->ut_type.  */
> + extern struct utmp *getutid (__const struct utmp *__id) __THROW;
> ++libc_hidden_proto(getutid)
> +
> + /* Search forward from the current point in the utmp file until the
> +    next entry with a ut_line matching LINE->ut_line.  */
> + extern struct utmp *getutline (__const struct utmp *__line) __THROW;
> ++libc_hidden_proto(getutline)
> +
> + /* Write out entry pointed to by UTMP_PTR into the utmp file.  */
> + extern struct utmp *pututline (__const struct utmp *__utmp_ptr) __THROW;
> ++libc_hidden_proto(pututline)
> +
> +
> + #if 0 /* def	__USE_MISC */
> +diff --git a/libc/misc/utmp/utent.c b/libc/misc/utmp/utent.c
> +index a35bb2b..07ca44e 100644
> +--- a/libc/misc/utmp/utent.c
> ++++ b/libc/misc/utmp/utent.c
> +@@ -19,9 +19,6 @@
> + #include <errno.h>
> + #include <string.h>
> + #include <utmp.h>
> +-#ifdef __UCLIBC_HAS_UTMPX__
> +-# include <utmpx.h>
> +-#endif
> + #include <not-cancel.h>
> +
> + #include <bits/uClibc_mutex.h>
> +@@ -34,7 +31,7 @@ static const char default_file_name[] = _PATH_UTMP;
> + static const char *static_ut_name = default_file_name;
> +
> + /* This function must be called with the LOCK held */
> +-static void __setutent_unlocked(void)
> ++static void __setutent(void)
> + {
> +     if (static_fd < 0) {
> + 	static_fd = open_not_cancel_2(static_ut_name, O_RDWR | O_CLOEXEC);
> +@@ -53,24 +50,19 @@ static void __setutent_unlocked(void)
> +     lseek(static_fd, 0, SEEK_SET);
> + }
> + #if defined __UCLIBC_HAS_THREADS__
> +-static void __setutent(void)
> ++void setutent(void)
> + {
> +     __UCLIBC_MUTEX_LOCK(utmplock);
> +-    __setutent_unlocked();
> ++    __setutent();
> +     __UCLIBC_MUTEX_UNLOCK(utmplock);
> + }
> + #else
> +-static void __setutent(void);
> +-strong_alias(__setutent_unlocked,__setutent)
> +-#endif
> + strong_alias(__setutent,setutent)
> +-
> +-#ifdef __UCLIBC_HAS_UTMPX__
> +-strong_alias(__setutent,setutxent)
> + #endif
> ++libc_hidden_def(setutent)
> +
> + /* This function must be called with the LOCK held */
> +-static struct utmp *__getutent_unlocked(void)
> ++static struct utmp *__getutent(void)
> + {
> +     if (static_fd < 0) {
> + 	__setutent();
> +@@ -86,27 +78,19 @@ static struct utmp *__getutent_unlocked(void)
> +     return NULL;
> + }
> + #if defined __UCLIBC_HAS_THREADS__
> +-static struct utmp *__getutent(void)
> ++struct utmp *getutent(void)
> + {
> +     struct utmp *ret;
> +
> +     __UCLIBC_MUTEX_LOCK(utmplock);
> +-    ret = __getutent_unlocked();
> ++    ret = __getutent();
> +     __UCLIBC_MUTEX_UNLOCK(utmplock);
> +     return ret;
> + }
> + #else
> +-static struct utmp *__getutent(void);
> +-strong_alias(__getutent_unlocked,__getutent)
> +-#endif
> + strong_alias(__getutent,getutent)
> +-
> +-#ifdef __UCLIBC_HAS_UTMPX__
> +-struct utmpx *getutxent(void)
> +-{
> +-	return (struct utmpx *) __getutent ();
> +-}
> + #endif
> ++libc_hidden_def(getutent)
> +
> + static void __endutent(void)
> + {
> +@@ -117,13 +101,10 @@ static void __endutent(void)
> +     __UCLIBC_MUTEX_UNLOCK(utmplock);
> + }
> + strong_alias(__endutent,endutent)
> +-
> +-#ifdef __UCLIBC_HAS_UTMPX__
> +-strong_alias(__endutent,endutxent)
> +-#endif
> ++libc_hidden_def(endutent)
> +
> + /* This function must be called with the LOCK held */
> +-static struct utmp *__getutid_unlocked(const struct utmp *utmp_entry)
> ++static struct utmp *__getutid(const struct utmp *utmp_entry)
> + {
> +     struct utmp *lutmp;
> +     unsigned type;
> +@@ -133,7 +114,7 @@ static struct utmp *__getutid_unlocked(const struct utmp *utmp_entry)
> +     type = utmp_entry->ut_type - 1;
> +     type /= 4;
> +
> +-    while ((lutmp = __getutent_unlocked()) != NULL) {
> ++    while ((lutmp = __getutent()) != NULL) {
> + 	if (type == 0 && lutmp->ut_type == utmp_entry->ut_type)	{
> + 	    /* one of RUN_LVL, BOOT_TIME, NEW_TIME, OLD_TIME */
> + 	    return lutmp;
> +@@ -147,34 +128,26 @@ static struct utmp *__getutid_unlocked(const struct utmp *utmp_entry)
> +     return NULL;
> + }
> + #if defined __UCLIBC_HAS_THREADS__
> +-static struct utmp *__getutid(const struct utmp *utmp_entry)
> ++struct utmp *getutid(const struct utmp *utmp_entry)
> + {
> +     struct utmp *ret;
> +
> +     __UCLIBC_MUTEX_LOCK(utmplock);
> +-    ret = __getutid_unlocked(utmp_entry);
> ++    ret = __getutid(utmp_entry);
> +     __UCLIBC_MUTEX_UNLOCK(utmplock);
> +     return ret;
> + }
> + #else
> +-static struct utmp *__getutid(const struct utmp *utmp_entry);
> +-strong_alias(__getutid_unlocked,__getutid)
> +-#endif
> + strong_alias(__getutid,getutid)
> +-
> +-#ifdef __UCLIBC_HAS_UTMPX__
> +-struct utmpx *getutxid(const struct utmpx *utmp_entry)
> +-{
> +-	return (struct utmpx *) __getutid ((const struct utmp *) utmp_entry);
> +-}
> + #endif
> ++libc_hidden_def(getutid)
> +
> + static struct utmp *__getutline(const struct utmp *utmp_entry)
> + {
> +     struct utmp *lutmp;
> +
> +     __UCLIBC_MUTEX_LOCK(utmplock);
> +-    while ((lutmp = __getutent_unlocked()) != NULL) {
> ++    while ((lutmp = __getutent()) != NULL) {
> + 	if (lutmp->ut_type == USER_PROCESS || lutmp->ut_type == LOGIN_PROCESS) {
> + 	    if (strncmp(lutmp->ut_line, utmp_entry->ut_line, sizeof(lutmp->ut_line)) == 0) {
> + 		break;
> +@@ -185,13 +158,7 @@ static struct utmp *__getutline(const struct utmp *utmp_entry)
> +     return lutmp;
> + }
> + strong_alias(__getutline,getutline)
> +-
> +-#ifdef __UCLIBC_HAS_UTMPX__
> +-struct utmpx *getutxline(const struct utmpx *utmp_entry)
> +-{
> +-	return (struct utmpx *) __getutline ((const struct utmp *) utmp_entry);
> +-}
> +-#endif
> ++libc_hidden_def(getutline)
> +
> + static struct utmp *__pututline(const struct utmp *utmp_entry)
> + {
> +@@ -200,7 +167,7 @@ static struct utmp *__pututline(const struct utmp *utmp_entry)
> +        the file pointer where they want it, everything will work out. */
> +     lseek(static_fd, (off_t) - sizeof(struct utmp), SEEK_CUR);
> +
> +-    if (__getutid_unlocked(utmp_entry) != NULL)
> ++    if (__getutid(utmp_entry) != NULL)
> + 	lseek(static_fd, (off_t) - sizeof(struct utmp), SEEK_CUR);
> +     else
> + 	lseek(static_fd, (off_t) 0, SEEK_END);
> +@@ -211,13 +178,7 @@ static struct utmp *__pututline(const struct utmp *utmp_entry)
> +     return (struct utmp *)utmp_entry;
> + }
> + strong_alias(__pututline,pututline)
> +-
> +-#ifdef __UCLIBC_HAS_UTMPX__
> +-struct utmpx *pututxline (const struct utmpx *utmp_entry)
> +-{
> +-	return (struct utmpx *) __pututline ((const struct utmp *) utmp_entry);
> +-}
> +-#endif
> ++libc_hidden_def(pututline)
> +
> + static int __utmpname(const char *new_ut_name)
> + {
> +@@ -241,7 +202,4 @@ static int __utmpname(const char *new_ut_name)
> +     return 0; /* or maybe return -(static_ut_name != new_ut_name)? */
> + }
> + strong_alias(__utmpname,utmpname)
> +-
> +-#ifdef __UCLIBC_HAS_UTMPX__
> +-strong_alias(__utmpname,utmpxname)
> +-#endif
> ++libc_hidden_def(utmpname)
> +diff --git a/libc/misc/utmp/utxent.c b/libc/misc/utmp/utxent.c
> +index 71157cc..a0e80a6 100644
> +--- a/libc/misc/utmp/utxent.c
> ++++ b/libc/misc/utmp/utxent.c
> +@@ -13,7 +13,6 @@
> + #include <utmpx.h>
> + #include <utmp.h>
> +
> +-#if 0 /* moved to utent.c */
> + void setutxent(void)
> + {
> + 	setutent ();
> +@@ -49,12 +48,10 @@ int utmpxname (const char *new_ut_name)
> + 	return utmpname (new_ut_name);
> + }
> +
> +-/* moved to wtent.c */
> + void updwtmpx (const char *wtmpx_file, const struct utmpx *utmpx)
> + {
> + 	updwtmp (wtmpx_file, (const struct utmp *) utmpx);
> + }
> +-#endif
> +
> + /* Copy the information in UTMPX to UTMP. */
> + void getutmp (const struct utmpx *utmpx, struct utmp *utmp)
> +@@ -107,3 +104,4 @@ void getutmpx (const struct utmp *utmp, struct utmpx *utmpx)
> + 	utmpx->ut_time = utmp->ut_time;
> + #endif
> + }
> ++
> +diff --git a/libc/misc/utmp/wtent.c b/libc/misc/utmp/wtent.c
> +index 9b3ad50..b5e4ee5 100644
> +--- a/libc/misc/utmp/wtent.c
> ++++ b/libc/misc/utmp/wtent.c
> +@@ -11,9 +11,6 @@
> + #include <time.h>
> + #include <unistd.h>
> + #include <utmp.h>
> +-#ifdef __UCLIBC_HAS_UTMPX__
> +-# include <utmpx.h>
> +-#endif
> + #include <fcntl.h>
> + #include <sys/file.h>
> + #include <not-cancel.h>
> +@@ -36,7 +33,7 @@ void logwtmp (const char *line, const char *name, const char *host)
> + }
> + #endif
> +
> +-static void __updwtmp(const char *wtmp_file, const struct utmp *lutmp)
> ++void updwtmp(const char *wtmp_file, const struct utmp *lutmp)
> + {
> +     int fd;
> +
> +@@ -49,11 +46,4 @@ static void __updwtmp(const char *wtmp_file, const struct utmp *lutmp)
> + 	}
> +     }
> + }
> +-strong_alias(__updwtmp,updwtmp)
> +-
> +-#ifdef __UCLIBC_HAS_UTMPX__
> +-void updwtmpx (const char *wtmpx_file, const struct utmpx *utmpx)
> +-{
> +-	__updwtmp (wtmpx_file, (const struct utmp *) utmpx);
> +-}
> +-#endif
> ++libc_hidden_def(updwtmp)
> +--
> +1.7.9.5
> +
>



^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH V2 3/3] uclibc: Revert systemd regressing patch from upsteam uclibc and uprev SRCREV
  2012-09-12  7:55 [PATCH V2 3/3] uclibc: Revert systemd regressing patch from upsteam uclibc and uprev SRCREV Khem Raj
  2012-09-14 15:41 ` Saul Wold
@ 2015-03-20 13:07 ` Bernhard Reutner-Fischer
  2015-03-20 18:36   ` Khem Raj
  1 sibling, 1 reply; 6+ messages in thread
From: Bernhard Reutner-Fischer @ 2015-03-20 13:07 UTC (permalink / raw)
  To: Khem Raj; +Cc: oe-core

On 12 September 2012 at 09:55, Khem Raj <raj.khem@gmail.com> wrote:
> This patch is causing systemd based systemd to not boot

>  meta/recipes-core/uclibc/uclibc-git.inc            |    5 +-
>  ...nt.c-wtent.c-move-functions-from-utxent.c.patch |  321 ++++++++++++++++++++
>  2 files changed, 324 insertions(+), 2 deletions(-)
>  create mode 100644 meta/recipes-core/uclibc/uclibc-git/0001-Revert-utent.c-wtent.c-move-functions-from-utxent.c.patch

Khem,

Do you remember what exactly this was fixing?

I don't immediately see how reverting it makes sense..
Many thanks in advance for a hint or reproducer or instructions on how
to reproduce!


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH V2 3/3] uclibc: Revert systemd regressing patch from upsteam uclibc and uprev SRCREV
  2015-03-20 13:07 ` Bernhard Reutner-Fischer
@ 2015-03-20 18:36   ` Khem Raj
  2015-03-23 23:28     ` Bernhard Reutner-Fischer
  0 siblings, 1 reply; 6+ messages in thread
From: Khem Raj @ 2015-03-20 18:36 UTC (permalink / raw)
  To: Bernhard Reutner-Fischer; +Cc: oe-core


> On Mar 20, 2015, at 6:07 AM, Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> wrote:
> 
> On 12 September 2012 at 09:55, Khem Raj <raj.khem@gmail.com> wrote:
>> This patch is causing systemd based systemd to not boot
> 
>> meta/recipes-core/uclibc/uclibc-git.inc            |    5 +-
>> ...nt.c-wtent.c-move-functions-from-utxent.c.patch |  321 ++++++++++++++++++++
>> 2 files changed, 324 insertions(+), 2 deletions(-)
>> create mode 100644 meta/recipes-core/uclibc/uclibc-git/0001-Revert-utent.c-wtent.c-move-functions-from-utxent.c.patch
> 
> Khem,
> 
> Do you remember what exactly this was fixing?
> 
> I don't immediately see how reverting it makes sense..
> Many thanks in advance for a hint or reproducer or instructions on how
> to reproduce!

just remove the patch. System use to hard lock during boot. you will not miss it.



^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH V2 3/3] uclibc: Revert systemd regressing patch from upsteam uclibc and uprev SRCREV
  2015-03-20 18:36   ` Khem Raj
@ 2015-03-23 23:28     ` Bernhard Reutner-Fischer
  2015-03-24  3:04       ` Khem Raj
  0 siblings, 1 reply; 6+ messages in thread
From: Bernhard Reutner-Fischer @ 2015-03-23 23:28 UTC (permalink / raw)
  To: Khem Raj; +Cc: oe-core

On March 20, 2015 7:36:49 PM GMT+01:00, Khem Raj <raj.khem@gmail.com> wrote:
>
>> On Mar 20, 2015, at 6:07 AM, Bernhard Reutner-Fischer
><rep.dot.nop@gmail.com> wrote:
>> 
>> On 12 September 2012 at 09:55, Khem Raj <raj.khem@gmail.com> wrote:
>>> This patch is causing systemd based systemd to not boot
>> 
>>> meta/recipes-core/uclibc/uclibc-git.inc            |    5 +-
>>> ...nt.c-wtent.c-move-functions-from-utxent.c.patch |  321
>++++++++++++++++++++
>>> 2 files changed, 324 insertions(+), 2 deletions(-)
>>> create mode 100644
>meta/recipes-core/uclibc/uclibc-git/0001-Revert-utent.c-wtent.c-move-functions-from-utxent.c.patch
>> 
>> Khem,
>> 
>> Do you remember what exactly this was fixing?
>> 
>> I don't immediately see how reverting it makes sense..
>> Many thanks in advance for a hint or reproducer or instructions on
>how
>> to reproduce!
>
>just remove the patch. System use to hard lock during boot. you will
>not miss it.

Cannot reproduce this on current OE with qemux86-64 -smp 22 kvm nor qemumips (no smp as that just hangs before or early in the kernel) both sato images. Nevertheless I have reverted this now and will redo it piecemeal.

Sounds more like a since fixed (?) systemd bug or something.

Thanks,




^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH V2 3/3] uclibc: Revert systemd regressing patch from upsteam uclibc and uprev SRCREV
  2015-03-23 23:28     ` Bernhard Reutner-Fischer
@ 2015-03-24  3:04       ` Khem Raj
  0 siblings, 0 replies; 6+ messages in thread
From: Khem Raj @ 2015-03-24  3:04 UTC (permalink / raw)
  To: Bernhard Reutner-Fischer; +Cc: oe-core

On Mon, Mar 23, 2015 at 4:28 PM, Bernhard Reutner-Fischer
<rep.dot.nop@gmail.com> wrote:
> On March 20, 2015 7:36:49 PM GMT+01:00, Khem Raj <raj.khem@gmail.com> wrote:
>>
>>> On Mar 20, 2015, at 6:07 AM, Bernhard Reutner-Fischer
>><rep.dot.nop@gmail.com> wrote:
>>>
>>> On 12 September 2012 at 09:55, Khem Raj <raj.khem@gmail.com> wrote:
>>>> This patch is causing systemd based systemd to not boot
>>>
>>>> meta/recipes-core/uclibc/uclibc-git.inc            |    5 +-
>>>> ...nt.c-wtent.c-move-functions-from-utxent.c.patch |  321
>>++++++++++++++++++++
>>>> 2 files changed, 324 insertions(+), 2 deletions(-)
>>>> create mode 100644
>>meta/recipes-core/uclibc/uclibc-git/0001-Revert-utent.c-wtent.c-move-functions-from-utxent.c.patch
>>>
>>> Khem,
>>>
>>> Do you remember what exactly this was fixing?
>>>
>>> I don't immediately see how reverting it makes sense..
>>> Many thanks in advance for a hint or reproducer or instructions on
>>how
>>> to reproduce!
>>
>>just remove the patch. System use to hard lock during boot. you will
>>not miss it.
>
> Cannot reproduce this on current OE with qemux86-64 -smp 22 kvm nor qemumips (no smp as that just hangs before or early in the kernel) both sato images. Nevertheless I have reverted this now and will redo it piecemeal.
>
> Sounds more like a since fixed (?) systemd bug or something.

its possible, but before we put a lid on that try it on arm

>
> Thanks,
>
>


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2015-03-24  3:05 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-09-12  7:55 [PATCH V2 3/3] uclibc: Revert systemd regressing patch from upsteam uclibc and uprev SRCREV Khem Raj
2012-09-14 15:41 ` Saul Wold
2015-03-20 13:07 ` Bernhard Reutner-Fischer
2015-03-20 18:36   ` Khem Raj
2015-03-23 23:28     ` Bernhard Reutner-Fischer
2015-03-24  3:04       ` Khem Raj

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.