All of lore.kernel.org
 help / color / mirror / Atom feed
From: Khem Raj <raj.khem@gmail.com>
To: openembedded-core@lists.openembedded.org
Subject: [PATCH 6/6] uclibc: Fix bug exposed by udev 168+ for mips architecture
Date: Thu, 30 Jun 2011 01:07:15 -0700	[thread overview]
Message-ID: <ccc3cc7fd88d55c9189e078a3398b3091bc84ae7.1309420894.git.raj.khem@gmail.com> (raw)
In-Reply-To: <681f30f772cb90b5ee4544f907013b7848e9e3fb.1309420894.git.raj.khem@gmail.com>
In-Reply-To: <cover.1309420894.git.raj.khem@gmail.com>

newer udev uses sgnalfd + epoll and this exposed a bug
in uclibc for mips where SFD_NONBLOCK should be defined
with 0200 for mips but was using 04000. This would cause
random segfaults in udev during boot process

Tested on qemumips/angstrom console-image since angstrom
uses udev 171. It worked well when we did not use meta-oe
layer because udev in oe-core will then be used which is
at version 164.

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 ...fd.h-SFD_NONBLOCK-for-mips-is-0200-unlike.patch |   33 ++++++++++++++++++++
 meta/recipes-core/uclibc/uclibc_git.bb             |    3 +-
 2 files changed, 35 insertions(+), 1 deletions(-)
 create mode 100644 meta/recipes-core/uclibc/uclibc-git/0001-mips-signalfd.h-SFD_NONBLOCK-for-mips-is-0200-unlike.patch

diff --git a/meta/recipes-core/uclibc/uclibc-git/0001-mips-signalfd.h-SFD_NONBLOCK-for-mips-is-0200-unlike.patch b/meta/recipes-core/uclibc/uclibc-git/0001-mips-signalfd.h-SFD_NONBLOCK-for-mips-is-0200-unlike.patch
new file mode 100644
index 0000000..6892ceb
--- /dev/null
+++ b/meta/recipes-core/uclibc/uclibc-git/0001-mips-signalfd.h-SFD_NONBLOCK-for-mips-is-0200-unlike.patch
@@ -0,0 +1,33 @@
+From ecc7d34cbbaf83aae87b091555650ed33e27ed2e Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 30 Jun 2011 00:32:11 -0700
+Subject: [PATCH] mips/signalfd.h: SFD_NONBLOCK for mips is 0200 unlike 04000 commonly
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ include/sys/signalfd.h |    9 +++++++++
+ 1 files changed, 9 insertions(+), 0 deletions(-)
+
+diff --git a/include/sys/signalfd.h b/include/sys/signalfd.h
+index 8cee17c..f1cb63a 100644
+--- a/include/sys/signalfd.h
++++ b/include/sys/signalfd.h
+@@ -64,6 +64,15 @@ enum
+ # define SFD_NONBLOCK SFD_NONBLOCK
+   };
+ 
++#elif defined __mips__
++enum
++  {
++    SFD_CLOEXEC = 02000000,
++# define SFD_CLOEXEC SFD_CLOEXEC
++    SFD_NONBLOCK = 0200
++# define SFD_NONBLOCK SFD_NONBLOCK
++  };
++
+ #else
+ enum
+   {
+-- 
+1.7.0.4
+
diff --git a/meta/recipes-core/uclibc/uclibc_git.bb b/meta/recipes-core/uclibc/uclibc_git.bb
index 201ec93..0e43f9e 100644
--- a/meta/recipes-core/uclibc/uclibc_git.bb
+++ b/meta/recipes-core/uclibc/uclibc_git.bb
@@ -2,7 +2,7 @@ SRCREV="71d63ed75648da9b0b71afabb9c60aaad792c55c"
 
 require uclibc.inc
 PV = "0.9.31+0.9.32rc3"
-PR = "${INC_PR}.4"
+PR = "${INC_PR}.5"
 PROVIDES += "virtual/${TARGET_PREFIX}libc-for-gcc"
 
 FILESPATH = "${@base_set_filespath([ '${FILE_DIRNAME}/uclibc-git' ], d)}"
@@ -30,5 +30,6 @@ SRC_URI = "git://uclibc.org/uClibc.git;branch=master;protocol=git \
 	file://orign_path.patch \
 	file://rtld_no.patch \
 	file://0001-Config.in.arch-Free-UCLIBC_HAS_FPU-setting-from-depe.patch \
+	file://0001-mips-signalfd.h-SFD_NONBLOCK-for-mips-is-0200-unlike.patch \
 	"
 S = "${WORKDIR}/git"
-- 
1.7.4.1




  parent reply	other threads:[~2011-06-30  8:11 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-06-30  8:06 [PATCH 0/6] uclibc config cleanup Khem Raj
2011-06-30  8:07 ` [PATCH 1/6] uclibc: Remove redundant machine/arch configs Khem Raj
2011-06-30  8:07 ` [PATCH 2/6] uclibc-config.inc: Fix regexp to determine big-endian arm Khem Raj
2011-06-30  8:07 ` [PATCH 3/6] uclibc.inc: Use ARCH_WANTS_{LITTLE|BIG}_ENDIAN to denote endian Khem Raj
2011-06-30  8:07 ` [PATCH 4/6] uclibc_git.bb: Untether UCLIBC_HAS_FPU from UCLIBC_HAS_FLOATS Khem Raj
2011-06-30  8:07 ` [PATCH 5/6] uclibc: Add UCLIBC_HAS_FLOATS=y to uClibc.distro Khem Raj
2011-06-30  8:07 ` Khem Raj [this message]
2011-06-30 22:30 ` [PATCH 0/6] uclibc config cleanup Richard Purdie
2011-06-30 23:36   ` Khem Raj
2011-06-30 23:41     ` Richard Purdie

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=ccc3cc7fd88d55c9189e078a3398b3091bc84ae7.1309420894.git.raj.khem@gmail.com \
    --to=raj.khem@gmail.com \
    --cc=openembedded-core@lists.openembedded.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.