Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[XRay] Support generational buffers in FDR controller
Summary: This is an intermediary step in the full support for generational buffer management in the FDR runtime. This change makes the FDR controller aware of the new generation number in the buffers handed out by the BufferQueue type. In the process of making this change, we've realised that the cleanest way of ensuring that the backing store per generation is live while all the threads that need access to it will need reference counting to tie the backing store to the lifetime of all threads that have a handle on buffers associated with the memory. We also learn that we're missing the edge-case in the function exit handler's implementation where the first record being written into the buffer is a function exit, which is caught/fixed by the test for generational buffer management. We still haven't wired the controller into the FDR mode runtime, which will need the reference counting on the backing store implemented to ensure that we're being conservatively thread-safe with this approach. Depends on D52974. Reviewers: mboerger, eizan Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D53551 llvm-svn: 345445
- Loading branch information
1 parent
c8e781c
commit 1802478
Showing
2 changed files
with
80 additions
and
41 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters