public inbox for openembedded-core@lists.openembedded.org
 help / color / mirror / Atom feed
* [dunfell][PATCH] icu: backport fix for rare random genrb segmentation fault
@ 2021-02-16 23:01 Martin Jansa
  2021-02-16 23:33 ` [OE-core] " Khem Raj
  0 siblings, 1 reply; 7+ messages in thread
From: Martin Jansa @ 2021-02-16 23:01 UTC (permalink / raw)
  To: openembedded-core; +Cc: Martin Jansa

* sometimes I've seen it also reporting "Bus error" instead of segmentation fault

* upstream bug report:
  https://unicode-org.atlassian.net/browse/ICU-21175

* on 80 core machine it failed 11 times in 1000 rebuilds of icu in various files:
  icu.019.stderr.compile:make[1]: *** [out/build/icudt66l/windowsZones.res] Segmentation fault
  icu.035.stderr.compile:make[1]: *** [out/build/icudt66l/supplementalData.res] Segmentation fault
  icu.095.stderr.compile:make[1]: *** [out/build/icudt66l/plurals.res] Segmentation fault
  icu.116.stderr.compile:make[1]: *** [out/build/icudt66l/curr/supplementalData.res] Segmentation fault
  icu.313.stderr.compile:make[1]: *** [out/build/icudt66l/supplementalData.res] Segmentation fault
  icu.415.stderr.compile:make[1]: *** [out/build/icudt66l/supplementalData.res] Segmentation fault
  icu.476.stderr.compile:make[1]: *** [out/build/icudt66l/metadata.res] Segmentation fault
  icu.495.stderr.compile:make[1]: *** [out/build/icudt66l/supplementalData.res] Segmentation fault
  icu.496.stderr.compile:make[1]: *** [out/build/icudt66l/supplementalData.res] Segmentation fault
  icu.505.stderr.compile:make[1]: *** [out/build/icudt66l/pluralRanges.res] Segmentation fault
  icu.756.stderr.compile:make[1]: *** [out/build/icudt66l/numberingSystems.res] Segmentation fault

* apply 0001-Fix-big-endian-build.patch in do_patch like this new patch

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
---
 ...cnvalias-as-a-dependency-of-misc_res.patch | 24 +++++++++++++++++++
 meta/recipes-support/icu/icu_66.1.bb          |  4 ++--
 2 files changed, 26 insertions(+), 2 deletions(-)
 create mode 100644 meta/recipes-support/icu/icu/0002-ICU-21175-Add-cnvalias-as-a-dependency-of-misc_res.patch

diff --git a/meta/recipes-support/icu/icu/0002-ICU-21175-Add-cnvalias-as-a-dependency-of-misc_res.patch b/meta/recipes-support/icu/icu/0002-ICU-21175-Add-cnvalias-as-a-dependency-of-misc_res.patch
new file mode 100644
index 0000000000..d7ddf33bce
--- /dev/null
+++ b/meta/recipes-support/icu/icu/0002-ICU-21175-Add-cnvalias-as-a-dependency-of-misc_res.patch
@@ -0,0 +1,24 @@
+From f2bc064e0d70ac068de4539d069bfab6cdccc48d Mon Sep 17 00:00:00 2001
+From: "Shane F. Carr" <shane@unicode.org>
+Date: Fri, 10 Jul 2020 14:28:22 -0500
+Subject: [PATCH] ICU-21175 Add cnvalias as a dependency of misc_res
+
+Upstream-Status: Backport [https://github.com/unicode-org/icu/commit/ee2d8b01034c3101de2bd58f9328daa076995e9e]
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+---
+ data/BUILDRULES.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/data/BUILDRULES.py b/data/BUILDRULES.py
+index 2338afd1f7..63b6e09273 100644
+--- a/data/BUILDRULES.py
++++ b/data/BUILDRULES.py
+@@ -361,7 +361,7 @@ def generate_misc(config, io, common_vars):
+         RepeatedExecutionRequest(
+             name = "misc_res",
+             category = "misc",
+-            dep_targets = [],
++            dep_targets = [DepTarget("cnvalias")], # ICU-21175
+             input_files = input_files,
+             output_files = output_files,
+             tool = IcuTool("genrb"),
diff --git a/meta/recipes-support/icu/icu_66.1.bb b/meta/recipes-support/icu/icu_66.1.bb
index 08254648e4..6ba88595df 100644
--- a/meta/recipes-support/icu/icu_66.1.bb
+++ b/meta/recipes-support/icu/icu_66.1.bb
@@ -21,10 +21,11 @@ BASE_SRC_URI = "https://github.com/unicode-org/icu/releases/download/release-${I
 DATA_SRC_URI = "https://github.com/unicode-org/icu/releases/download/release-${ICU_FOLDER}/icu4c-${ICU_PV}-data.zip"
 SRC_URI = "${BASE_SRC_URI};name=code \
            ${DATA_SRC_URI};name=data \
+           file://0001-Fix-big-endian-build.patch;patchdir=${WORKDIR} \
+           file://0002-ICU-21175-Add-cnvalias-as-a-dependency-of-misc_res.patch;patchdir=${WORKDIR} \
            file://filter.json \
            file://icu-pkgdata-large-cmd.patch \
            file://fix-install-manx.patch \
-           file://0001-Fix-big-endian-build.patch;apply=no \
            file://0001-icu-Added-armeb-support.patch \
            file://CVE-2020-10531.patch \
            "
@@ -47,7 +48,6 @@ do_make_icudata_class-target () {
     cd ${S}
     rm -rf data
     cp -a ${WORKDIR}/data .
-    patch -p1 < ${WORKDIR}/0001-Fix-big-endian-build.patch
     ${@bb.utils.contains('PACKAGECONFIG', 'make-icudata', '', 'exit 0', d)}
     AR='${BUILD_AR}' \
     CC='${BUILD_CC}' \
-- 
2.27.0


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

* Re: [OE-core] [dunfell][PATCH] icu: backport fix for rare random genrb segmentation fault
  2021-02-16 23:01 [dunfell][PATCH] icu: backport fix for rare random genrb segmentation fault Martin Jansa
@ 2021-02-16 23:33 ` Khem Raj
  2021-02-16 23:53   ` Martin Jansa
  0 siblings, 1 reply; 7+ messages in thread
From: Khem Raj @ 2021-02-16 23:33 UTC (permalink / raw)
  To: Martin Jansa; +Cc: Patches and discussions about the oe-core layer

On Tue, Feb 16, 2021 at 3:01 PM Martin Jansa <Martin.Jansa@gmail.com> wrote:
>
> * sometimes I've seen it also reporting "Bus error" instead of segmentation fault
>
> * upstream bug report:
>   https://unicode-org.atlassian.net/browse/ICU-21175
>
> * on 80 core machine it failed 11 times in 1000 rebuilds of icu in various files:
>   icu.019.stderr.compile:make[1]: *** [out/build/icudt66l/windowsZones.res] Segmentation fault
>   icu.035.stderr.compile:make[1]: *** [out/build/icudt66l/supplementalData.res] Segmentation fault
>   icu.095.stderr.compile:make[1]: *** [out/build/icudt66l/plurals.res] Segmentation fault
>   icu.116.stderr.compile:make[1]: *** [out/build/icudt66l/curr/supplementalData.res] Segmentation fault
>   icu.313.stderr.compile:make[1]: *** [out/build/icudt66l/supplementalData.res] Segmentation fault
>   icu.415.stderr.compile:make[1]: *** [out/build/icudt66l/supplementalData.res] Segmentation fault
>   icu.476.stderr.compile:make[1]: *** [out/build/icudt66l/metadata.res] Segmentation fault
>   icu.495.stderr.compile:make[1]: *** [out/build/icudt66l/supplementalData.res] Segmentation fault
>   icu.496.stderr.compile:make[1]: *** [out/build/icudt66l/supplementalData.res] Segmentation fault
>   icu.505.stderr.compile:make[1]: *** [out/build/icudt66l/pluralRanges.res] Segmentation fault
>   icu.756.stderr.compile:make[1]: *** [out/build/icudt66l/numberingSystems.res] Segmentation fault
>
> * apply 0001-Fix-big-endian-build.patch in do_patch like this new patch
>
> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
> ---
>  ...cnvalias-as-a-dependency-of-misc_res.patch | 24 +++++++++++++++++++
>  meta/recipes-support/icu/icu_66.1.bb          |  4 ++--
>  2 files changed, 26 insertions(+), 2 deletions(-)
>  create mode 100644 meta/recipes-support/icu/icu/0002-ICU-21175-Add-cnvalias-as-a-dependency-of-misc_res.patch
>
> diff --git a/meta/recipes-support/icu/icu/0002-ICU-21175-Add-cnvalias-as-a-dependency-of-misc_res.patch b/meta/recipes-support/icu/icu/0002-ICU-21175-Add-cnvalias-as-a-dependency-of-misc_res.patch
> new file mode 100644
> index 0000000000..d7ddf33bce
> --- /dev/null
> +++ b/meta/recipes-support/icu/icu/0002-ICU-21175-Add-cnvalias-as-a-dependency-of-misc_res.patch
> @@ -0,0 +1,24 @@
> +From f2bc064e0d70ac068de4539d069bfab6cdccc48d Mon Sep 17 00:00:00 2001
> +From: "Shane F. Carr" <shane@unicode.org>
> +Date: Fri, 10 Jul 2020 14:28:22 -0500
> +Subject: [PATCH] ICU-21175 Add cnvalias as a dependency of misc_res
> +
> +Upstream-Status: Backport [https://github.com/unicode-org/icu/commit/ee2d8b01034c3101de2bd58f9328daa076995e9e]
> +Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
> +---
> + data/BUILDRULES.py | 2 +-
> + 1 file changed, 1 insertion(+), 1 deletion(-)
> +
> +diff --git a/data/BUILDRULES.py b/data/BUILDRULES.py
> +index 2338afd1f7..63b6e09273 100644
> +--- a/data/BUILDRULES.py
> ++++ b/data/BUILDRULES.py
> +@@ -361,7 +361,7 @@ def generate_misc(config, io, common_vars):
> +         RepeatedExecutionRequest(
> +             name = "misc_res",
> +             category = "misc",
> +-            dep_targets = [],
> ++            dep_targets = [DepTarget("cnvalias")], # ICU-21175
> +             input_files = input_files,
> +             output_files = output_files,
> +             tool = IcuTool("genrb"),
> diff --git a/meta/recipes-support/icu/icu_66.1.bb b/meta/recipes-support/icu/icu_66.1.bb
> index 08254648e4..6ba88595df 100644
> --- a/meta/recipes-support/icu/icu_66.1.bb
> +++ b/meta/recipes-support/icu/icu_66.1.bb
> @@ -21,10 +21,11 @@ BASE_SRC_URI = "https://github.com/unicode-org/icu/releases/download/release-${I
>  DATA_SRC_URI = "https://github.com/unicode-org/icu/releases/download/release-${ICU_FOLDER}/icu4c-${ICU_PV}-data.zip"
>  SRC_URI = "${BASE_SRC_URI};name=code \
>             ${DATA_SRC_URI};name=data \
> +           file://0001-Fix-big-endian-build.patch;patchdir=${WORKDIR} \

why this change ?

> +           file://0002-ICU-21175-Add-cnvalias-as-a-dependency-of-misc_res.patch;patchdir=${WORKDIR} \
>             file://filter.json \
>             file://icu-pkgdata-large-cmd.patch \
>             file://fix-install-manx.patch \
> -           file://0001-Fix-big-endian-build.patch;apply=no \
>             file://0001-icu-Added-armeb-support.patch \
>             file://CVE-2020-10531.patch \
>             "
> @@ -47,7 +48,6 @@ do_make_icudata_class-target () {
>      cd ${S}
>      rm -rf data
>      cp -a ${WORKDIR}/data .
> -    patch -p1 < ${WORKDIR}/0001-Fix-big-endian-build.patch
>      ${@bb.utils.contains('PACKAGECONFIG', 'make-icudata', '', 'exit 0', d)}
>      AR='${BUILD_AR}' \
>      CC='${BUILD_CC}' \
> --
> 2.27.0
>
>
> 
>

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

* Re: [OE-core] [dunfell][PATCH] icu: backport fix for rare random genrb segmentation fault
  2021-02-16 23:33 ` [OE-core] " Khem Raj
