Avoiding system server dump stuck by pipe buffer full.
Problem: RenderThread blocked during dumping gfx info. Root Cause: Though dumpGfxInfo() uses an async binder invocation ,When the caller is system server, this invocation is not IPC that means it is not asynchronous, it will keep waiting if dumpGfxinfo output size larger than 16*4KB as reader thread start by transferpipe.go cannot be executed because write pipe waiting. Ensure this invocation is asynchronous to prevent writer waiting if buffer cannot be consumed. Solution: Send write action to handler thread so reader thread can be started to consume the data in buffer. Fix: 185806813 Test: dumpsys gfxinfo Change-Id: I37b1c1881a857970019eddfb762ae620e0353744
Loading
Please register or sign in to comment