Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[SR-15133] Crash when deallocating a never-resumed DispatchSourceTimer #604

Open
mickeyl opened this issue Aug 29, 2021 · 5 comments
Open

Comments

@mickeyl
Copy link

mickeyl commented Aug 29, 2021

Previous ID SR-15133
Radar rdar://problem/82535083
Original Reporter @mickeyl
Type Bug
Environment

macOS 12 beta, Xcode 13 (13A233).

Additional Detail from JIRA
Votes 0
Component/s libdispatch
Labels Bug, DispatchSourceTimer
Assignee None
Priority Medium

md5: 61e077b082169a945b058843ee5c3245

Issue Description:

Please consider the following example program which I have uploaded to

https://github.com/mickeyl/swift-bugs/tree/main/SR15133

Running it from within Xcode crashes with the following backtrace:

(lldb) bt

I suspect there is a memory management problem when the stored continuation in the `StreamCommand` gets deallocated due to `self.activeCommand = nil` while the continuation may continue to run in another task.

@mickeyl
Copy link
Author

mickeyl commented Aug 29, 2021

It also crashes when running on the command line with `swift run`, btw.

@typesanitizer
Copy link

@swift-ci create

@mickeyl
Copy link
Author

mickeyl commented Sep 21, 2021

Same in Xcode 13 release version.

@mickeyl
Copy link
Author

mickeyl commented Sep 23, 2021

On Linux w/ Swift version 5.6-dev (LLVM ca88d53176e346a, Swift a382f589a5ec230), this seems to work.

It still fails on macOS 12 with Swift development toolchain 2021-09-18.

@mickeyl
Copy link
Author

mickeyl commented Sep 27, 2021

After digging deeper, it seems that the actual crash happens when deallocating the `DispatchTimerSource`. Obviously `libdispatch` is to blame here and it has nothing to do with the continuation. I will adjust the metadata accordingly.

@swift-ci swift-ci transferred this issue from apple/swift-issues Apr 25, 2022
@shahmishal shahmishal transferred this issue from apple/swift May 5, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants