aboutsummaryrefslogtreecommitdiff
path: root/src/video_core/host1x/syncpoint_manager.h
Commit message (Collapse)AuthorAgeFilesLines
* nx2: ignore syncpoint signals past the syncpoint tableTakoroka4 days1-2/+2
| | | | | | | | | | | | The 3D engine's sync method and the puller's fence action take a syncpoint id from the command list and signal it, but the syncpoint manager has 192 syncpoints and does not check the index. Command words read wrong (Splatoon Raiders on Linux runs 3D engine commands as puller methods 0x10-0x3F just before) made Maxwell3D signal a syncpoint past the table: SyncpointManager::Increment walked memory after its action lists as a list and crashed on a null link (SIGSEGV reading 0x10). Builds 49 and 50 both crashed this way under WSL. FenceManager now drops such signals with an error, for every engine that signals.
* host1x/syncpoint_manager: Eliminate unnecessary std::function constructionLioncash2022-11-291-4/+2
| | | | | We can just pass the function object through, and if it's a valid function, then it will automatically be converted.
* host1x/syncpoint_manager: Pass DeregisterAction() handle as const-refLioncash2022-11-291-3/+3
| | | | | | | | | The handle is only compared against and not modified in any way, so we can pass it by const reference. This also allows us to mark the respective parameters for DeregisterGuestAction() and DeregisterHostAction() as const references as well.
* General: address feedbackFernando Sahmkow2022-10-061-12/+12
|
* general: Format licenses as per SPDX guidelinesMorph2022-10-061-3/+2
|
* General: Fix clang format.Fernando Sahmkow2022-10-061-2/+2
|
* VideoCore: Refactor syncing.Fernando Sahmkow2022-10-061-0/+99