Openembedded Core Discussions
 help / color / mirror / Atom feed
* [PATCH 0/2] [dora] fixes for gcc and systemd
@ 2014-02-14  2:40 Robert Yang
  2014-02-14  2:40 ` [PATCH 1/2] gcc: Include patch scheduled for GCC 4.8.3 to fix epilogue on ARM Robert Yang
  2014-02-14  2:40 ` [PATCH 2/2] systemd: journald fix ignored disk space restrictions Robert Yang
  0 siblings, 2 replies; 3+ messages in thread
From: Robert Yang @ 2014-02-14  2:40 UTC (permalink / raw)
  To: openembedded-core

Hi RP,

This one doesn't on master since it is a backport from systemd 207,
while dora is 206:

systemd: journald fix ignored disk space restrictions

// Robert

The following changes since commit 7ee4d9e1b29a1c0a2552a008fc264c592ef5ae4a:

  pulseaudio: only package consolekit module when x11 is enabled (2014-02-13 12:35:45 +0000)

are available in the git repository at:

  git://git.openembedded.org/openembedded-core-contrib robert/dora-next
  http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=robert/dora-next

Diego Sueiro (1):
  systemd: journald fix ignored disk space restrictions

Holger Hans Peter Freyther (1):
  gcc: Include patch scheduled for GCC 4.8.3 to fix epilogue on ARM

 ...ournald-fix-fd-leak-in-journal_file_empty.patch | 27 ++++++++++++++++
 ...urnald-fix-vacuuming-of-archived-journals.patch | 37 ++++++++++++++++++++++
 meta/recipes-core/systemd/systemd_206.bb           |  2 ++
 meta/recipes-devtools/gcc/gcc-4.8.inc              |  1 +
 .../0048-PR58854_fix_arm_apcs_epilogue.patch       | 23 ++++++++++++++
 5 files changed, 90 insertions(+)
 create mode 100644 meta/recipes-core/systemd/systemd/journald-fix-fd-leak-in-journal_file_empty.patch
 create mode 100644 meta/recipes-core/systemd/systemd/journald-fix-vacuuming-of-archived-journals.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.8/0048-PR58854_fix_arm_apcs_epilogue.patch

-- 
1.8.3.1



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

* [PATCH 1/2] gcc: Include patch scheduled for GCC 4.8.3 to fix epilogue on ARM
  2014-02-14  2:40 [PATCH 0/2] [dora] fixes for gcc and systemd Robert Yang
@ 2014-02-14  2:40 ` Robert Yang
  2014-02-14  2:40 ` [PATCH 2/2] systemd: journald fix ignored disk space restrictions Robert Yang
  1 sibling, 0 replies; 3+ messages in thread
From: Robert Yang @ 2014-02-14  2:40 UTC (permalink / raw)
  To: openembedded-core

From: Holger Hans Peter Freyther <holger@moiji-mobile.com>

GCC 4.8.0, 4.8.1 and 4.8.2 can generate broken epilogues for the
ABI used by the kernel. Apply the patch that is included for GCC
4.8.3 from http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58854.

The issue was found on Yocto/Dora and the patch should be backported
to this branch. A kernel built with Dora's GCC 4.8.1 misbehaved on:

 while true;
 do
    (for i in `seq 1 100`;
        do
            echo "Log message... $RANDOM";
        done) | logger;
 done

busybox's syslogd would from time to read a huge negative value and
then exit, strace would get stuck waiting on a syscall. After this
patch it appears to work better.

(From OE-Core master rev: 3004eb3b7ee5fd8dfe9c4e5749b4e125d0bd4b59)

Signed-off-by: Holger Hans Peter Freyther <holger@moiji-mobile.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
---
 meta/recipes-devtools/gcc/gcc-4.8.inc              |  1 +
 .../0048-PR58854_fix_arm_apcs_epilogue.patch       | 23 ++++++++++++++++++++++
 2 files changed, 24 insertions(+)
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.8/0048-PR58854_fix_arm_apcs_epilogue.patch

diff --git a/meta/recipes-devtools/gcc/gcc-4.8.inc b/meta/recipes-devtools/gcc/gcc-4.8.inc
index b34c7ae..f1260af 100644
--- a/meta/recipes-devtools/gcc/gcc-4.8.inc
+++ b/meta/recipes-devtools/gcc/gcc-4.8.inc
@@ -78,6 +78,7 @@ SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
 	   file://0046-libatomic-deptracking.patch \
 	   file://0047-repomembug.patch \
 	   file://0048-PR57532.patch \
