Releases: ROCm/ROCgdb
Releases · ROCm/ROCgdb
ROCgdb ROCm release v4.5.0
gdb: clear last displayed sal in ~objfile if sal belongs to that objfile We get some random misbehaviors or crashes when doing: $./gdb -ex "set pag off" -q -nx --data-directory=data-directory bit_extract -ex "set breakpoint pending on" -ex "b bit_extract_kernel" -ex r -ex c -ex "b 90" What happens is: 1. When stopping on the breakpoint, we set the "last_displayed_symtab_info". last_displayed_symtab_info.m_symtab points to a symtab belonging to the GPU kernel objfile: (gdb) p last_displayed_symtab_info.m_symtab.compunit_symtab.objfile.original_name $1 = 0x557561d76fc0 "/home/master/smarchi/build/binutils-gdb/gdb/file:///home/master/smarchi/src/bit_extract/bit_extract#offset=8192&size=64496" 2. We continue until the end, the objfile gets destroyed. The objfile's obstack, containing the memory for the symtab saved as last_displayed_symtab_info.m_symtab is released, and eventually re-used for something else. Because no other stop at a location in the program is presented, last_displayed_symtab_info does not change. 3. When setting the breakpoint ("b 90"), last_displayed_symtab_info.m_symtab is looked up, which sometimes causes a crash, sometimes some weird behavior. Fix this by clearing last_displayed_symtab_info on objfile destruction if last_displayed_symtab_info points to a symtab belonging to the objfile being destroyed. This is similar to how we clear the current source symtab just above. Bug: https://ontrack-internal.amd.com/browse/SWDEV-304297 Change-Id: Id5c2cabb4e8202d884b44c01ee3656aca29b79e8
ROCgdb ROCm release v4.3.0
Correct typo in AMD GPU logging User Manual description The command name was "set the logging debugredirect" instead of "set logging debugredirect on". Change-Id: I9049f6788f291679c94eb3583902659fd55fca54
ROCgdb ROCm release v4.2.0
Document how to use Docker to restrict devices for AMD GPU Change-Id: Ic0f995fe427792770d59673f29d23a718b7c4a89
ROCgdb ROCm release v4.1.0
Flush the caches after inserting a pending breakpoint Updating the solibs may cause breakpoints to be inserted in device code objects. Currently, KFD only flushes the L2$ and I$ during CWSRs, so simply writting the breakpoint instruction to memory does not guarantee visibility from the device side, stale data could still be in I$ or L2$. As a workaround, we can force a CWSR, before resuming the host thread loading the code object, by requesting a thread list update. The ROCr runtime creates an internal queue to run the blit kernels so, after loading a device code object, we should always have at least one queue on each device. Suspending that queue to update the wave list causes the caches to be flushed. Change-Id: Ie6545960eb60f9d30ff7f9820662cf63be9a9af0
ROCgdb ROCm release v4.0.0
Document state of the info agents/queues/dispatches commands Change-Id: Ic62d8dda1297e494c9cff43774b1a632a0dcb87b
ROCgdb ROCm release v3.10.0
Restart the dbgapi when the first inferior is created Restarting the dbgapi resets all the global IDs making debugging run to run more deterministic. Change-Id: Ifea902c2956e7a9b2c3b927733bfe889a3b9c61c
ROCgdb ROCm release v3.9.0
Add info queues & info dispatches commands Change-Id: Ibd4a82368f7bba2ecdf6f10c9adbb7e571529b21
ROCgdb ROCm release v3.8.0
Fixed a bug with DW_OP_LLVM_select_bit_piece. The DW_OP_LLVM_select_bit_piece operation was adding a wrong bit offset to all it's pieces. This resulted in a wrong location description overall. Also, this operation pushed an uncompleted composite location description, but it should have pushed the completed one instead. Change-Id: Iab65f997d1db23b1cd23130d94f4b388f0e5f6f1
ROCgdb ROCm release v3.7.0
Error out if the debugger API cannot attach to the inferior Change-Id: Ie323c77649a73ee94be887b592b29e8fc1be426f
ROCgdb ROCm release v3.6.0beta
Update AMD GPU documentation - Update ROCm name. - Update options specified by -ggdb to remove those no longer used. - Remove limitation on CFI which is now produced. - Document restriction on HIP runtime code object loading that results in memory URIs unless the HSA_LOADER_ENABLE_MMAP_URI environment is used. - Remove restriction on flat-scratch and xnack_mask registers not being able to be accessed by name. Change-Id: I7e8dd2332c0ecb23a587d61ecf843f03edd0afcc