qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Richard Henderson <richard.henderson@linaro.org>
To: qemu-devel@nongnu.org
Cc: "Ilya Leoshkevich" <iii@linux.ibm.com>,
	"Helge Deller" <deller@gmx.de>,
	"Philippe Mathieu-Daudé" <philmd@linaro.org>
Subject: [PULL 08/13] linux-user: Emulate the Anonymous: keyword in /proc/self/smaps
Date: Fri,  1 Sep 2023 13:42:46 -0700	[thread overview]
Message-ID: <20230901204251.137307-9-richard.henderson@linaro.org> (raw)
In-Reply-To: <20230901204251.137307-1-richard.henderson@linaro.org>

From: Ilya Leoshkevich <iii@linux.ibm.com>

Core dumps produced by gdb's gcore when connected to qemu's gdbstub
lack stack. The reason is that gdb includes only anonymous memory in
core dumps, which is distinguished by a non-0 Anonymous: value.

Consider the mappings with PAGE_ANON fully anonymous, and the mappings
without it fully non-anonymous.

Tested-by: Helge Deller <deller@gmx.de>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com>
[rth: Update for open_self_maps_* rewrite]
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
 linux-user/syscall.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index 0641d8f433..8d96acd085 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -8167,7 +8167,7 @@ static void open_self_maps_4(const struct open_self_maps_data *d,
                 "Private_Clean:         0 kB\n"
                 "Private_Dirty:         0 kB\n"
                 "Referenced:            0 kB\n"
-                "Anonymous:             0 kB\n"
+                "Anonymous:             %lu kB\n"
                 "LazyFree:              0 kB\n"
                 "AnonHugePages:         0 kB\n"
                 "ShmemPmdMapped:        0 kB\n"
@@ -8180,6 +8180,7 @@ static void open_self_maps_4(const struct open_self_maps_data *d,
                 "THPeligible:    0\n"
                 "VmFlags:%s%s%s%s%s%s%s%s\n",
                 size_kb, page_size_kb, page_size_kb,
+                (flags & PAGE_ANON ? size_kb : 0),
                 (flags & PAGE_READ) ? " rd" : "",
                 (flags & PAGE_WRITE_ORG) ? " wr" : "",
                 (flags & PAGE_EXEC) ? " ex" : "",
-- 
2.34.1



  parent reply	other threads:[~2023-09-01 20:45 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-09-01 20:42 [PULL 00/13] linux-user patch queue Richard Henderson
2023-09-01 20:42 ` [PULL 01/13] linux-user: Split out cpu/target_proc.h Richard Henderson
2023-09-01 20:42 ` [PULL 02/13] linux-user: Emulate /proc/cpuinfo on aarch64 and arm Richard Henderson
2023-09-01 20:42 ` [PULL 03/13] linux-user: Emulate /proc/cpuinfo for Alpha Richard Henderson
2023-09-01 20:42 ` [PULL 04/13] util/selfmap: Use dev_t and ino_t in MapInfo Richard Henderson
2023-09-01 20:42 ` [PULL 05/13] linux-user: Use walk_memory_regions for open_self_maps Richard Henderson
2024-01-26 13:03   ` Richard Purdie
2024-01-26 13:33     ` Michael Tokarev
2024-01-26 13:52       ` Richard Purdie
2024-02-05  3:05         ` Richard Henderson
2024-02-05 11:11           ` Richard Purdie
2024-02-12 20:43             ` Ilya Leoshkevich
2024-02-22  0:14               ` Richard Henderson
2023-09-01 20:42 ` [PULL 06/13] linux-user: Adjust brk for load_bias Richard Henderson
2023-09-01 20:42 ` [PULL 07/13] linux-user: Show heap address in /proc/pid/maps Richard Henderson
2023-09-01 20:42 ` Richard Henderson [this message]
2023-09-01 20:42 ` [PULL 09/13] linux-user: Remove ELF_START_MMAP and image_info.start_mmap Richard Henderson
2023-09-01 20:42 ` [PULL 10/13] linux-user: Move shmat and shmdt implementations to mmap.c Richard Henderson
2023-09-01 20:42 ` [PULL 11/13] linux-user: Use WITH_MMAP_LOCK_GUARD in target_{shmat, shmdt} Richard Henderson
2023-09-01 20:42 ` [PULL 12/13] linux-user: Fix shmdt Richard Henderson
2023-09-01 20:42 ` [PULL 13/13] linux-user: Track shm regions with an interval tree Richard Henderson
2023-09-06 18:24 ` [PULL 00/13] linux-user patch queue Stefan Hajnoczi

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230901204251.137307-9-richard.henderson@linaro.org \
    --to=richard.henderson@linaro.org \
    --cc=deller@gmx.de \
    --cc=iii@linux.ibm.com \
    --cc=philmd@linaro.org \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).