+	   file://0048-PR58854_fix_arm_apcs_epilogue.patch \
 	  "
 SRC_URI[md5sum] = "3b2386c114cd74185aa3754b58a79304"
 SRC_URI[sha256sum] = "545b44be3ad9f2c4e90e6880f5c9d4f0a8f0e5f67e1ffb0d45da9fa01bb05813"
diff --git a/meta/recipes-devtools/gcc/gcc-4.8/0048-PR58854_fix_arm_apcs_epilogue.patch b/meta/recipes-devtools/gcc/gcc-4.8/0048-PR58854_fix_arm_apcs_epilogue.patch
new file mode 100644
index 0000000..0ef245a
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.8/0048-PR58854_fix_arm_apcs_epilogue.patch
@@ -0,0 +1,23 @@
+Backport fix for PR target/58854
+
+2013-11-11  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
+
+       Backported from mainline
+        2013-10-30  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
+
+       PR target/58854
+       * config/arm/arm.c (arm_expand_epilogue_apcs_frame): Emit blockage
+
+
+Upstream-Status: Backport
+
+--- gcc-4_8-branch/gcc/config/arm/arm.c	2013/11/11 08:00:45	204664
++++ gcc-4_8-branch/gcc/config/arm/arm.c	2013/11/11 09:38:14	204665
+@@ -23555,6 +23555,7 @@
+   num_regs = bit_count (saved_regs_mask);
+   if ((offsets->outgoing_args != (1 + num_regs)) || cfun->calls_alloca)
+     {
++      emit_insn (gen_blockage ());
+       /* Unwind the stack to just below the saved registers.  */
+       emit_insn (gen_addsi3 (stack_pointer_rtx,
+                              hard_frame_pointer_rtx,
-- 
1.8.3.1



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

* [PATCH 2/2] systemd: journald fix ignored disk space restrictions
  2014-02-14  2:40 [PATCH 0/2] [dora] fixes for gcc and systemd Robert Yang
  2014-02-14  2:40 ` [PATCH 1/2] gcc: Include patch scheduled for GCC 4.8.3 to fix epilogue on ARM Robert Yang
@ 2014-02-14  2:40 ` Robert Yang
  1 sibling, 0 replies; 3+ messages in thread
From: Robert Yang @ 2014-02-14  2:40 UTC (permalink / raw)
  To: openembedded-core

From: Diego Sueiro <diego.sueiro@gmail.com>

The upstream bug report can be seen at:
[Systemd #68161] -- https://bugs.freedesktop.org/show_bug.cgi?id=68161

This backports patches come from 207 and need to address this in the 206 version for dora branch.

Signed-off-by: Diego Sueiro <diego.sueiro@gmail.com>
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
---
 ...ournald-fix-fd-leak-in-journal_file_empty.patch | 27 ++++++++++++++++
 ...urnald-fix-vacuuming-of-archived-journals.patch | 37 ++++++++++++++++++++++
 meta/recipes-core/systemd/systemd_206.bb           |  2 ++
 3 files changed, 66 insertions(+)
 create mode 100644 meta/recipes-core/systemd/systemd/journald-fix-fd-leak-in-journal_file_empty.patch
 create mode 100644 meta/recipes-core/systemd/systemd/journald-fix-vacuuming-of-archived-journals.patch

diff --git a/meta/recipes-core/systemd/systemd/journald-fix-fd-leak-in-journal_file_empty.patch b/meta/recipes-core/systemd/systemd/journald-fix-fd-leak-in-journal_file_empty.patch
new file mode 100644
index 0000000..a83c858
--- /dev/null
+++ b/meta/recipes-core/systemd/systemd/journald-fix-fd-leak-in-journal_file_empty.patch
@@ -0,0 +1,27 @@
+journald: fix fd leak in journal_file_empty
+Before my previous patch, journal_file_empty wasn't be called with the
+correct filename. Now that it's being called with the correct filename
+it leaks file descriptors. This patch closes the file descriptors before
+returning.
+
+Signed-off-by: George McCollister <george.mccollister@gmail.com>
+
+
+Index: systemd-206/src/journal/journal-vacuum.c
+===================================================================
+--- systemd-206.orig/src/journal/journal-vacuum.c	2013-07-21 19:43:28.146183128 -0300
++++ systemd-206/src/journal/journal-vacuum.c	2014-01-29 20:43:27.492343295 -0200
+@@ -129,9 +129,9 @@
+ }
+ 
+ static int journal_file_empty(int dir_fd, const char *name) {
+-        int fd, r;
++        int r;
+         le64_t n_entries;
+-
++        _cleanup_close_ int fd;
+         fd = openat(dir_fd, name, O_RDONLY|O_CLOEXEC|O_NOFOLLOW|O_NONBLOCK);
+         if (fd < 0)
+                 return -errno;
+
+Upstream-Status: Backport [207]
diff --git a/meta/recipes-core/systemd/systemd/journald-fix-vacuuming-of-archived-journals.patch b/meta/recipes-core/systemd/systemd/journald-fix-vacuuming-of-archived-journals.patch
new file mode 100644
index 0000000..7c59200
--- /dev/null
+++ b/meta/recipes-core/systemd/systemd/journald-fix-vacuuming-of-archived-journals.patch
@@ -0,0 +1,37 @@
+journald: fix vacuuming of archived journals
+d_name is modified on line 227 so if the entire journal name is needed
+again p must be used. Before this change when journal_file_empty was called
+on archived journals it would always return with -2.
+
+Signed-off-by: George McCollister <george.mccollister@gmail.com>
+
+Index: systemd-206/src/journal/journal-vacuum.c
+===================================================================
+--- systemd-206.orig/src/journal/journal-vacuum.c	2014-01-29 20:43:27.492343295 -0200
++++ systemd-206/src/journal/journal-vacuum.c	2014-01-29 20:48:55.076356876 -0200
+@@ -265,18 +265,18 @@
+                         /* We do not vacuum active files or unknown files! */
+                         continue;
+ 
+-                if (journal_file_empty(dirfd(d), de->d_name)) {
++                if (journal_file_empty(dirfd(d), p)) {
+ 
+                         /* Always vacuum empty non-online files. */
+ 
+-                        if (unlinkat(dirfd(d), de->d_name, 0) >= 0)
+-                                log_debug("Deleted empty journal %s/%s.", directory, de->d_name);
++                        if (unlinkat(dirfd(d), p, 0) >= 0)
++                                log_debug("Deleted empty journal %s/%s.", directory, p);
+                         else if (errno != ENOENT)
+-                                log_warning("Failed to delete %s/%s: %m", directory, de->d_name);
++                                log_warning("Failed to delete %s/%s: %m", directory, p);
+                         continue;
+                 }
+ 
+-                patch_realtime(directory, de->d_name, &st, &realtime);
++                patch_realtime(directory, p, &st, &realtime);
+ 
+                 GREEDY_REALLOC(list, n_allocated, n_list + 1);
+
+
+Upstream-Status: Backport [207] 
diff --git a/meta/recipes-core/systemd/systemd_206.bb b/meta/recipes-core/systemd/systemd_206.bb
index a1a8bd7..e7d0f1f 100644
--- a/meta/recipes-core/systemd/systemd_206.bb
+++ b/meta/recipes-core/systemd/systemd_206.bb
@@ -21,6 +21,8 @@ SRC_URI = "http://www.freedesktop.org/software/systemd/systemd-${PV}.tar.xz \
            file://0001-use-CAP_MKNOD-ConditionCapability.patch \
            file://0001-Use-bin-mkdir-instead-of-host-mkdir-path.patch \
            file://binfmt-install.patch \
+           file://journald-fix-fd-leak-in-journal_file_empty.patch \
+           file://journald-fix-vacuuming-of-archived-journals.patch \
            file://touchscreen.rules \
            ${UCLIBCPATCHES} \
            file://00-create-volatile.conf \
-- 
1.8.3.1



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

end of thread, other threads:[~2014-02-14  2:38 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-02-14  2:40 [PATCH 0/2] [dora] fixes for gcc and systemd Robert Yang
2014-02-14  2:40 ` [PATCH 1/2] gcc: Include patch scheduled for GCC 4.8.3 to fix epilogue on ARM Robert Yang
2014-02-14  2:40 ` [PATCH 2/2] systemd: journald fix ignored disk space restrictions Robert Yang

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox