diff options
author | Scott Murray <scott.murray@konsulko.com> | 2019-02-08 10:53:08 -0500 |
---|---|---|
committer | Stephane Desneux <stephane.desneux@iot.bzh> | 2019-04-04 18:02:11 +0200 |
commit | 7faccb97d69c7581e338f88ce3a2153cdd69fd16 (patch) | |
tree | 57dd664e04593af6eed43cb6ecffab438d93d860 /meta-agl-profile-core/recipes-devtools/rpm | |
parent | e978a20f40916eac57a5e1af8f65b6ed9f719e50 (diff) |
Upgrade to thud
Changes include:
- Add LAYERSERIES_COMPAT definitions to layer.conf files
- Remove now unnecessary SECURITY_*FLAGS over-rides from distro
configuration
- Set intel-corei7-64 preferred kernel version to 4.19 to match
latest linux-intel kernel available in meta-intel
- Update qemuarm preferred kernel version to 4.18 to match latest
linux-yocto
- Update firmware package and devicetree file names for raspberrypi3
- Remove linux-firmware bbappend specific to raspberrypi, it seems no
longer required and breaks the cross SDK build
- Update linux-intel bbappend to 4.19, remove now unnecessary patch
- Remove now unnecessary lttng-modules backport
- Update linux-raspberrypi bbappend to 4.14 kernel
- Added kernel configuration fragment for raspberrypi to disable
Kprobes. This is required until linux-raspberrypi is updated to
greater than 4.14.104 to avoid a build failure in lttng-modules
related to a check for known breakage in the kernel CONFIG_OPTPROBES
code.
- Replace obsolete base_conditional usage with oe.utils.conditional
- Add gstreamer1.0-plugins-bad bbappend for raspberrypi3 to disable
faad PACKAGECONFIG to avoid commercial license issues
- Remove unused and unbuildable Vayu gstreamer recipes
- Update linux-ti-staging bbappend for new BSP kernel
- Regen dcan2_pinmux_enable.patch for linux-ti-staging to remove fuzz
warning, and remove upstreamed fix_dcan_addresses.patch
- Remove ipumm-fw from meta-agl-bsp/meta-ti, as newer version is
available in the upstream BSP
- Update meta-agl-bsp/meta-ti weston patch to apply against 5.0.0
- Update meta-agl-bsp/meta-ti wayland-ivi-extension patch to apply
against 2.2.0
- Add ti-sgx-ddk-km patch to add AGL toolchain configuration file
- Remove now unnecessary fdtoverlay recipe
- Update core.cfg and ivishell.cfg in weston-ini-conf recipe to handle
move of ivi-controller.so configuration in Weston 5.0.0
- Update connman-ncurses patch to remove fuzz warning
- Add installation of systemd over-ride file for run-postinsts.service
in run-postinsts bbappend to workaround race condition between
ldconfig.service and the /sbin/ldconfig invocations in the
post-install scripts run by run-postinsts.service. The observed
failure was cynara's post-install script failing and its database
not being created.
- Remove now unnecessary valgrind backport
- Add patches to fix most driver compilation against newer kernels
- Update libmicrohttpd bbappend
- Remove libssp-dev from agl-image-graphical-qt5-crosssdk and
agl-demo-platform-html5-crosssdk, upstream have removed it from
non-mingw32 platform SDKs
- Update wayland-ivi-extension recipe to build 2.2.0, and update
local patches
- Update weston patches for 5.0.0. Patches:
0016-ivi-shell_add_screen_remove_layer_api.patch
0017-ivi-shell-register-ivi_layout_interface.patch
have been removed as they have been applied upstream and are no longer
necessary. Patches:
0018-compositor-add-output-type-to-weston_output.patch
0019-compositor-drm-introduce-drm_get_dmafd_from_view.patch
(both related to Waltham) have been disabled for now as they need
significant rework.
- Remove weston-conf RRECOMMENDS in weston bbappend to avoid conflict
with weston-ini-conf
- Add OECMAKE_GENERATOR = "Unix Makefiles" to aglwgt.bbclass to work
around CMake+ninja issue in cmake-apps-module
- Update dbus cynara patches for 1.12.10
- Add do_install_append in cynara recipe to remove /var/cynara from
cynara package so the directory creation and labelling in the
post-install scriptlet will function as intended
- Remove now unnecessary e2fsprogs backport
- Remove now unnecessary libcap-ng backport
- Update pulseaudio patches to remove fuzz warnings
- Update neardal patch to remove fuzz warning
- Update freetype patch to remove fuzz warning
- Rename opencv bbappend to 3.% to handle 3.x backports in upstream
- Updated qtwayland patch to remove fuzz warning
Changes from Stephane Desneux <stephane.desneux@iot.bzh>:
- Remove wayland-ivi-extension PREFERRED_VERSION
- Remove now unnecessary nativesdk-cmake patch
- Remove now unnecessary ptest-runner patches
- Remove now unnecessary harfbuzz patches
- Disable waltham-transmitter as it does not build against weston 5.0.0
- Update af-main, cynara, and security-manager to use pkg_postinst_ontarget
- Bump connman-ncurses revision to avoid deprecated ncurses functions
- Update libva package usage with new intel-vaapi-driver name
- Add patches to security-manager to fix compilation with gcc8
- Updated systemd bbappend
Changes from Jan-Simon Möller <jsmoeller@linuxfoundation.org>:
- Remove meta-agl-bsp/ROCKO.FIXMEs
- Remove linux-yocto_4.12.bbappend and now unnecessary associated
patch
- Remove now unneeded kern-tools-native patch
- Bump gstreamer PREFERRED_VERSIONs to 1.14.x
- Remove latencytop from packagegroup-agl-core-devel, it has been
dropped by upstream
- Remove now unnecessary rpm patches
- Update pulseaudio bbappend to 12.2
- Update opencv bbappend to 3.4
- Update freetype bbappend to 2.9.1
- Update dbus bbappend to 1.12.10
- Update weston bbappend to 5.0.0
- Update cynara patches to remove fuzz warnings
- Add patch to cynara to fix compilation with gcc8
- Add xmlsec1 bbappend to clear EXTRA_OECONF to fix compilation on
sumo or newer
Changes from Ronan Le Martet <ronan.lemartet@iot.bzh>:
- Update meta-rcar-gen3-adas layer gstreamer1.0-plugin-vspfilter
bbappend to version 1.0.1
Known issues (marked with FIXME):
- CMake+ninja issue in cmake-apps-module has been worked around with
OECMAKE_GENERATOR
- waltham-transmitter and the patches to weston related to it have been
disabled
- Currently unclear if patch to libcap-native is actually required or
not
Bug-AGL: SPEC-1837
Change-Id: I7b8b9ef667aec2d229952eace6663dfc761654d0
Signed-off-by: Scott Murray <scott.murray@konsulko.com>
Diffstat (limited to 'meta-agl-profile-core/recipes-devtools/rpm')
4 files changed, 0 insertions, 304 deletions
diff --git a/meta-agl-profile-core/recipes-devtools/rpm/files/0001-Factor-out-and-unify-setting-CLOEXEC.patch b/meta-agl-profile-core/recipes-devtools/rpm/files/0001-Factor-out-and-unify-setting-CLOEXEC.patch deleted file mode 100644 index cfddec6da..000000000 --- a/meta-agl-profile-core/recipes-devtools/rpm/files/0001-Factor-out-and-unify-setting-CLOEXEC.patch +++ /dev/null @@ -1,140 +0,0 @@ -From 0a66176074560303bf0870957464239e9757d891 Mon Sep 17 00:00:00 2001 -From: Kir Kolyshkin <kolyshkin@gmail.com> -Date: Tue, 29 May 2018 17:37:05 -0700 -Subject: [PATCH 1/3] Factor out and unify setting CLOEXEC - -Commit 7a7c31f5 ("Set FD_CLOEXEC on opened files before exec from -lua script is called") copied the code that sets CLOEXEC flag on all -possible file descriptors from lib/rpmscript.c to luaext/lposix.c, -essentially creating two copies of the same code (modulo comments -and the unused assignment). - -This commit moves the functionality into its own function, without -any code modifications, using the version from luaext/lposix.c. - -Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com> -(cherry picked from commit 9c3e5de3240554c8ea1b29d52eeadee4840fefac) ---- - lib/rpmscript.c | 17 ++--------------- - luaext/lposix.c | 13 ++----------- - rpmio/rpmio.c | 14 ++++++++++++++ - rpmio/rpmio_internal.h | 6 ++++++ - 4 files changed, 24 insertions(+), 26 deletions(-) - -diff --git a/lib/rpmscript.c b/lib/rpmscript.c -index 98d3f42..61dff83 100644 ---- a/lib/rpmscript.c -+++ b/lib/rpmscript.c -@@ -18,6 +18,7 @@ - - #include "rpmio/rpmlua.h" - #include "lib/rpmscript.h" -+#include "rpmio/rpmio_internal.h" - - #include "lib/rpmplugins.h" /* rpm plugins hooks */ - -@@ -161,25 +162,11 @@ static const char * const SCRIPT_PATH = "PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr - static void doScriptExec(ARGV_const_t argv, ARGV_const_t prefixes, - FD_t scriptFd, FD_t out) - { -- int flag; -- int fdno; - int xx; -- int open_max; - - (void) signal(SIGPIPE, SIG_DFL); - -- /* XXX Force FD_CLOEXEC on all inherited fdno's. */ -- open_max = sysconf(_SC_OPEN_MAX); -- if (open_max == -1) { -- open_max = 1024; -- } -- for (fdno = 3; fdno < open_max; fdno++) { -- flag = fcntl(fdno, F_GETFD); -- if (flag == -1 || (flag & FD_CLOEXEC)) -- continue; -- xx = fcntl(fdno, F_SETFD, FD_CLOEXEC); -- /* XXX W2DO? debug msg for inheirited fdno w/o FD_CLOEXEC */ -- } -+ rpmSetCloseOnExec(); - - if (scriptFd != NULL) { - int sfdno = Fileno(scriptFd); -diff --git a/luaext/lposix.c b/luaext/lposix.c -index 0a7c26c..5d7ad3c 100644 ---- a/luaext/lposix.c -+++ b/luaext/lposix.c -@@ -27,6 +27,7 @@ - #include <unistd.h> - #include <utime.h> - #include <rpm/rpmutil.h> -+#include "rpmio/rpmio_internal.h" - - #define MYNAME "posix" - #define MYVERSION MYNAME " library for " LUA_VERSION " / Nov 2003" -@@ -335,21 +336,11 @@ static int Pexec(lua_State *L) /** exec(path,[args]) */ - const char *path = luaL_checkstring(L, 1); - int i,n=lua_gettop(L); - char **argv; -- int flag, fdno, open_max; - - if (!have_forked) - return luaL_error(L, "exec not permitted in this context"); - -- open_max = sysconf(_SC_OPEN_MAX); -- if (open_max == -1) { -- open_max = 1024; -- } -- for (fdno = 3; fdno < open_max; fdno++) { -- flag = fcntl(fdno, F_GETFD); -- if (flag == -1 || (flag & FD_CLOEXEC)) -- continue; -- fcntl(fdno, F_SETFD, FD_CLOEXEC); -- } -+ rpmSetCloseOnExec(); - - argv = malloc((n+1)*sizeof(char*)); - if (argv==NULL) return luaL_error(L,"not enough memory"); -diff --git a/rpmio/rpmio.c b/rpmio/rpmio.c -index 0b90984..747bf3c 100644 ---- a/rpmio/rpmio.c -+++ b/rpmio/rpmio.c -@@ -1477,4 +1477,18 @@ void fdFiniDigest(FD_t fd, int hashalgo, - } - } - -+void rpmSetCloseOnExec(void) -+{ -+ int flag, fdno, open_max; - -+ open_max = sysconf(_SC_OPEN_MAX); -+ if (open_max == -1) { -+ open_max = 1024; -+ } -+ for (fdno = 3; fdno < open_max; fdno++) { -+ flag = fcntl(fdno, F_GETFD); -+ if (flag == -1 || (flag & FD_CLOEXEC)) -+ continue; -+ fcntl(fdno, F_SETFD, FD_CLOEXEC); -+ } -+} -diff --git a/rpmio/rpmio_internal.h b/rpmio/rpmio_internal.h -index 8c9f1a8..da39250 100644 ---- a/rpmio/rpmio_internal.h -+++ b/rpmio/rpmio_internal.h -@@ -37,6 +37,12 @@ void fdFiniDigest(FD_t fd, int hashalgo, - int rpmioSlurp(const char * fn, - uint8_t ** bp, ssize_t * blenp); - -+/** -+ * Set close-on-exec flag for all opened file descriptors, except -+ * stdin/stdout/stderr. -+ */ -+void rpmSetCloseOnExec(void); -+ - #ifdef __cplusplus - } - #endif --- -2.7.4 - diff --git a/meta-agl-profile-core/recipes-devtools/rpm/files/0002-Optimize-rpmSetCloseOnExec.patch b/meta-agl-profile-core/recipes-devtools/rpm/files/0002-Optimize-rpmSetCloseOnExec.patch deleted file mode 100644 index 9354dd6e0..000000000 --- a/meta-agl-profile-core/recipes-devtools/rpm/files/0002-Optimize-rpmSetCloseOnExec.patch +++ /dev/null @@ -1,102 +0,0 @@ -From 6f56aa01a357bbcf9401d79a378ae380f5f939d4 Mon Sep 17 00:00:00 2001 -From: Kir Kolyshkin <kolyshkin@gmail.com> -Date: Tue, 29 May 2018 17:52:56 -0700 -Subject: [PATCH 2/3] Optimize rpmSetCloseOnExec - -In case maximum number of open files limit is set too high, both -luaext/Pexec() and lib/doScriptExec() spend way too much time -trying to set FD_CLOEXEC flag for all those file descriptors, -resulting in severe increase of time it takes to execute say -rpm or dnf. - -This becomes increasingly noticeable when running with e.g. under -Docker, the reason being: - -> $ docker run fedora ulimit -n -> 1048576 - -One obvious fix is to use procfs to get the actual list of opened fds -and iterate over it. My quick-n-dirty benchmark shows the /proc approach -is about 10x faster than iterating through a list of just 1024 fds, -so it's an improvement even for default ulimit values. - -Note that the old method is still used in case /proc is not available. - -While at it, - - 1. fix the function by making sure we modify (rather than set) - the existing flags. As the only known flag is FD_CLOEXEC, - this change is currently purely aesthetical, but in case - other flags will appear it will become a real bug fix. - - 2. get rid of magic number 3; use STDERR_FILENO - -Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com> - -Fixes #444 - -(cherry picked from commit 5e6f05cd8dad6c1ee6bd1e6e43f176976c9c3416) ---- - rpmio/rpmio.c | 43 ++++++++++++++++++++++++++++++++++--------- - 1 file changed, 34 insertions(+), 9 deletions(-) - -diff --git a/rpmio/rpmio.c b/rpmio/rpmio.c -index 747bf3c..8148aa2 100644 ---- a/rpmio/rpmio.c -+++ b/rpmio/rpmio.c -@@ -1477,18 +1477,43 @@ void fdFiniDigest(FD_t fd, int hashalgo, - } - } - -+static void set_cloexec(int fd) -+{ -+ int flags = fcntl(fd, F_GETFD); -+ -+ if (flags == -1 || (flags & FD_CLOEXEC)) -+ return; -+ -+ fcntl(fd, F_SETFD, flags | FD_CLOEXEC); -+} -+ - void rpmSetCloseOnExec(void) - { -- int flag, fdno, open_max; -+ const int min_fd = STDERR_FILENO; /* don't touch stdin/out/err */ -+ int fd; -+ -+ DIR *dir = opendir("/proc/self/fd"); -+ if (dir == NULL) { /* /proc not available */ -+ /* iterate over all possible fds, might be slow */ -+ int open_max = sysconf(_SC_OPEN_MAX); -+ if (open_max == -1) -+ open_max = 1024; - -- open_max = sysconf(_SC_OPEN_MAX); -- if (open_max == -1) { -- open_max = 1024; -+ for (fd = min_fd + 1; fd < open_max; fd++) -+ set_cloexec(fd); -+ -+ return; - } -- for (fdno = 3; fdno < open_max; fdno++) { -- flag = fcntl(fdno, F_GETFD); -- if (flag == -1 || (flag & FD_CLOEXEC)) -- continue; -- fcntl(fdno, F_SETFD, FD_CLOEXEC); -+ -+ /* iterate over fds obtained from /proc */ -+ struct dirent *entry; -+ while ((entry = readdir(dir)) != NULL) { -+ fd = atoi(entry->d_name); -+ if (fd > min_fd) -+ set_cloexec(fd); - } -+ -+ closedir(dir); -+ -+ return; - } --- -2.7.4 - diff --git a/meta-agl-profile-core/recipes-devtools/rpm/files/0003-rpmSetCloseOnExec-use-getrlimit.patch b/meta-agl-profile-core/recipes-devtools/rpm/files/0003-rpmSetCloseOnExec-use-getrlimit.patch deleted file mode 100644 index d9b813ece..000000000 --- a/meta-agl-profile-core/recipes-devtools/rpm/files/0003-rpmSetCloseOnExec-use-getrlimit.patch +++ /dev/null @@ -1,55 +0,0 @@ -From 1f5438d677dca330642158ec0b1c0366c6a65725 Mon Sep 17 00:00:00 2001 -From: Kir Kolyshkin <kolyshkin@gmail.com> -Date: Tue, 29 May 2018 18:09:27 -0700 -Subject: [PATCH 3/3] rpmSetCloseOnExec: use getrlimit() - -In case /proc is not available to get the actual list of opened fds, -we fall back to iterating through the list of all possible fds. - -It is possible that during the course of the program execution the limit -on number of open file descriptors might be lowered, so using the -current limit, as returned by sysconf(_SC_OPEN_MAX), might omit some -fds. Therefore, it is better to use rlim_max from the structure -filled in by gertlimit(RLIMIT_NOFILE) to make sure we're checking -all fds. - -This slows down the function, but only in the case /proc is not -available, which should be rare in practice. - -Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com> -(cherry picked from commit 307e28b4cb08b05bc044482058eeebc9f59bb9a9) ---- - rpmio/rpmio.c | 10 +++++++++- - 1 file changed, 9 insertions(+), 1 deletion(-) - -diff --git a/rpmio/rpmio.c b/rpmio/rpmio.c -index 8148aa2..0698e53 100644 ---- a/rpmio/rpmio.c -+++ b/rpmio/rpmio.c -@@ -10,6 +10,7 @@ - #include <sys/personality.h> - #endif - #include <sys/utsname.h> -+#include <sys/resource.h> - - #include <rpm/rpmlog.h> - #include <rpm/rpmmacro.h> -@@ -1495,7 +1496,14 @@ void rpmSetCloseOnExec(void) - DIR *dir = opendir("/proc/self/fd"); - if (dir == NULL) { /* /proc not available */ - /* iterate over all possible fds, might be slow */ -- int open_max = sysconf(_SC_OPEN_MAX); -+ struct rlimit rl; -+ int open_max; -+ -+ if (getrlimit(RLIMIT_NOFILE, &rl) == 0 && rl.rlim_max != RLIM_INFINITY) -+ open_max = rl.rlim_max; -+ else -+ open_max = sysconf(_SC_OPEN_MAX); -+ - if (open_max == -1) - open_max = 1024; - --- -2.7.4 - diff --git a/meta-agl-profile-core/recipes-devtools/rpm/rpm_%.bbappend b/meta-agl-profile-core/recipes-devtools/rpm/rpm_%.bbappend deleted file mode 100644 index 1333a97c0..000000000 --- a/meta-agl-profile-core/recipes-devtools/rpm/rpm_%.bbappend +++ /dev/null @@ -1,7 +0,0 @@ -FILESEXTRAPATHS_append := ":${THISDIR}/files" - -SRC_URI_append = "\ - file://0001-Factor-out-and-unify-setting-CLOEXEC.patch \ - file://0002-Optimize-rpmSetCloseOnExec.patch \ - file://0003-rpmSetCloseOnExec-use-getrlimit.patch \ -" |