| Submitter | rongqing.li@windriver.com |
|---|---|
| Date | Nov. 7, 2012, 5:57 a.m. |
| Message ID | <1352267865-3534-1-git-send-email-rongqing.li@windriver.com> |
| Download | mbox | patch |
| Permalink | /patch/38813/ |
| State | New, archived |
| Headers | show |
Comments
On Tue, Nov 6, 2012 at 10:57 PM, <rongqing.li@windriver.com> wrote: > 2. Disable parallel make install > apache2 supports parallel make install, before installation, > it will firstly call build/mkdir.sh to create needed directories. > build/mkdir.sh first checks if a directory exists or not, if not, > it will create this directory, when mkdir.sh is called by many > instances parallel, it will introduce race, namely the result of > checking says one directory does not exist, but when it tries to > mkdir, this directory has been created by other instance. > How much work would it be to change it to run 'mkdir -p' rather than build/mkdir.sh, e.g. via a variable in EXTRA_OEMAKE?
On 2012?11?08? 00:46, Chris Larson wrote: > On Tue, Nov 6, 2012 at 10:57 PM, <rongqing.li@windriver.com> wrote: > >> 2. Disable parallel make install >> apache2 supports parallel make install, before installation, >> it will firstly call build/mkdir.sh to create needed directories. >> build/mkdir.sh first checks if a directory exists or not, if not, >> it will create this directory, when mkdir.sh is called by many >> instances parallel, it will introduce race, namely the result of >> checking says one directory does not exist, but when it tries to >> mkdir, this directory has been created by other instance. >> > > How much work would it be to change it to run 'mkdir -p' rather than > build/mkdir.sh, e.g. via a variable in EXTRA_OEMAKE? > "mkdir -p", plus ignoring return result of mkdir should be worked, but it can not be passed in by variable in EXTRA_OEMAKE, maybe need a patch. Since this bug is hard to reproduce, so I simply disable the parallel install.
Patch
diff --git a/meta-webserver/recipes-httpd/apache2/apache2_2.4.2.bb b/meta-webserver/recipes-httpd/apache2/apache2_2.4.2.bb index af7840d..c484a19 100644 --- a/meta-webserver/recipes-httpd/apache2/apache2_2.4.2.bb +++ b/meta-webserver/recipes-httpd/apache2/apache2_2.4.2.bb @@ -52,6 +52,12 @@ EXTRA_OECONF = "--enable-ssl \ --enable-mpms-shared \ ac_cv_have_threadsafe_pollset=no" +PARALLEL_MAKEINST = "" + +PACKAGECONFIG = "${@base_contains('DISTRO_FEATURES', 'selinux', 'selinux', '', d)}" +PACKAGECONFIG[selinux] = "ac_cv_lib_selinux_is_selinux_enabled=yes, \ + ac_cv_lib_selinux_is_selinux_enabled=no, libselinux," + do_configure_prepend() { # FIXME: this hack is required to work around an issue with apr/apr-util # Can be removed when fixed in OE-Core (also revert --with-* options above)