Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Conversation

@lambdageek
Copy link
Member

@lambdageek lambdageek commented Apr 16, 2021

Handle EINTR for opendir/readdir/closedir.

Because of how thread aborts work, we must loop in managed.
A thread abort will break syscalls and return EINTR, but mono will not raise a
ThreadAbortException until a pinvoke returns.

(Despite the documentation, opendir/readdir/closedir sometimes return EINTR on
macOS Big Sur.)

Related to #20799

Bump corefx to mono/corefx@9174bbeb7e

@lambdageek
Copy link
Member Author

@monojenkins backport to 2020-02

@lambdageek lambdageek requested a review from marek-safar as a code owner April 17, 2021 15:00
@lambdageek lambdageek force-pushed the readdir-eintr branch 2 times, most recently from c5cf2a0 to 0e4248a Compare April 18, 2021 00:57
akoeplinger pushed a commit that referenced this pull request Apr 19, 2021
Bump to mono/corefx@38e9a93

Diff: mono/corefx@7c24bb0...38e9a93

Primarily CredScan fixes.

Bump before we do a backport to 2020-02 of #21016 which will need one more corefx bump
@lambdageek
Copy link
Member Author

@akoeplinger I'm not sure about the all profiles build. Says there's an API difference, but I don't think it's anything from this PR...

@lambdageek lambdageek closed this Apr 22, 2021
@lambdageek lambdageek reopened this Apr 22, 2021
lambdageek and others added 3 commits April 23, 2021 09:11
Handle EINTR for opendir/readdir/closedir.

Because of how thread aborts work, we must loop in managed.
A thread abort will break syscalls and return EINTR, but mono will not raise a
ThreadAbortException until a pinvoke returns.

(Despite the documentation, opendir/readdir/closedir sometimes return EINTR on
macOS Big Sur.)

Related to mono#20799
on mac it's in corlib, on unix and android it's in System, for some reason
@lambdageek
Copy link
Member Author

@monojenkins build

@akoeplinger
Copy link
Member

@monojenkins build failed

2 similar comments
@lambdageek
Copy link
Member Author

@monojenkins build failed

@lambdageek
Copy link
Member Author

@monojenkins build failed

@lambdageek lambdageek merged commit 4545a50 into mono:main Apr 29, 2021
@lambdageek lambdageek deleted the readdir-eintr branch April 29, 2021 13:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants