Skip to content

Commit d743db3

Browse files
committed
m1n1.trace.agx: Add extra dumping around TVB control messages
Signed-off-by: Asahi Lina <[email protected]>
1 parent 8ae5c21 commit d743db3

1 file changed

Lines changed: 12 additions & 0 deletions

File tree

proxyclient/m1n1/trace/agx.py

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -404,6 +404,7 @@ def __init__(self, hv, devpath, verbose=False):
404404
self.redump = False
405405
self.skip_asc_tracing = True
406406
self.cmd_dump_dir = None
407+
self.buffer_mgr_map = {}
407408

408409
self.vmcnt = 0
409410
self.readlog = {}
@@ -722,6 +723,16 @@ def handle_ringmsg(self, msg):
722723
elif msg.queue_type == 0:
723724
self.handle_ta(wi)
724725
self.queue_ta = queue
726+
elif msg.__class__.__name__ == "GrowTVBMsg":
727+
addr = self.buffer_mgr_map.get(msg.bm_id, 0)
728+
if addr:
729+
info = BufferManagerInfo.parse_stream(self.get_stream(0, addr))
730+
self.log(f"BM info: {info}")
731+
elif msg.__class__.__name__ == "DC_GrowTVBAck":
732+
addr = self.buffer_mgr_map.get(msg.bm_id, 0)
733+
if addr:
734+
info = BufferManagerInfo.parse_stream(self.get_stream(0, addr))
735+
self.log(f"BM info: {info}")
725736
return True
726737

727738
def handle_event(self, msg):
@@ -802,6 +813,7 @@ def read(off, size):
802813
#chexdump(kread(wi0.addr, 0x600), print_fn=self.log)
803814
self.log(f" context_id = {context:#x}")
804815
self.dump_buffer_manager(wi0.buffer_mgr, kread, read)
816+
self.buffer_mgr_map[wi0.buffer_mgr_slot] = wi0.buffer_mgr_addr
805817
#self.log(f" unk_emptybuf @ {wi0.unk_emptybuf_addr:#x}:")
806818
#chexdump(kread(wi0.unk_emptybuf_addr, 0x1000), print_fn=self.log)
807819

0 commit comments

Comments
 (0)