mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2025-01-24 12:35:55 +08:00
Test ability to access unwritten-to mmap data in core file
gdb/testsuite/ChangeLog: PR corefiles/25631 * gdb.base/corefile.exp (accessing anonymous, unwritten-to mmap data): New test. * gdb.base/coremaker.c (buf3): New global. (mmapdata): Add mmap call which uses MAP_ANONYMOUS and MAP_PRIVATE flags.
This commit is contained in:
parent
2735d4218e
commit
94c265d790
@ -1,4 +1,13 @@
|
||||
2020-07-20 Kevin Buettner <kevinb@redhat.com>
|
||||
2020-07-22 Kevin Buettner <kevinb@redhat.com>
|
||||
|
||||
PR corefiles/25631
|
||||
* gdb.base/corefile.exp (accessing anonymous, unwritten-to mmap data):
|
||||
New test.
|
||||
* gdb.base/coremaker.c (buf3): New global.
|
||||
(mmapdata): Add mmap call which uses MAP_ANONYMOUS and MAP_PRIVATE
|
||||
flags.
|
||||
|
||||
2020-07-22 Kevin Buettner <kevinb@redhat.com>
|
||||
|
||||
* gdb.base/coremaker.c (filler_ro): New global constant.
|
||||
|
||||
|
@ -175,6 +175,15 @@ gdb_test_multiple "x/8bd buf2" "$test" {
|
||||
}
|
||||
}
|
||||
|
||||
# Test ability to read anonymous and, more importantly, unwritten-to
|
||||
# mmap'd data.
|
||||
|
||||
if { ![istarget *-linux*] } {
|
||||
setup_xfail "*-*-*"
|
||||
}
|
||||
gdb_test "x/wx buf3" "$hex:\[ \t\]+0x00000000" \
|
||||
"accessing anonymous, unwritten-to mmap data"
|
||||
|
||||
# test reinit_frame_cache
|
||||
|
||||
gdb_load ${binfile}
|
||||
|
@ -38,6 +38,7 @@
|
||||
|
||||
char *buf1;
|
||||
char *buf2;
|
||||
char *buf3;
|
||||
|
||||
int coremaker_data = 1; /* In Data section */
|
||||
int coremaker_bss; /* In BSS section */
|
||||
@ -104,6 +105,15 @@ mmapdata ()
|
||||
}
|
||||
/* Touch buf2 so kernel writes it out into 'core'. */
|
||||
buf2[0] = buf1[0];
|
||||
|
||||
/* Create yet another region which is allocated, but not written to. */
|
||||
buf3 = mmap (NULL, MAPSIZE, PROT_READ | PROT_WRITE,
|
||||
MAP_ANONYMOUS | MAP_PRIVATE, -1, 0);
|
||||
if (buf3 == (char *) -1)
|
||||
{
|
||||
perror ("mmap failed");
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
|
Loading…
Reference in New Issue
Block a user