Hi, At some point, c6x used different data structures for its DSBT-based loadmap. DSBT-based struct target_loadmap { /* Protocol version number, must be zero. */ Elf32_Word version; /* Pointer to the DSBT table, its size, and the DSBT index. */ unsigned *dsbt_table; unsigned dsbt_size, dsbt_index; /* Number of segments in this map. */ Elf32_Word nsegs; /* The actual memory map. */ struct target_loadseg segs[/*nsegs*/]; }; FDPIC-based struct target_loadmap { /* Protocol version number, must be zero. */ Elf32_Half version; /* Number of segments in this map. */ Elf32_Half nsegs; /* The actual memory map. */ struct target_loadseg segs[/*nsegs*/]; }; We shared a little bit of code with FDPIC-based targets though... struct target_loadseg { /* Core address to which the segment is mapped. */ Elf32_Addr addr; /* VMA recorded in the program header. */ Elf32_Addr p_vaddr; /* Size of this segment in memory. */ Elf32_Word p_memsz; }; Things have changed, and c6x is now using the exact same data structures as FDPIC-based targets in uClibc. Please refer to http://lists.uclibc.org/pipermail/uclibc/2013-May/047789.html for the uClibc changes that led to this. Mark Salter, the author of the uClibc change, has agreed with the solution i proposed: http://lists.uclibc.org/pipermail/uclibc/2013-May/047790.html. It is all good, but we've been conditionalizing the c6x-specific target_loadmap data structure based on the presence of PT_GETDSBT. This has always been defined in uClibc and, since Mark's change, it doesn't work as a hint of whether to use the new or the old target_loadmap data structure anymore. Therefore we will/already have a potential problem with backwards compatibility. Bernhard has stated that backwards compatibility on uClibc's side is not a problem: http://lists.uclibc.org/pipermail/uclibc/2013-June/047801.html. With all that exposed, my proposed change to gdbserver is to drop all the DSBT-specific bits, remove their definitions and explicitly use FDPIC definitions instead, making things a little bit cleaner. In the following patch i also changed the code slightly to stop defining linux_read_loadmap to NULL and i switched to explicitly setting the target hook to NULL in the absence of the required definition. What do you think? Yao? Mike? Luis