Просмотр того, какой дисплей используется в Surfaceflinger через GDB

У меня есть дамп coreflinger core, и я ищу повреждение кадрового буфера. Я использую Android JB 4.3 на плате Freescale с IMX6 и имею два дисплея, один внутренний LVDS и другой внешний монитор (подключенный через HDMI)

Я пытаюсь выяснить, какой дисплей связан с ядром - подключен ли поврежденный кадровый буфер, на который я смотрю, к внутреннему или к внешнему монитору.

В GDB я запускаю следующее:

(gdb) f 0x4014e6a0 in android::SurfaceFlinger::doComposition (this=0x406f1008) at frameworks/native/services/surfaceflinger/SurfaceFlinger.cpp:1031 1031 postFramebuffer(); (gdb) (gdb) p mDisplays.mVector $15 = (android::SortedVector, android::sp > >) { = { = { _vptr.VectorImpl = 0x4015a6e0, mStorage = 0x4099efa8, mCount = 2, mFlags = 0, mItemSize = 12 }, }, } (gdb)

Есть ли способ просмотреть элементы VectorImpl в GDB? Как узнать, какой элемент в настоящее время используется во фрейме основного стека?

Буду признателен за ваш совет.

0 ответов

Другие вопросы по тегам