Simplifications and fixes to multicore systhreads implementation (0.5/3)#11390
Simplifications and fixes to multicore systhreads implementation (0.5/3)#11390gasche merged 3 commits intoocaml:trunkfrom
Conversation
|
Precheck running at https://ci.inria.fr/ocaml/job/precheck/729/ |
|
Precheck is OK. One unrelated failure with Omnios (will check separately) but Alpine, PPC32 and PPC64 are back. |
runtime/caml/domain.h
Outdated
|
|
||
| CAMLextern void caml_reset_domain_lock(void); | ||
| CAMLextern int caml_bt_is_in_blocking_section(void); | ||
| CAMLexport int caml_bt_is_self(void); |
There was a problem hiding this comment.
This fixes some of the Windows failures, but not all:
| CAMLexport int caml_bt_is_self(void); | |
| CAMLextern int caml_bt_is_self(void); |
There was a problem hiding this comment.
Ah, to expand - the Windows workers in Jenkins are running binutils 2.34, so don't surface the bug which this fixes. The other failure I'm seeing locally is in the tests/output-complete-obj/main.ml, but that doesn't appear to be this PR
There was a problem hiding this comment.
(indeed - the failure with tests/output-complete-obj/main.ml seems to be caused by binutils 2.38, which I updated to two days ago )
There was a problem hiding this comment.
Thanks for catching this. This is fixed now.
This behaviour was likely unintended given that caml_thread_yield runs signal handlers, which can execute arbitrary OCaml code.
c87319b to
03a311a
Compare
|
I have arranged that no further changes are needed with this PR, so I propose to go ahead. |
gasche
left a comment
There was a problem hiding this comment.
I'll approve based on:
- KC's and Engil's review of the previous PR #11271
- the fact thaI the INRIA CI is now happy
This will be trunk-only for now: let's wait to see where we are -- and to understand the cause of the bug -- before pushing things in 5.0.
Simplifications and fixes to multicore systhreads implementation (0.5/3) (cherry picked from commit 1ef52ed)
|
Backported to 5.0 as 42bf679. |
This contains commits from #11271 except the one that fails the test suite on Alpine.