Skip to contentSkip to conversation

wr-misc patches

PATCH In review Hongxu Jia 2 participants 9 messages Mar 28, 2014 – Mar 29, 2014

lore
Share & tools
lore

Hongxu Jia

author
#0 lore raw

cover wr-misc patches

WindRiver patches was sent for YP compliance.

There are total 22 patches, and separate them into 4 parts, each part is individual which means there is no dependence between them.

//Hongxu

The following changes since commit 8c3eb5ee4582b6f6d489549290937657f37fc19e:

packagegroup-toolset-native: Update after ocf-linux -> cryptodev-linux change (2014-03-27 19:53:30 +0000)

are available in the git repository at:

git://git.pokylinux.org/poky-contrib hongxu/wr-misc-patches
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=hongxu/wr-misc-patches

Baogen Shang (1):
openssl: Fix pod2man des.pod error on Ubuntu 12.04

Jeff Polk (1):
qemu: Add addition environment space to boot loader qemu-system-mips

Jiang Lu (1):
Qemu:Arm:versatilepb: Add memory size checking

Robert Yang (1):
kmod: fix O_CLOEXEC not supported on old kernel

Ting Liu (1):
wayland-native: disable unused macro checks to fix build issue on
Centos5.x

Yue Tao (1):
initscripts: Avoid restarting rpcbind daemon

 .../openssl-1.0.1e/openssl-fix-des.pod-error.patch | 19 ++++++++
 .../recipes-connectivity/openssl/openssl_1.0.1e.bb |  1 +
 .../initscripts/initscripts-1.0/mountnfs.sh        |  9 ++--
 ...-Arm-versatilepb-Add-memory-size-checking.patch | 40 +++++++++++++++++
 .../qemu/files/qemu-enlarge-env-entry-size.patch   | 31 ++++++++++++++
 meta/recipes-devtools/qemu/qemu_1.7.0.bb           |  4 +-
 ...disable-macro-checks-not-used-for-scanner.patch | 50 ++++++++++++++++++++++
 meta/recipes-graphics/wayland/wayland_1.4.0.bb     |  4 +-
 meta/recipes-kernel/kmod/kmod.inc                  |  1 +
 meta/recipes-kernel/kmod/kmod/fix-O_CLOEXEC.patch  | 38 ++++++++++++++++
 10 files changed, 192 insertions(+), 5 deletions(-)
 create mode 100644 meta/recipes-connectivity/openssl/openssl-1.0.1e/openssl-fix-des.pod-error.patch
 create mode 100644 meta/recipes-devtools/qemu/files/Qemu-Arm-versatilepb-Add-memory-size-checking.patch
 create mode 100644 meta/recipes-devtools/qemu/files/qemu-enlarge-env-entry-size.patch
 create mode 100644 meta/recipes-graphics/wayland/wayland/disable-macro-checks-not-used-for-scanner.patch
 create mode 100644 meta/recipes-kernel/kmod/kmod/fix-O_CLOEXEC.patch
Signature · 1 line
1.8.1.2
author
#1 lore raw

PATCH 1/6 wayland-native: disable unused macro checks to fix build issue on Centos5.x

From: Ting Liu <[email protected]>

We only build wayland-native for the scanner, so disable the bits we don't actually need. This avoid build issue on older distro such as Centos 5.x:

| error: 'O_CLOEXEC' undeclared (first use in this function)
| error: sys/timerfd.h: No such file or directory
| error: 'CLOCK_MONOTONIC' undeclared (first use in this function)
| error: 'TFD_CLOEXEC' undeclared (first use in this function)
| error: 'SFD_CLOEXEC' undeclared (first use in this function)
---
 ...disable-macro-checks-not-used-for-scanner.patch | 50 ++++++++++++++++++++++
 meta/recipes-graphics/wayland/wayland_1.4.0.bb     |  4 +-
 2 files changed, 53 insertions(+), 1 deletion(-)
 create mode 100644 meta/recipes-graphics/wayland/wayland/disable-macro-checks-not-used-for-scanner.patch
