Skip to content

[release/11.0-rc1] [CoreCLR] Protect exception object across funclet callbacks - #132532

Open
github-actions[bot] wants to merge 1 commit into
release/11.0-rc1from
backport/pr-132482-to-release/11.0-rc1
Open

[release/11.0-rc1] [CoreCLR] Protect exception object across funclet callbacks#132532
github-actions[bot] wants to merge 1 commit into
release/11.0-rc1from
backport/pr-132482-to-release/11.0-rc1

Conversation

@github-actions

Copy link
Copy Markdown
Contributor

Backport of #132482 to release/11.0-rc1

/cc @steveisok

Customer Impact

  • Customer reported
  • Found internally

[Select one or both of the boxes. Describe how this issue impacts customers, citing the expected and actual behaviors and scope of the issue. If customer-reported, provide the issue number.]

Regression

  • Yes
  • No

[If yes, specify when the regression was introduced. Provide the PR or commit if known.]

Testing

[How was the fix verified? How was the issue missed previously? What tests were added?]

Risk

[High/Medium/Low. Justify the indication by mentioning how risks were measured and addressed.]

IMPORTANT: If this backport is for a servicing release, please verify that:

  • For .NET 8 and .NET 9: The PR target branch is release/X.0-staging, not release/X.0.
  • For .NET 10+: The PR target branch is release/X.0 (no -staging suffix).

Package authoring no longer needed in .NET 9

IMPORTANT: Starting with .NET 9, you no longer need to edit a NuGet package's csproj to enable building and bump the version.
Keep in mind that we still need package authoring in .NET 8 and older versions.

Fixes #132462

## Summary

- Protect the exception `OBJECTREF` in `CallFilterFunclet` and
`CallCatchFunclet` while profiler, debugger, and ETW callbacks may
permit GC, through the subsequent funclet invocation.
- Extend the existing exception profiler test to exercise both filter
and catch funclet paths while exception monitoring is enabled.

## Testing

- Confirmed the regression test fail-fasts against the unfixed checked
runtime.
- Built CoreCLR checked successfully with no warnings or errors.
- Ran the targeted `ExceptionTest` against the fixed checked runtime; it
returned 100 and reported `PROFILER TEST PASSES`.

> [!NOTE]
> This description was generated with GitHub Copilot.

---------

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: d1145d75-6c1d-4d53-8793-ea41900a04ca
Copilot-Session: 6a0f5fb2-4a96-4a7e-8f6a-37bb262a1401
@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 3 pipeline(s).
13 pipeline(s) were filtered out due to trigger conditions.
There may be pipelines that require an authorized user to comment /azp run to run.

@github-actions github-actions Bot added the area-ExceptionHandling-coreclr only use for closed issues label Aug 19, 2026
@steveisok
steveisok requested a review from jkotas August 19, 2026 20:00
@steveisok steveisok added the Servicing-approved Approved for servicing release label Aug 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area-ExceptionHandling-coreclr only use for closed issues Servicing-approved Approved for servicing release

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants