binutils-gdb/gdb/testsuite/gdb.arch
Andrew Burgess 93eb6c64ec gdb/testsuite: attach to i386 process stopped in vDSO
Fedora GDB has carried around a patch for a while which tested
attaching to an i386 process which is stopped within the vDSO library
region.  Apparently, at some point in the distant past there was an
issue finding symbol information for this region in this situation.

I'm struggling to track down the precise details of what the original
bug was, however, acquiring symbol information for the vDSO region is
different than for "normal" shared libraries -- the vDSO information
is synthesised within GDB during the attach / inferior creation
process -- so it's not unreasonable to imagine that there could be a
bug specifically in this area of GDB which wouldn't impact "normal"
shared libraries.

I looked for references to vDSO in our testsuite and couldn't find
any tests that looked like they did the same sort of thing, so I'd
like to propose adding this test to our testsuite.

It's a pretty simple test, and doesn't take long to run, so the cost
of adding this is not huge.

Approved-By: Tom Tromey <tom@tromey.com>
2024-03-18 09:50:02 +00:00
..
aarch64-atomic-inst.c
aarch64-atomic-inst.exp
aarch64-brk-patterns.c
aarch64-brk-patterns.exp
aarch64-dbreg-contents.c
aarch64-dbreg-contents.exp
aarch64-fp.c
aarch64-fp.exp
aarch64-mte-core.c
aarch64-mte-core.exp
aarch64-mte.c
aarch64-mte.exp
aarch64-non-address-bits.c
aarch64-non-address-bits.exp
aarch64-pauth.c
aarch64-pauth.exp
aarch64-prologue.c
aarch64-prologue.exp
aarch64-pseudo-unwind-asm.S
aarch64-pseudo-unwind.c
aarch64-pseudo-unwind.exp
aarch64-sighandler-regs.c
aarch64-sighandler-regs.exp
aarch64-sme-core-0.exp
aarch64-sme-core-1.exp
aarch64-sme-core-2.exp
aarch64-sme-core-3.exp
aarch64-sme-core-4.exp
aarch64-sme-core.c
aarch64-sme-core.exp.tcl
aarch64-sme-regs-available-0.exp
aarch64-sme-regs-available-1.exp
aarch64-sme-regs-available-2.exp
aarch64-sme-regs-available-3.exp
aarch64-sme-regs-available-4.exp
aarch64-sme-regs-available-5.exp
aarch64-sme-regs-available-6.exp
aarch64-sme-regs-available-7.exp
aarch64-sme-regs-available-8.exp
aarch64-sme-regs-available-9.exp
aarch64-sme-regs-available.c
aarch64-sme-regs-available.exp.tcl
aarch64-sme-regs-sigframe-0.exp
aarch64-sme-regs-sigframe-1.exp
aarch64-sme-regs-sigframe-2.exp
aarch64-sme-regs-sigframe-3.exp
aarch64-sme-regs-sigframe-4.exp
aarch64-sme-regs-sigframe.c
aarch64-sme-regs-sigframe.exp.tcl
aarch64-sme-regs-unavailable-0.exp
aarch64-sme-regs-unavailable-1.exp
aarch64-sme-regs-unavailable-2.exp
aarch64-sme-regs-unavailable-3.exp
aarch64-sme-regs-unavailable-4.exp
aarch64-sme-regs-unavailable-5.exp
aarch64-sme-regs-unavailable-6.exp
aarch64-sme-regs-unavailable-7.exp
aarch64-sme-regs-unavailable-8.exp
aarch64-sme-regs-unavailable-9.exp
aarch64-sme-regs-unavailable.c
aarch64-sme-regs-unavailable.exp.tcl
aarch64-sme-sanity.c
aarch64-sme-sanity.exp
aarch64-sve.c
aarch64-sve.exp
aarch64-tagged-pointer.c
aarch64-tagged-pointer.exp
aarch64-unwind-pc.exp
aarch64-unwind-pc.S
aarch64-w-registers.c
aarch64-w-registers.exp
aix-sighandle.c
aix-sighandle.exp
alpha-step.c
alpha-step.exp
altivec-abi.c
altivec-abi.exp
altivec-regs.c
altivec-regs.exp
amd64-break-on-asm-line.exp
amd64-break-on-asm-line.S
amd64-byte.exp
amd64-disp-step-avx.exp
amd64-disp-step-avx.S
amd64-disp-step-self-call-alarm.c
amd64-disp-step-self-call.exp
amd64-disp-step-self-call.S
amd64-disp-step-signal.c
amd64-disp-step.exp
amd64-disp-step.S
amd64-dword.exp
amd64-entry-value-inline.c
amd64-entry-value-inline.exp
amd64-entry-value-inline.S
amd64-entry-value-param-dwarf5.c
amd64-entry-value-param-dwarf5.exp
amd64-entry-value-param-dwarf5.S
amd64-entry-value-param.c
amd64-entry-value-param.exp
amd64-entry-value-param.S
amd64-entry-value-paramref.cc
amd64-entry-value-paramref.exp
amd64-entry-value-paramref.S
amd64-entry-value.cc
amd64-entry-value.exp
amd64-entry-value.s
amd64-eval.cc
amd64-eval.exp
amd64-gs_base.c
amd64-gs_base.exp
amd64-i386-address.exp
amd64-i386-address.S
amd64-init-x87-values.exp
amd64-init-x87-values.S
amd64-invalid-stack-middle.c
amd64-invalid-stack-middle.exp
amd64-invalid-stack-middle.S
amd64-invalid-stack-top.c
amd64-invalid-stack-top.exp
amd64-optimout-repeat.c
amd64-optimout-repeat.exp
amd64-optimout-repeat.S
amd64-osabi.exp
amd64-prologue-skip.exp
amd64-prologue-skip.S
amd64-prologue-xmm.c
amd64-prologue-xmm.exp
amd64-prologue-xmm.s
amd64-pseudo-unwind-asm.S
amd64-pseudo-unwind.c
amd64-pseudo-unwind.exp
amd64-pseudo.c
amd64-stap-expressions.exp
amd64-stap-expressions.S
amd64-stap-optional-prefix.exp
amd64-stap-optional-prefix.S
amd64-stap-special-operands.exp
amd64-stap-three-arg-disp.c
amd64-stap-three-arg-disp.S
amd64-stap-triplet.c
amd64-stap-triplet.S
amd64-stap-wrong-subexp.exp
amd64-stap-wrong-subexp.S
amd64-tailcall-cxx1.cc
amd64-tailcall-cxx1.S
amd64-tailcall-cxx2.cc
amd64-tailcall-cxx2.S
amd64-tailcall-cxx.exp
amd64-tailcall-noret.c
amd64-tailcall-noret.exp
amd64-tailcall-noret.S
amd64-tailcall-ret.c
amd64-tailcall-ret.exp
amd64-tailcall-ret.S
amd64-tailcall-self.c
amd64-tailcall-self.exp
amd64-tailcall-self.S
amd64-watchpoint-downgrade.c
amd64-watchpoint-downgrade.exp
amd64-word.exp
arc-analyze-prologue.exp arc: Don't build arc-analyze-prologue.S with -g 2024-02-27 15:10:08 +01:00
arc-analyze-prologue.S
arc-dbnz.exp arc: Determine a branch target of DBNZ correctly 2024-02-21 14:15:09 +01:00
arc-dbnz.S arc: Determine a branch target of DBNZ correctly 2024-02-21 14:15:09 +01:00
arc-decode-insn.exp
arc-decode-insn.S
arc-disassembler-options.exp
arc-disassembler-options.s
arc-tdesc-cpu.exp
arc-tdesc-cpu.xml
arm-bl-branch-dest.c
arm-bl-branch-dest.exp
arm-cmse-sgstubs.c
arm-cmse-sgstubs.exp
arm-disassembler-options.exp
arm-disp-step.exp
arm-disp-step.S
arm-neon.c
arm-neon.exp
arm-pseudo-unwind-asm.S
arm-pseudo-unwind-legacy-asm.S
arm-pseudo-unwind-legacy.c
arm-pseudo-unwind-legacy.exp
arm-pseudo-unwind.c
arm-pseudo-unwind.exp
arm-pthread_cond_timedwait-bt.c
arm-pthread_cond_timedwait-bt.exp
arm-single-step-kernel-helper.c
arm-single-step-kernel-helper.exp
avr-flash-qualifier.c
avr-flash-qualifier.exp
cordic.ko.bz2
cordic.ko.debug.bz2
core-file-pid0.exp
core-file-pid0.x86-64.core.bz2
disp-step-insn-reloc.exp
e500-abi.c
e500-abi.exp
e500-prologue.c
e500-prologue.exp
e500-regs.c
e500-regs.exp
ftrace-insn-reloc.exp
gdb1291.exp
gdb1291.s
gdb1431.exp
gdb1431.s
gdb1558.c
gdb1558.exp
i386-attach-see-vdso.c gdb/testsuite: attach to i386 process stopped in vDSO 2024-03-18 09:50:02 +00:00
i386-attach-see-vdso.exp gdb/testsuite: attach to i386 process stopped in vDSO 2024-03-18 09:50:02 +00:00
i386-avx512.c
i386-avx512.exp
i386-avx.c
i386-avx.exp
i386-biarch-core.core.bz2
i386-biarch-core.exp
i386-bp_permanent.c
i386-bp_permanent.exp
i386-byte.exp
i386-cfi-notcurrent.exp
i386-cfi-notcurrent.S
i386-disp-step-self-call-alarm.c
i386-disp-step-self-call.exp
i386-disp-step-self-call.S
i386-disp-step.exp
i386-disp-step.S
i386-dr3-watch.c
i386-dr3-watch.exp gdb: Modify the output of "info breakpoints" and "delete breakpoints" 2024-02-26 19:19:58 +08:00
i386-float.exp
i386-float.S
i386-gnu-cfi-asm.S
i386-gnu-cfi.c
i386-gnu-cfi.exp
i386-mpx-call.c
i386-mpx-call.exp
i386-mpx-map.c
i386-mpx-map.exp
i386-mpx-sigsegv.c
i386-mpx-sigsegv.exp
i386-mpx-simple_segv.c
i386-mpx-simple_segv.exp
i386-mpx.c
i386-mpx.exp
i386-permbkpt.exp
i386-permbkpt.S
i386-pkru.c
i386-pkru.exp
i386-prologue-skip-cf-protection.c
i386-prologue-skip-cf-protection.exp
i386-prologue.c
i386-prologue.exp
i386-pseudo.c
i386-signal.c
i386-signal.exp
i386-size-overlap.c
i386-size-overlap.exp
i386-size.c
i386-size.exp
i386-sse-stack-align.c
i386-sse-stack-align.exp
i386-sse-stack-align.S
i386-sse.c
i386-sse.exp
i386-stap-eval-lang-ada.c
i386-stap-eval-lang-ada.exp
i386-stap-eval-lang-ada.S
i386-unwind.c
i386-unwind.exp
i386-word.exp
ia64-breakpoint-shadow.exp
ia64-breakpoint-shadow.S
insn-reloc.c
iwmmxt-regs.c
iwmmxt-regs.exp
mips16-thunks-inmain.c
mips16-thunks-main.c
mips16-thunks-sin.c
mips16-thunks-sinfrob16.c
mips16-thunks-sinfrob.c
mips16-thunks-sinmain.c
mips16-thunks-sinmips16.c
mips16-thunks.exp
mips-disassembler-options.exp
mips-disassembler-options.s
mips-fcr.c
mips-fcr.exp
mips-fpregset-core.c
mips-fpregset-core.exp
mips-octeon-bbit.c
mips-octeon-bbit.exp
pa64-nullify.s
pa-nullify.exp
pa-nullify.s
powerpc64-prologue.c
powerpc64-prologue.exp
powerpc64-trap.s
powerpc-addpcis.exp
powerpc-addpcis.s
powerpc-aix-prologue.c
powerpc-aix-prologue.exp
powerpc-altivec2.exp
powerpc-altivec2.s
powerpc-altivec3.exp
powerpc-altivec3.s
powerpc-altivec.exp
powerpc-altivec.s
powerpc-d128-regs.c
powerpc-d128-regs.exp
powerpc-disassembler-options.exp
powerpc-fpscr-gcore.exp
powerpc-htm-regs.c
powerpc-htm-regs.exp
powerpc-lnia.exp
powerpc-lnia.s
powerpc-plxv-nonrel.exp
powerpc-plxv-nonrel.s
powerpc-power7.exp
powerpc-power7.s
powerpc-power8.exp
powerpc-power8.s
powerpc-power9.exp
powerpc-power9.s
powerpc-power10.exp
powerpc-power10.s
powerpc-ppr-dscr.c
powerpc-ppr-dscr.exp
powerpc-prologue-frame.c
powerpc-prologue-frame.exp
powerpc-prologue-frame.S
powerpc-prologue.c
powerpc-prologue.exp
powerpc-stackless.exp
powerpc-stackless.S
powerpc-tar.c
powerpc-tar.exp
powerpc-trap.exp
powerpc-trap.s
powerpc-vector-regs.c
powerpc-vector-regs.exp
powerpc-vsx2.exp
powerpc-vsx2.s
powerpc-vsx3.exp
powerpc-vsx3.s
powerpc-vsx-gcore.exp
powerpc-vsx.exp
powerpc-vsx.s
ppc64-atomic-inst.exp
ppc64-atomic-inst.S
ppc64-break-on-_exit-main.c
ppc64-break-on-_exit.c
ppc64-break-on-_exit.exp
ppc64-break-on-_exit.s
ppc64-isa207-atomic-inst.c
ppc64-isa207-atomic-inst.exp
ppc64-isa207-atomic-inst.S
ppc64-symtab-cordic.exp
ppc-dfp.c
ppc-dfp.exp
ppc-fp.c
ppc-fp.exp
ppc-longdouble.c
ppc-longdouble.exp
pr25124.exp
pr25124.S
riscv64-unwind-prologue-with-c_li-foo.s
riscv64-unwind-prologue-with-c_li.c
riscv64-unwind-prologue-with-c_li.exp
riscv64-unwind-prologue-with-ld-lw-foo.s
riscv64-unwind-prologue-with-ld-lw.c
riscv64-unwind-prologue-with-ld-lw.exp
riscv64-unwind-prologue-with-mv.c
riscv64-unwind-prologue-with-mv.exp
riscv64-unwind-prologue-with-mv.s
riscv-bp-infcall.c
riscv-bp-infcall.exp
riscv-default-tdesc.exp
riscv-info-fcsr.c
riscv-info-fcsr.exp
riscv-reg-aliases.c
riscv-reg-aliases.exp
riscv-tdesc-fcsr-32.xml
riscv-tdesc-fcsr-64.xml
riscv-tdesc-loading-01.xml
riscv-tdesc-loading-02.xml
riscv-tdesc-loading-03.xml
riscv-tdesc-loading-04.xml
riscv-tdesc-loading-05.xml
riscv-tdesc-loading-06.xml
riscv-tdesc-loading.exp
riscv-tdesc-regs-32.xml
riscv-tdesc-regs-64.xml
riscv-tdesc-regs.c
riscv-tdesc-regs.exp
riscv-unwind-long-insn.c
riscv-unwind-long-insn.exp
riscv-unwind-long-insn.S
s390-disassembler-options.exp
s390-multiarch.c
s390-multiarch.exp
s390-stackless.exp
s390-stackless.S
s390-tdbregs.c
s390-tdbregs.exp
s390-vregs.exp
s390-vregs.S
sparc64-adi.c
sparc64-adi.exp
sparc64-regs.exp
sparc64-regs.S
sparc-sysstep.c
sparc-sysstep.exp
thumb2-it.exp
thumb2-it.S
thumb-bx-pc.exp
thumb-bx-pc.S
thumb-prologue.c
thumb-prologue.exp
thumb-singlestep.exp
thumb-singlestep.S
vsx-regs.c
vsx-regs.exp
vsx-vsr-float28.c
vsx-vsr-float28.exp
x86-avx512bf16.c
x86-avx512bf16.exp
x86-avx512fp16-abi.c
x86-avx512fp16-abi.exp
x86-avx512fp16.c
x86-avx512fp16.exp