meta/recipes-graphics/wayland/wayland/disable-macro-checks-not-used-for-scanner.patch new file +50 -0
new file mode 100644
index 0000000..bf499bb
@@ -0,0 +1,50 @@
+disable macro checks not used for scanner
+
+We only build wayland-native for the scanner, so disable the bits we don't
+actually need. This avoid build issue on older distro such as Centos 5.x:
+| error: 'O_CLOEXEC' undeclared (first use in this function)
+| error: sys/timerfd.h: No such file or directory
+| error: 'CLOCK_MONOTONIC' undeclared (first use in this function)
+| error: 'TFD_CLOEXEC' undeclared (first use in this function)
+| error: 'SFD_CLOEXEC' undeclared (first use in this function)
+
+Upstream-Status: Pending
+
+Signed-off-by: Ting Liu <[email protected]>
+---
+ configure.ac | 20 ++++++++++----------
+ 1 file changed, 10 insertions(+), 10 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+--- a/configure.ac
++++ b/configure.ac
+@@ -41,16 +41,16 @@ AC_SUBST(GCC_CFLAGS)
+ 
+ AC_CHECK_FUNCS([accept4 mkostemp])
+ 
+-AC_CHECK_DECL(SFD_CLOEXEC,[],
+-	      [AC_MSG_ERROR("SFD_CLOEXEC is needed to compile wayland")],
+-	      [[#include <sys/signalfd.h>]])
+-AC_CHECK_DECL(TFD_CLOEXEC,[],
+-	      [AC_MSG_ERROR("TFD_CLOEXEC is needed to compile wayland")],
+-	      [[#include <sys/timerfd.h>]])
+-AC_CHECK_DECL(CLOCK_MONOTONIC,[],
+-	      [AC_MSG_ERROR("CLOCK_MONOTONIC is needed to compile wayland")],
+-	      [[#include <time.h>]])
+-AC_CHECK_HEADERS([execinfo.h])
++##AC_CHECK_DECL(SFD_CLOEXEC,[],
++#	      [AC_MSG_ERROR("SFD_CLOEXEC is needed to compile wayland")],
++#	      [[#include <sys/signalfd.h>]])
++#AC_CHECK_DECL(TFD_CLOEXEC,[],
++#	      [AC_MSG_ERROR("TFD_CLOEXEC is needed to compile wayland")],
++#	      [[#include <sys/timerfd.h>]])
++#AC_CHECK_DECL(CLOCK_MONOTONIC,[],
++#	      [AC_MSG_ERROR("CLOCK_MONOTONIC is needed to compile wayland")],
++#	      [[#include <time.h>]])
++#AC_CHECK_HEADERS([execinfo.h])
+ 
+ AC_ARG_ENABLE([scanner],
+               [AC_HELP_STRING([--disable-scanner],
+-- 
+1.8.3.2
+
meta/recipes-graphics/wayland/wayland_1.4.0.bb +3 -1
index 604b7f4..9f6419d 100644
@@ -14,7 +14,9 @@ SRC_URI = "http://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz"
 SRC_URI[md5sum] = "332cf9191837be12638a29265ed7cf46"
 SRC_URI[sha256sum] = "18f33b9f15b4c8b662fb1968e7636e7926b419dfc48de8a164b3a3d7095c5a58"
 
-SRC_URI_append_class-native = " file://just-scanner.patch"
+SRC_URI_append_class-native = " file://just-scanner.patch \
+    file://disable-macro-checks-not-used-for-scanner.patch \
+    "
 EXTRA_OECONF_class-native = "--disable-documentation --enable-scanner"
 
 inherit autotools pkgconfig
Signature · 1 line
1.8.1.2
author
#2 lore raw

PATCH 2/6 kmod: fix O_CLOEXEC not supported on old kernel

In reply to Hongxu Jia

From: Robert Yang <[email protected]>

O_CLOEXEC is introduced from Linux 2.6.23, so old kernel doesn't have it, we need check before use.

This patch is much more like a workaround, since it may need fcntl() use FD_CLOEXEC to replace.

---
 meta/recipes-kernel/kmod/kmod.inc                 |  1 +
 meta/recipes-kernel/kmod/kmod/fix-O_CLOEXEC.patch | 38 +++++++++++++++++++++++
 2 files changed, 39 insertions(+)
 create mode 100644 meta/recipes-kernel/kmod/kmod/fix-O_CLOEXEC.patch
meta/recipes-kernel/kmod/kmod.inc +1 -0
index b7e176c..47445eb 100644
@@ -25,6 +25,7 @@ SRC_URI = "git://git.kernel.org/pub/scm/utils/kernel/kmod/kmod.git \
            file://run-ptest \
            file://ptest.patch \
            file://avoid_parallel_tests.patch \
+           file://fix-O_CLOEXEC.patch \
           "
 
 S = "${WORKDIR}/git"
meta/recipes-kernel/kmod/kmod/fix-O_CLOEXEC.patch new file +38 -0
new file mode 100644
index 0000000..8161d61
@@ -0,0 +1,38 @@
+From bd43367eee868059770188fd9e9db38520dc6fff Mon Sep 17 00:00:00 2001
+From: Robert Yang <[email protected]>
+Date: Wed, 22 Jan 2014 01:06:40 -0500
+Subject: [PATCH] libkmod/libkmod-internal.h: check whether O_CLOEXEC is
+ defined or not
+
+O_CLOEXEC is introduced from Linux 2.6.23, so old kernel doesn't have
+it, we need check before use.
+
+This patch is much more like a workaround, since it may need fcntl() use
+FD_CLOEXEC to replace.
+
+This problem was reported by "Ting Liu <[email protected]>"
+Signed-off-by: Robert Yang <[email protected]>
+
+Upstream-Status: Pending
+---
+ libkmod/libkmod-internal.h |    4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/libkmod/libkmod-internal.h b/libkmod/libkmod-internal.h
+index 0180124..100b40f 100644
+--- a/libkmod/libkmod-internal.h
++++ b/libkmod/libkmod-internal.h
+@@ -9,6 +9,10 @@
+ #include "macro.h"
+ #include "libkmod.h"
+ 
++#ifndef O_CLOEXEC
++#define O_CLOEXEC 0
++#endif
++
+ static _always_inline_ _printf_format_(2, 3) void
+ 	kmod_log_null(struct kmod_ctx *ctx, const char *format, ...) {}
+ 
+-- 
+1.7.10.4
+
Signature · 1 line
1.8.1.2
author
#3 lore raw

PATCH 3/6 initscripts: Avoid restarting rpcbind daemon

In reply to Hongxu Jia

From: Yue Tao <[email protected]>

Check whether rpcbind daemon already run before starting it.

---
 meta/recipes-core/initscripts/initscripts-1.0/mountnfs.sh | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)
meta/recipes-core/initscripts/initscripts-1.0/mountnfs.sh +6 -3
index fe6c196..be9f597 100755
@@ -67,9 +67,12 @@ if test "$rpcbind" = yes
 then
 	if test -x /usr/sbin/rpcbind
 	then
-		echo -n "Starting rpcbind... "
-		start-stop-daemon --start --quiet --exec /usr/sbin/rpcbind
-		sleep 2
+		service rpcbind status > /dev/null
+		if [ $? != 0 ]; then
+			echo -n "Starting rpcbind..."
+			start-stop-daemon --start --quiet --exec /usr/sbin/rpcbind
+			sleep 2
+		fi
 	fi
 fi
 
Signature · 1 line
1.8.1.2
#4 lore raw

Re: [PATCH 3/6] initscripts: Avoid restarting rpcbind daemon

Hi Hongxu,
Does this change fix a bug or an inappropriate system behavior?

Thanks,
Cristian Iorga
YP
Intel Corporation

-----Original Message-----
From: [email protected] [mailto:[email protected]] On Behalf Of Hongxu Jia
Sent: Friday, March 28, 2014 11:43 AM
To: [email protected]
Cc: Wold, Saul
Subject: [OE-core] [PATCH 3/6] initscripts: Avoid restarting rpcbind daemon

From: Yue Tao <[email protected]>

Check whether rpcbind daemon already run before starting it.

---
 meta/recipes-core/initscripts/initscripts-1.0/mountnfs.sh | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)
meta/recipes-core/initscripts/initscripts-1.0/mountnfs.sh +6 -4
index fe6c196..be9f597 100755
@@ -67,9 +67,12 @@ if test "$rpcbind" = yes  then
 	if test -x /usr/sbin/rpcbind
 	then
-		echo -n "Starting rpcbind... "
-		start-stop-daemon --start --quiet --exec /usr/sbin/rpcbind
-		sleep 2
+		service rpcbind status > /dev/null
+		if [ $? != 0 ]; then
+			echo -n "Starting rpcbind..."
+			start-stop-daemon --start --quiet --exec /usr/sbin/rpcbind
+			sleep 2
+		fi
 	fi
 fi
 
--

1.8.1.2

--
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-core

author
#5 lore raw

Re: [PATCH 3/6] initscripts: Avoid restarting rpcbind daemon

Quoted 2 lines · Cristian

Hi Hongxu,
Does this change fix a bug or an inappropriate system behavior?

Yes, I got this fix from WindRiver Linux, here is the defect log:

1. From Boot logs:

Configuring network interfaces... ifup: interface lo already configured done. Starting rpcbind daemon...done.
Starting rpcbind...Mounting remote filesystems...

2. From target:

 # ls -l /etc/rcS.d/S43rpcbind
lrwxrwxrwx 3 root root 17 Aug 28 07:57 /etc/rcS.d/S43rpcbind -> ../init.d/rpcbind

3. But mountnfs also start rpcbind:

# ls -l  /etc/rcS.d/S45mountnfs.sh
lrwxrwxrwx 3 root root 21 Aug 28 07:57 /etc/rcS.d/S45mountnfs.sh -> ../init.d/mountnfs.sh

from /etc/init.d/mountfs.sh

if test "$rpcbind" = yes
then
if test -x /usr/sbin/rpcbind
then
echo -n "Starting rpcbind..." start-stop-daemon --start --quiet --exec /usr/sbin/rpcbind sleep 2
fi
fi

//Hongxu

Quoted 51 lines

Thanks,
Cristian Iorga
YP
Intel Corporation

-----Original Message-----
From: [email protected] [mailto:[email protected]] On Behalf Of Hongxu Jia
Sent: Friday, March 28, 2014 11:43 AM
To: [email protected]
Cc: Wold, Saul
Subject: [OE-core] [PATCH 3/6] initscripts: Avoid restarting rpcbind daemon

From: Yue Tao <[email protected]>

Check whether rpcbind daemon already run before starting it.

---
  meta/recipes-core/initscripts/initscripts-1.0/mountnfs.sh | 9 ++++++---
  1 file changed, 6 insertions(+), 3 deletions(-)
meta/recipes-core/initscripts/initscripts-1.0/mountnfs.sh +6 -4
index fe6c196..be9f597 100755
@@ -67,9 +67,12 @@ if test "$rpcbind" = yes  then
  	if test -x /usr/sbin/rpcbind
  	then
-		echo -n "Starting rpcbind... "
-		start-stop-daemon --start --quiet --exec /usr/sbin/rpcbind
-		sleep 2
+		service rpcbind status > /dev/null
+		if [ $? != 0 ]; then
+			echo -n "Starting rpcbind..."
+			start-stop-daemon --start --quiet --exec /usr/sbin/rpcbind
+			sleep 2
+		fi
  	fi
  fi
 
--

1.8.1.2

--
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-core

author
#6 lore raw

PATCH 4/6 qemu: Add addition environment space to boot loader qemu-system-mips

In reply to Hongxu Jia

From: Jeff Polk <[email protected]>

The qemu mips malta base board boot loader uses environment strings with a max length of 256 bytes which is not long enough to accommodate a long NFS path in addition to the normal kernel boot command line arguments.

The solution is to expand the environment string length to 1024 bytes.

---
 .../qemu/files/qemu-enlarge-env-entry-size.patch   | 31 ++++++++++++++++++++++
 meta/recipes-devtools/qemu/qemu_1.7.0.bb           |  3 ++-
 2 files changed, 33 insertions(+), 1 deletion(-)
 create mode 100644 meta/recipes-devtools/qemu/files/qemu-enlarge-env-entry-size.patch
meta/recipes-devtools/qemu/files/qemu-enlarge-env-entry-size.patch new file +31 -0
new file mode 100644
index 0000000..c7425ab
@@ -0,0 +1,31 @@
+qemu: Add addition environment space to boot loader qemu-system-mips 
+
+Upstream-Status: Inappropriate - OE uses deep paths
+
+If you create a project with very long directory names like 128 characters
+deep and use NFS, the kernel arguments will be truncated. The kernel will
+accept longer strings such as 1024 bytes, but the qemu boot loader defaulted
+to only 256 bytes. This patch expands the limit.
+
+Signed-off-by: Jason Wessel <[email protected]>
+Signed-off-by: Roy Li <[email protected]>
+---
+ hw/mips/mips_malta.c    |    2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/hw/mips/mips_malta.c b/hw/mips/mips_malta.c
+index 9d521cc..17c0391 100644
+--- a/hw/mips/mips_malta.c
++++ b/hw/mips/mips_malta.c
+@@ -53,7 +53,7 @@
+ 
+ #define ENVP_ADDR		0x80002000l
+ #define ENVP_NB_ENTRIES	 	16
+-#define ENVP_ENTRY_SIZE	 	256
++#define ENVP_ENTRY_SIZE	 	1024
+ 
+ /* Hardware addresses */
+ #define FLASH_ADDRESS 0x1e000000ULL
+-- 
+1.7.10.4
+
meta/recipes-devtools/qemu/qemu_1.7.0.bb +2 -1
index c0e8b55..be6dd51 100644
@@ -3,7 +3,8 @@ require qemu.inc
 LIC_FILES_CHKSUM = "file://COPYING;md5=441c28d2cf86e15a37fa47e15a72fbac \
                     file://COPYING.LIB;endline=24;md5=c04def7ae38850e7d3ef548588159913"
 
-SRC_URI += "file://fxrstorssefix.patch"
+SRC_URI += "file://fxrstorssefix.patch \
+            file://qemu-enlarge-env-entry-size.patch"
 
 SRC_URI_prepend = "http://wiki.qemu.org/download/qemu-${PV}.tar.bz2"
 SRC_URI[md5sum] = "32893941d40d052a5e649efcf06aca06"
Signature · 1 line
1.8.1.2
author
#7 lore raw

PATCH 5/6 Qemu:Arm:versatilepb: Add memory size checking

In reply to Hongxu Jia

From: Jiang Lu <[email protected]>

The machine can not work with memory over 256M, so add a checking at startup. If the memory size exceed 256M, just stop emulation then throw out warning about memory limitation.

---
 ...-Arm-versatilepb-Add-memory-size-checking.patch | 40 ++++++++++++++++++++++
 meta/recipes-devtools/qemu/qemu_1.7.0.bb           |  3 +-
 2 files changed, 42 insertions(+), 1 deletion(-)
 create mode 100644 meta/recipes-devtools/qemu/files/Qemu-Arm-versatilepb-Add-memory-size-checking.patch
meta/recipes-devtools/qemu/files/Qemu-Arm-versatilepb-Add-memory-size-checking.patch new file +40 -0
new file mode 100644
index 0000000..3834aed
@@ -0,0 +1,40 @@
+From 896fa02c24347e6e9259812cfda187b1d6ca6199 Mon Sep 17 00:00:00 2001
+From: Jiang Lu <[email protected]>
+Date: Wed, 13 Nov 2013 10:38:08 +0800
+Subject: [PATCH] Qemu:Arm:versatilepb: Add memory size checking
+
+The machine can not work with memory over 256M, so add a checking
+at startup. If the memory size exceed 256M, just stop emulation then
+throw out warning about memory limitation.
+
+Upstream-Status: Pending
+
+Signed-off-by: Jiang Lu <[email protected]>
+
+Updated it on 2014-01-15 for rebasing
+
+Signed-off-by: Robert Yang <[email protected]>
+---
+ hw/arm/versatilepb.c |    6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/hw/arm/versatilepb.c b/hw/arm/versatilepb.c
+index b48d84c..ad2cd5a 100644
+--- a/hw/arm/versatilepb.c
++++ b/hw/arm/versatilepb.c
+@@ -199,6 +199,12 @@ static void versatile_init(QEMUMachineInitArgs *args, int board_id)
+         fprintf(stderr, "Unable to find CPU definition\n");
+         exit(1);
+     }
++    if (ram_size > (256 << 20)) {
++        fprintf(stderr,
++                "qemu: Too much memory for this machine: %d MB, maximum 256 MB\n",
++                ((unsigned int)ram_size / (1 << 20)));
++        exit(1);
++    }
+     memory_region_init_ram(ram, NULL, "versatile.ram", args->ram_size);
+     vmstate_register_ram_global(ram);
+     /* ??? RAM should repeat to fill physical memory space.  */
+-- 
+1.7.10.4
+
meta/recipes-devtools/qemu/qemu_1.7.0.bb +2 -1
index be6dd51..b776ccc 100644
@@ -4,7 +4,8 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=441c28d2cf86e15a37fa47e15a72fbac \
                     file://COPYING.LIB;endline=24;md5=c04def7ae38850e7d3ef548588159913"
 
 SRC_URI += "file://fxrstorssefix.patch \
-            file://qemu-enlarge-env-entry-size.patch"
+            file://qemu-enlarge-env-entry-size.patch \
+            file://Qemu-Arm-versatilepb-Add-memory-size-checking.patch"
 
 SRC_URI_prepend = "http://wiki.qemu.org/download/qemu-${PV}.tar.bz2"
 SRC_URI[md5sum] = "32893941d40d052a5e649efcf06aca06"
Signature · 1 line
1.8.1.2
author
#8 lore raw

PATCH 6/6 openssl: Fix pod2man des.pod error on Ubuntu 12.04

In reply to Hongxu Jia

From: Baogen Shang <[email protected]>

This is a formatting fix, '=back' is required before '=head1' on Ubuntu 12.04.

---
 .../openssl-1.0.1e/openssl-fix-des.pod-error.patch    | 19 +++++++++++++++++++
 meta/recipes-connectivity/openssl/openssl_1.0.1e.bb   |  1 +
 2 files changed, 20 insertions(+)
 create mode 100644 meta/recipes-connectivity/openssl/openssl-1.0.1e/openssl-fix-des.pod-error.patch
meta/recipes-connectivity/openssl/openssl-1.0.1e/openssl-fix-des.pod-error.patch new file +19 -0
new file mode 100644
index 0000000..de49729
@@ -0,0 +1,19 @@
+openssl: Fix pod2man des.pod error on Ubuntu 12.04
+
+This is a formatting fix, '=back' is required before
+'=head1' on Ubuntu 12.04.
+
+Upstream-Status: Pending
+Signed-off-by: Baogen Shang <[email protected]>
+diff -urpN a_origin/des.pod b_modify/des.pod
+--- a_origin/crypto/des/des.pod	2013-08-15 15:02:56.211674589 +0800
++++ b_modify/crypto/des/des.pod	2013-08-15 15:04:14.439674580 +0800
+@@ -181,6 +181,8 @@ the uuencoded file to embed in the begin
+ output.  If there is no name specified after the B<-u>, the name text.des
+ will be embedded in the header.
+ 
++=back
++
+ =head1 SEE ALSO
+ 
+ ps(1),
meta/recipes-connectivity/openssl/openssl_1.0.1e.bb +1 -0
index 2c3885c..618ba68 100644
@@ -35,6 +35,7 @@ SRC_URI += "file://configure-targets.patch \
             file://openssl-avoid-NULL-pointer-dereference-in-dh_pub_encode.patch \
             file://initial-aarch64-bits.patch \
             file://find.pl \
+            file://openssl-fix-des.pod-error.patch \
             file://0001-Fix-for-TLS-record-tampering-bug-CVE-2013-4353.patch \
             file://0001-Fix-DTLS-retransmission-from-previous-session.patch \
             file://0001-Use-version-in-SSL_METHOD-not-SSL-structure.patch \
Signature · 1 line
1.8.1.2