gdb/linux-nat: add pid parameter to linux_proc_xfer_memory_partial

Add a pid parameter to linux_proc_xfer_memory_partial, making the
inferior_ptid reference bubble up close to the target_ops::xfer_partial
boundary.  No behavior change expected.

Change-Id: I58171b00ee1bba1ea22efdbb5dcab8b1ab3aac4c
This commit is contained in:
Simon Marchi 2022-11-25 16:27:15 -05:00
parent f8baaa2b0b
commit f9f593ddb2

View file

@ -3667,8 +3667,9 @@ linux_nat_xfer_osdata (enum target_object object,
ULONGEST *xfered_len);
static enum target_xfer_status
linux_proc_xfer_memory_partial (gdb_byte *readbuf, const gdb_byte *writebuf,
ULONGEST offset, LONGEST len, ULONGEST *xfered_len);
linux_proc_xfer_memory_partial (int pid, gdb_byte *readbuf,
const gdb_byte *writebuf, ULONGEST offset,
LONGEST len, ULONGEST *xfered_len);
enum target_xfer_status
linux_nat_target::xfer_partial (enum target_object object,
@ -3713,8 +3714,9 @@ linux_nat_target::xfer_partial (enum target_object object,
space, while the core was trying to write to the pre-exec
address space. */
if (proc_mem_file_is_writable ())
return linux_proc_xfer_memory_partial (readbuf, writebuf,
offset, len, xfered_len);
return linux_proc_xfer_memory_partial (inferior_ptid.pid (), readbuf,
writebuf, offset, len,
xfered_len);
}
return inf_ptrace_target::xfer_partial (object, annex, readbuf, writebuf,
@ -3941,12 +3943,10 @@ linux_proc_xfer_memory_partial_fd (int fd, int pid,
threads. */
static enum target_xfer_status
linux_proc_xfer_memory_partial (gdb_byte *readbuf, const gdb_byte *writebuf,
ULONGEST offset, LONGEST len,
ULONGEST *xfered_len)
linux_proc_xfer_memory_partial (int pid, gdb_byte *readbuf,
const gdb_byte *writebuf, ULONGEST offset,
LONGEST len, ULONGEST *xfered_len)
{
int pid = inferior_ptid.pid ();
auto iter = proc_mem_file_map.find (pid);
if (iter == proc_mem_file_map.end ())
return TARGET_XFER_EOF;