@ 2021-02-16 23:53   ` Martin Jansa
  2021-02-17  0:11     ` Khem Raj
  0 siblings, 1 reply; 7+ messages in thread
From: Martin Jansa @ 2021-02-16 23:53 UTC (permalink / raw)
  To: Khem Raj; +Cc: Patches and discussions about the oe-core layer

[-- Attachment #1: Type: text/plain, Size: 1276 bytes --]

On Tue, Feb 16, 2021 at 3:33 PM Khem Raj <raj.khem@gmail.com> wrote:

> > index 08254648e4..6ba88595df 100644
> > --- a/meta/recipes-support/icu/icu_66.1.bb
> > +++ b/meta/recipes-support/icu/icu_66.1.bb
> > @@ -21,10 +21,11 @@ BASE_SRC_URI = "
> https://github.com/unicode-org/icu/releases/download/release-${I
> >  DATA_SRC_URI = "
> https://github.com/unicode-org/icu/releases/download/release-${ICU_FOLDER}/icu4c-${ICU_PV}-data.zip
> "
> >  SRC_URI = "${BASE_SRC_URI};name=code \
> >             ${DATA_SRC_URI};name=data \
> > +           file://0001-Fix-big-endian-build.patch;patchdir=${WORKDIR} \
>
 > +
 file://0002-ICU-21175-Add-cnvalias-as-a-dependency-of-misc_res.patch;patchdir=${WORKDIR}
\

>
> why this change ?
>

Because both these patches need to be applied on ${WORKDIR}/data directory
and doing it here provides slightly better error message when the patch
doesn't apply (e.g. in this case ${WORKDIR}/data is using dos line endings,
but I was preparing the patch in git repo where it's using unix line
endings as expected) and the patch call failing in
do_make_icudata_class-target is more confusing than usual do_patch failure.

