Please Khem, send these patches upstream first. Alex
On Wed, 17 Mar 2021 at 01:32, Khem Raj <[email protected]> wrote: > Fixes > > [YOCTO #14281] > > Signed-off-by: Khem Raj <[email protected]> > Cc: Andrei Gherzan <[email protected]> > --- > .../webkitgtk/musl-lower-stack-usage.patch | 51 +++++++++++++++++++ > meta/recipes-sato/webkit/webkitgtk_2.30.5.bb | 1 + > 2 files changed, 52 insertions(+) > create mode 100644 > meta/recipes-sato/webkit/webkitgtk/musl-lower-stack-usage.patch > > diff --git > a/meta/recipes-sato/webkit/webkitgtk/musl-lower-stack-usage.patch > b/meta/recipes-sato/webkit/webkitgtk/musl-lower-stack-usage.patch > new file mode 100644 > index 0000000000..3d66766d9a > --- /dev/null > +++ b/meta/recipes-sato/webkit/webkitgtk/musl-lower-stack-usage.patch > @@ -0,0 +1,51 @@ > +reduce thread stack and heap usage for javascriptcore on musl > + > +default sizes for musl are smaller compared to glibc, this matches > +to musl defaults, avoid stack overflow crashes in jscore > + > +Upstream-Status: Pending > +Signed-off-by: Khem Raj <[email protected]> > + > +--- a/Source/JavaScriptCore/runtime/OptionsList.h > ++++ b/Source/JavaScriptCore/runtime/OptionsList.h > +@@ -75,6 +75,18 @@ constexpr bool enableWebAssemblyStreamin > + // On instantiation of the first VM instance, the Options will be write > protected > + // and cannot be modified thereafter. > + > ++#if OS(LINUX) && !defined(__GLIBC__) > ++// non-glibc options on linux ( musl ) > ++constexpr unsigned jscMaxPerThreadStack = 80 * KB; > ++constexpr unsigned jscSoftReservedZoneSize = 32 * KB; > ++constexpr unsigned jscReservedZoneSize = 16 * KB; > ++#else > ++//default > ++constexpr unsigned jscMaxPerThreadStack = 4 * MB; > ++constexpr unsigned jscSoftReservedZoneSize = 128 * KB; > ++constexpr unsigned jscReservedZoneSize = 64 * KB; > ++#endif > ++ > + #define FOR_EACH_JSC_OPTION(v) \ > + v(Bool, useKernTCSM, defaultTCSMValue(), Normal, "Note: this needs > to go before other options since they depend on this value.") \ > + v(Bool, validateOptions, false, Normal, "crashes if mis-typed JSC > options were passed to the VM") \ > +@@ -90,9 +102,9 @@ constexpr bool enableWebAssemblyStreamin > + \ > + v(Bool, reportMustSucceedExecutableAllocations, false, Normal, > nullptr) \ > + \ > +- v(Unsigned, maxPerThreadStackUsage, 5 * MB, Normal, "Max allowed > stack usage by the VM") \ > +- v(Unsigned, softReservedZoneSize, 128 * KB, Normal, "A buffer > greater than reservedZoneSize that reserves space for stringifying > exceptions.") \ > +- v(Unsigned, reservedZoneSize, 64 * KB, Normal, "The amount of stack > space we guarantee to our clients (and to interal VM code that does not > call out to clients).") \ > ++ v(Unsigned, maxPerThreadStackUsage, jscMaxPerThreadStack, Normal, > "Max allowed stack usage by the VM") \ > ++ v(Unsigned, softReservedZoneSize, jscSoftReservedZoneSize, Normal, > "A buffer greater than reservedZoneSize that reserves space for > stringifying exceptions.") \ > ++ v(Unsigned, reservedZoneSize, jscReservedZoneSize, Normal, "The > amount of stack space we guarantee to our clients (and to interal VM code > that does not call out to clients).") \ > + \ > + v(Bool, crashOnDisallowedVMEntry, ASSERT_ENABLED, Normal, "Forces a > crash if we attempt to enter the VM when disallowed") \ > + v(Bool, crashIfCantAllocateJITMemory, false, Normal, nullptr) \ > +@@ -601,7 +613,7 @@ public: > + bool init(const char*); > + bool isInRange(unsigned); > + const char* rangeString() const { return (m_state > InitError) ? > m_rangeString : s_nullRangeStr; } > +- > ++ > + void dump(PrintStream& out) const; > + > + private: > diff --git a/meta/recipes-sato/webkit/webkitgtk_2.30.5.bb > b/meta/recipes-sato/webkit/webkitgtk_2.30.5.bb > index d0a41f48c7..36d33f550d 100644 > --- a/meta/recipes-sato/webkit/webkitgtk_2.30.5.bb > +++ b/meta/recipes-sato/webkit/webkitgtk_2.30.5.bb > @@ -20,6 +20,7 @@ SRC_URI = " > https://www.webkitgtk.org/releases/${BPN}-${PV}.tar.xz \ > file://include_xutil.patch \ > file://reduce-memory-overheads.patch \ > > file://0001-Extend-atomics-check-to-include-1-byte-CAS-test.patch \ > + file://musl-lower-stack-usage.patch \ > " > > SRC_URI[sha256sum] = > "7d0dab08e3c5ae07bec80b2822ef42e952765d5724cac86eb23999bfed5a7f1f" > -- > 2.31.0 > > > > >
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#149599): https://lists.openembedded.org/g/openembedded-core/message/149599 Mute This Topic: https://lists.openembedded.org/mt/81392614/21656 Group Owner: [email protected] Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
