gdb: testsuite: use gdb_attach to fix attach-pie-noexec.exp
authorTiezhu Yang <yangtiezhu@loongson.cn>
Thu, 17 Mar 2022 02:25:09 +0000 (10:25 +0800)
committerTiezhu Yang <yangtiezhu@loongson.cn>
Wed, 23 Mar 2022 03:56:42 +0000 (11:56 +0800)
commit5b5442fbf0fab8bd3cb4d19e564b13501f547dac
tree2c4679ad6f08ddfe04af47d9d6781ae42c4de579
parenta7e6a19e87f3d719ea23c65b580a6d9bca4ccab3
gdb: testsuite: use gdb_attach to fix attach-pie-noexec.exp

If /proc/sys/kernel/yama/ptrace_scope is 1, when execute the following
command without superuser:

  make check-gdb TESTS="gdb.base/attach-pie-noexec.exp"

we can see the following messages in gdb/testsuite/gdb.log:

  (gdb) attach 6500
  Attaching to process 6500
  ptrace: Operation not permitted.
  (gdb) PASS: gdb.base/attach-pie-noexec.exp: attach

It is obviously wrong, the expected result should be UNSUPPORTED in such
a case.

With this patch, we can see "Operation not permitted" in the log info,
and then we can do the following processes to test:
(1) set ptrace_scope as 0
    $ echo 0 | sudo tee /proc/sys/kernel/yama/ptrace_scope
    $ make check-gdb TESTS="gdb.base/attach-pie-noexec.exp"
(2) use sudo
    $ sudo make check-gdb TESTS="gdb.base/attach-pie-noexec.exp"

Signed-off-by: Tiezhu Yang <yangtiezhu@loongson.cn>
gdb/testsuite/gdb.base/attach-pie-noexec.exp