Was there any reason to apply this fix only for target builds? I haven't
found any.

Cheers,

[-- Attachment #2: Type: text/html, Size: 2272 bytes --]

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

* Re: [OE-core] [dunfell][PATCH] icu: backport fix for rare random genrb segmentation fault
  2021-02-16 23:53   ` Martin Jansa
@ 2021-02-17  0:11     ` Khem Raj
  2021-02-17  2:08       ` Martin Jansa
  0 siblings, 1 reply; 7+ messages in thread
From: Khem Raj @ 2021-02-17  0:11 UTC (permalink / raw)
  To: Martin Jansa; +Cc: Patches and discussions about the oe-core layer

[-- Attachment #1: Type: text/plain, Size: 1509 bytes --]

On Tue, Feb 16, 2021 at 3:53 PM Martin Jansa <martin.jansa@gmail.com> wrote:

>
>
> On Tue, Feb 16, 2021 at 3:33 PM Khem Raj <raj.khem@gmail.com> wrote:
>
>> > index 08254648e4..6ba88595df 100644
>> > --- a/meta/recipes-support/icu/icu_66.1.bb
>> > +++ b/meta/recipes-support/icu/icu_66.1.bb
>> > @@ -21,10 +21,11 @@ BASE_SRC_URI = "
>> https://github.com/unicode-org/icu/releases/download/release-${I
>> >  DATA_SRC_URI = "
>> https://github.com/unicode-org/icu/releases/download/release-${ICU_FOLDER}/icu4c-${ICU_PV}-data.zip
>> "
>> >  SRC_URI = "${BASE_SRC_URI};name=code \
>> >             ${DATA_SRC_URI};name=data \
>> > +           file://0001-Fix-big-endian-build.patch;patchdir=${WORKDIR} \
>>
>  > +
>  file://0002-ICU-21175-Add-cnvalias-as-a-dependency-of-misc_res.patch;patchdir=${WORKDIR}
> \
>
>>
>> why this change ?
>>
>
> Because both these patches need to be applied on ${WORKDIR}/data directory
> and doing it here provides slightly better error message when the patch
> doesn't apply (e.g. in this case ${WORKDIR}/data is using dos line endings,
> but I was preparing the patch in git repo where it's using unix line
> endings as expected) and the patch call failing in
> do_make_icudata_class-target is more confusing than usual do_patch failure.
>
> Was there any reason to apply this fix only for target builds? I haven't
> found any.
>

Generally it was done so it applied on latest data which may be regenerated
during build

>
> Cheers,
>

[-- Attachment #2: Type: text/html, Size: 2963 bytes --]

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

* Re: [OE-core] [dunfell][PATCH] icu: backport fix for rare random genrb segmentation fault
  2021-02-17  0:11     ` Khem Raj
@ 2021-02-17  2:08       ` Martin Jansa
  2021-02-19 23:16         ` Khem Raj
  0 siblings, 1 reply; 7+ messages in thread
From: Martin Jansa @ 2021-02-17  2:08 UTC (permalink / raw)
  To: Khem Raj; +Cc: Patches and discussions about the oe-core layer

[-- Attachment #1: Type: text/plain, Size: 2319 bytes --]

> Generally it was done so it applied on latest data which may be
regenerated during build

Maybe I'm missing something, but
https://git.openembedded.org/openembedded-core/commit/?id=5e5be67744d7ddf5a9ac433ecba02f697a84a325
adds make_icudata task after do_patch and it was creating a copy from
${WORKDIR}/data and then patching it, if it's already patched by do_patch
task, then the patched data directory is being used even if the
make_icudata gets re-executed during build.

So this IMHO shouldn't have any impact on behavior, except applying the
patch in do_patch instead of delaying (and possibly re-applying it when
re-executed) inside make_icudata task.

On Tue, Feb 16, 2021 at 4:11 PM Khem Raj <raj.khem@gmail.com> wrote:

>
>
> On Tue, Feb 16, 2021 at 3:53 PM Martin Jansa <martin.jansa@gmail.com>
> wrote:
>
>>
>>
>> On Tue, Feb 16, 2021 at 3:33 PM Khem Raj <raj.khem@gmail.com> wrote:
>>
>>> > index 08254648e4..6ba88595df 100644
>>> > --- a/meta/recipes-support/icu/icu_66.1.bb
>>> > +++ b/meta/recipes-support/icu/icu_66.1.bb
>>> > @@ -21,10 +21,11 @@ BASE_SRC_URI = "
>>> https://github.com/unicode-org/icu/releases/download/release-${I
>>> >  DATA_SRC_URI = "
>>> https://github.com/unicode-org/icu/releases/download/release-${ICU_FOLDER}/icu4c-${ICU_PV}-data.zip
>>> "
>>> >  SRC_URI = "${BASE_SRC_URI};name=code \
>>> >             ${DATA_SRC_URI};name=data \
>>> > +           file://0001-Fix-big-endian-build.patch;patchdir=${WORKDIR}
>>> \
>>>
>>  > +
>>  file://0002-ICU-21175-Add-cnvalias-as-a-dependency-of-misc_res.patch;patchdir=${WORKDIR}
>> \
>>
>>>
>>> why this change ?
>>>
>>
>> Because both these patches need to be applied on ${WORKDIR}/data
>> directory and doing it here provides slightly better error message when the
>> patch doesn't apply (e.g. in this case ${WORKDIR}/data is using dos line
>> endings, but I was preparing the patch in git repo where it's using unix
>> line endings as expected) and the patch call failing in
>> do_make_icudata_class-target is more confusing than usual do_patch failure.
>>
>> Was there any reason to apply this fix only for target builds? I haven't
>> found any.
>>
>
> Generally it was done so it applied on latest data which may be
> regenerated during build
>
>>
>> Cheers,
>>
>

[-- Attachment #2: Type: text/html, Size: 4229 bytes --]

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

* Re: [OE-core] [dunfell][PATCH] icu: backport fix for rare random genrb segmentation fault
  2021-02-17  2:08       ` Martin Jansa
@ 2021-02-19 23:16         ` Khem Raj
  2021-02-19 23:21           ` Steve Sakoman
  0 siblings, 1 reply; 7+ messages in thread
From: Khem Raj @ 2021-02-19 23:16 UTC (permalink / raw)
  To: Martin Jansa; +Cc: Patches and discussions about the oe-core layer

After discussing with Martin offline and also his test reports
indicate that we are not getting worse with this patch. So I am
comfortable backporting it to dunfell.

On Tue, Feb 16, 2021 at 6:08 PM Martin Jansa <martin.jansa@gmail.com> wrote:
>
> > Generally it was done so it applied on latest data which may be regenerated during build
>
> Maybe I'm missing something, but
> https://git.openembedded.org/openembedded-core/commit/?id=5e5be67744d7ddf5a9ac433ecba02f697a84a325
> adds make_icudata task after do_patch and it was creating a copy from ${WORKDIR}/data and then patching it, if it's already patched by do_patch task, then the patched data directory is being used even if the make_icudata gets re-executed during build.
>
> So this IMHO shouldn't have any impact on behavior, except applying the patch in do_patch instead of delaying (and possibly re-applying it when re-executed) inside make_icudata task.
>
> On Tue, Feb 16, 2021 at 4:11 PM Khem Raj <raj.khem@gmail.com> wrote:
>>
>>
>>
>> On Tue, Feb 16, 2021 at 3:53 PM Martin Jansa <martin.jansa@gmail.com> wrote:
>>>
>>>
>>>
>>> On Tue, Feb 16, 2021 at 3:33 PM Khem Raj <raj.khem@gmail.com> wrote:
>>>>
>>>> > index 08254648e4..6ba88595df 100644
>>>> > --- a/meta/recipes-support/icu/icu_66.1.bb
>>>> > +++ b/meta/recipes-support/icu/icu_66.1.bb
>>>> > @@ -21,10 +21,11 @@ BASE_SRC_URI = "https://github.com/unicode-org/icu/releases/download/release-${I
>>>> >  DATA_SRC_URI = "https://github.com/unicode-org/icu/releases/download/release-${ICU_FOLDER}/icu4c-${ICU_PV}-data.zip"
>>>> >  SRC_URI = "${BASE_SRC_URI};name=code \
>>>> >             ${DATA_SRC_URI};name=data \
>>>> > +           file://0001-Fix-big-endian-build.patch;patchdir=${WORKDIR} \
>>>
>>>  > +           file://0002-ICU-21175-Add-cnvalias-as-a-dependency-of-misc_res.patch;patchdir=${WORKDIR} \
>>>>
>>>>
>>>> why this change ?
>>>
>>>
>>> Because both these patches need to be applied on ${WORKDIR}/data directory and doing it here provides slightly better error message when the patch doesn't apply (e.g. in this case ${WORKDIR}/data is using dos line endings, but I was preparing the patch in git repo where it's using unix line endings as expected) and the patch call failing in do_make_icudata_class-target is more confusing than usual do_patch failure.
>>>
>>> Was there any reason to apply this fix only for target builds? I haven't found any.
>>
>>
>> Generally it was done so it applied on latest data which may be regenerated during build
>>>
>>>
>>> Cheers,

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

* Re: [OE-core] [dunfell][PATCH] icu: backport fix for rare random genrb segmentation fault
  2021-02-19 23:16         ` Khem Raj
@ 2021-02-19 23:21           ` Steve Sakoman
  0 siblings, 0 replies; 7+ messages in thread
From: Steve Sakoman @ 2021-02-19 23:21 UTC (permalink / raw)
  To: Khem Raj, Martin Jansa; +Cc: Patches and discussions about the oe-core layer

On Fri, Feb 19, 2021 at 1:16 PM Khem Raj <raj.khem@gmail.com> wrote:
>
> After discussing with Martin offline and also his test reports
> indicate that we are not getting worse with this patch. So I am
> comfortable backporting it to dunfell.

Thanks!  I'll add this to my patch queue.

Steve

> On Tue, Feb 16, 2021 at 6:08 PM Martin Jansa <martin.jansa@gmail.com> wrote:
> >
> > > Generally it was done so it applied on latest data which may be regenerated during build
> >
> > Maybe I'm missing something, but
> > https://git.openembedded.org/openembedded-core/commit/?id=5e5be67744d7ddf5a9ac433ecba02f697a84a325
> > adds make_icudata task after do_patch and it was creating a copy from ${WORKDIR}/data and then patching it, if it's already patched by do_patch task, then the patched data directory is being used even if the make_icudata gets re-executed during build.
> >
> > So this IMHO shouldn't have any impact on behavior, except applying the patch in do_patch instead of delaying (and possibly re-applying it when re-executed) inside make_icudata task.
> >
> > On Tue, Feb 16, 2021 at 4:11 PM Khem Raj <raj.khem@gmail.com> wrote:
> >>
> >>
> >>
> >> On Tue, Feb 16, 2021 at 3:53 PM Martin Jansa <martin.jansa@gmail.com> wrote:
> >>>
> >>>
> >>>
> >>> On Tue, Feb 16, 2021 at 3:33 PM Khem Raj <raj.khem@gmail.com> wrote:
> >>>>
> >>>> > index 08254648e4..6ba88595df 100644
> >>>> > --- a/meta/recipes-support/icu/icu_66.1.bb
> >>>> > +++ b/meta/recipes-support/icu/icu_66.1.bb
> >>>> > @@ -21,10 +21,11 @@ BASE_SRC_URI = "https://github.com/unicode-org/icu/releases/download/release-${I
> >>>> >  DATA_SRC_URI = "https://github.com/unicode-org/icu/releases/download/release-${ICU_FOLDER}/icu4c-${ICU_PV}-data.zip"
> >>>> >  SRC_URI = "${BASE_SRC_URI};name=code \
> >>>> >             ${DATA_SRC_URI};name=data \
> >>>> > +           file://0001-Fix-big-endian-build.patch;patchdir=${WORKDIR} \
> >>>
> >>>  > +           file://0002-ICU-21175-Add-cnvalias-as-a-dependency-of-misc_res.patch;patchdir=${WORKDIR} \
> >>>>
> >>>>
> >>>> why this change ?
> >>>
> >>>
> >>> Because both these patches need to be applied on ${WORKDIR}/data directory and doing it here provides slightly better error message when the patch doesn't apply (e.g. in this case ${WORKDIR}/data is using dos line endings, but I was preparing the patch in git repo where it's using unix line endings as expected) and the patch call failing in do_make_icudata_class-target is more confusing than usual do_patch failure.
> >>>
> >>> Was there any reason to apply this fix only for target builds? I haven't found any.
> >>
> >>
> >> Generally it was done so it applied on latest data which may be regenerated during build
> >>>
> >>>
> >>> Cheers,
>
> 
>

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

end of thread, other threads:[~2021-02-19 23:22 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-02-16 23:01 [dunfell][PATCH] icu: backport fix for rare random genrb segmentation fault Martin Jansa
2021-02-16 23:33 ` [OE-core] " Khem Raj
2021-02-16 23:53   ` Martin Jansa
2021-02-17  0:11     ` Khem Raj
2021-02-17  2:08       ` Martin Jansa
2021-02-19 23:16         ` Khem Raj
2021-02-19 23:21           ` Steve Sakoman

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