From f9f593ddb2dee399e1ad24370c8e627aa4262524 Mon Sep 17 00:00:00 2001 From: Simon Marchi Date: Fri, 25 Nov 2022 16:27:15 -0500 Subject: [PATCH] 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 --- gdb/linux-nat.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/gdb/linux-nat.c b/gdb/linux-nat.c index 0b3c143382b..17e5dce08c3 100644 --- a/gdb/linux-nat.c +++ b/gdb/linux-nat.c @@ -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; -- 2.30.2