(🍒) vulkan: Use std::atomic for seqno
Cherry-picked from aosp/2444542.
Original Commit Message:
> Instead of using gcc-internal atomic functions now we use std::atomic
> type instead. Verified that this produces the same assembly code when
> -O3 is enabled on gcc and clang (https://godbolt.org/z/drx5Y1Gjj).
> Besides we also pass the ProcessResource pointer to VkDecoder so that
> we can pass in other resources in ProcessResource.
Bug: fxbug.dev/120167
Change-Id: I1a5e1913ce9191665c74bdfed42b1c829f208728
diff --git a/stream-servers/RenderThread.cpp b/stream-servers/RenderThread.cpp
index 8fad5ef..76033fd 100644
--- a/stream-servers/RenderThread.cpp
+++ b/stream-servers/RenderThread.cpp
@@ -464,12 +464,8 @@
.healthMonitor = FrameBuffer::getFB()->getHealthMonitor(),
.metricsLogger = &metricsLogger,
};
- uint32_t* seqno = nullptr;
- if (processResources) {
- seqno = processResources->getSequenceNumberPtr();
- }
last = tInfo.m_vkInfo->m_vkDec.decode(readBuf.buf(), readBuf.validData(), ioStream,
- seqno, context);
+ processResources, context);
if (last > 0) {
if (!processResources) {
ERR("Processed some Vulkan packets without process resources created. "