public inbox for gdb-testers@sourceware.org
help / color / mirror / Atom feed
* [binutils-gdb/gdb-7.12-branch] gdb/NEWS: rename "since GDB 7.11" into "in GDB 7.12".
@ 2016-08-01 18:28 sergiodj+buildbot
  2016-08-01 18:28 ` Failures on Fedora-x86_64-m32, branch gdb-7.12-branch sergiodj+buildbot
                   ` (16 more replies)
  0 siblings, 17 replies; 48+ messages in thread
From: sergiodj+buildbot @ 2016-08-01 18:28 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT ad08bd595b31907b8cd414fa900055bacd68e112 ***

Author: Joel Brobecker <brobecker@adacore.com>
Branch: gdb-7.12-branch
Commit: ad08bd595b31907b8cd414fa900055bacd68e112

gdb/NEWS: rename "since GDB 7.11" into "in GDB 7.12".

gdb/ChangeLog:

        * NEWS: Rename "since GDB 7.11" section into "in GDB 7.12" section.


^ permalink raw reply	[flat|nested] 48+ messages in thread
* [binutils-gdb/gdb-7.12-branch] gdb: Fix C and C++03 builds
@ 2016-12-20 20:16 sergiodj+buildbot
  2016-12-23 17:26 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
  0 siblings, 1 reply; 48+ messages in thread
From: sergiodj+buildbot @ 2016-12-20 20:16 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 9bfe0298332782a9c082fb475bdf8eeeef8cf45e ***

Author: Pedro Alves <palves@redhat.com>
Branch: gdb-7.12-branch
Commit: 9bfe0298332782a9c082fb475bdf8eeeef8cf45e

gdb: Fix C and C++03 builds

The readline/sjlj-exceptions fix added an unconditional use of
noexcept, but that's only valid C++11, and 7.12 must build with C and
C++03 too.  Fix this by adding a GDB_EXCEPT macro that compiles away
to nothing in C, and to throw() in C++03, which I've confirmed fixes
the original issue just the same as noexcept, with GCC 7 + -std=gnu+03
+ sjlj-exceptions.

gdb/ChangeLog:
2016-12-20  Pedro Alves  <palves@redhat.com>

	PR gdb/20977
	* event-top.c (GDB_NOEXCEPT): Define.
	(gdb_rl_callback_read_char_wrapper_noexcept): Use GDB_NOEXCEPT
	instead of noexcept and use (void) instead of ().
	(gdb_rl_callback_handler): Use GDB_NOEXCEPT instead of noexcept.


^ permalink raw reply	[flat|nested] 48+ messages in thread
* [binutils-gdb/gdb-7.12-branch] Create tdep->rl78_psw_type lazily
@ 2016-12-09 17:42 sergiodj+buildbot
  2016-12-10  2:01 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
  0 siblings, 1 reply; 48+ messages in thread
From: sergiodj+buildbot @ 2016-12-09 17:42 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 68647b569da041a33a6504cd80f51fbd43bfa134 ***

Author: Yao Qi <yao.qi@linaro.org>
Branch: gdb-7.12-branch
Commit: 68647b569da041a33a6504cd80f51fbd43bfa134

Create tdep->rl78_psw_type lazily

I build GDB for all targets enabled.  When I "set architecture rl78",
GDB crashes,

(gdb) set architecture rl78

Program received signal SIGSEGV, Segmentation fault.
append_flags_type_flag (type=0x20cc0e0, bitpos=bitpos@entry=0, name=name@entry=0x11dba3f "CY") at ../../binutils-gdb/gdb/gdbtypes.c:4926
4926                               name);
(gdb) bt 10
 #0  append_flags_type_flag (type=0x20cc0e0, bitpos=bitpos@entry=0, name=name@entry=0x11dba3f "CY") at ../../binutils-gdb/gdb/gdbtypes.c:4926
 #1  0x00000000004aaca8 in rl78_gdbarch_init (info=..., arches=<optimized out>) at ../../binutils-gdb/gdb/rl78-tdep.c:1410
 #2  0x00000000006b05a4 in gdbarch_find_by_info (info=...) at ../../binutils-gdb/gdb/gdbarch.c:5269
 #3  0x000000000060eee4 in gdbarch_update_p (info=...) at ../../binutils-gdb/gdb/arch-utils.c:557
 #4  0x000000000060f8a8 in set_architecture (ignore_args=<optimized out>, from_tty=1, c=<optimized out>) at ../../binutils-gdb/gdb/arch-utils.c:531
 #5  0x0000000000593d0b in do_set_command (arg=<optimized out>, arg@entry=0x20be851 "rl78", from_tty=from_tty@entry=1, c=c@entry=0x20b1540)
    at ../../binutils-gdb/gdb/cli/cli-setshow.c:455
 #6  0x00000000007665c3 in execute_command (p=<optimized out>, p@entry=0x20be840 "set architecture rl78", from_tty=1) at ../../binutils-gdb/gdb/top.c:666
 #7  0x00000000006935f4 in command_handler (command=0x20be840 "set architecture rl78") at ../../binutils-gdb/gdb/event-top.c:577
 #8  0x00000000006938d8 in command_line_handler (rl=<optimized out>) at ../../binutils-gdb/gdb/event-top.c:767
 #9  0x0000000000692c2c in gdb_rl_callback_handler (rl=0x20be890 "") at ../../binutils-gdb/gdb/event-top.c:200

The cause is that we want to access some builtin types in gdbarch init, but
it is not initialized yet.  I fix it by creating the type when it is to be
used.  We've already done this in sparc, sparc64 and m68k.

gdb:

2016-12-09  Yao Qi  <yao.qi@linaro.org>

	PR tdep/20953
	* rl78-tdep.c (rl78_psw_type): New function.
	(rl78_register_type): Call rl78_psw_type.
	(rl78_gdbarch_init): Move code to rl78_psw_type.


^ permalink raw reply	[flat|nested] 48+ messages in thread
* [binutils-gdb/gdb-7.12-branch] [AArch64] Track FP registers in prologue analyzer
@ 2016-10-12 12:26 sergiodj+buildbot
  2016-10-12 13:54 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
  0 siblings, 1 reply; 48+ messages in thread
From: sergiodj+buildbot @ 2016-10-12 12:26 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 8268cfa384409770cd6988e54b386ae286c0f3d1 ***

Author: Yao Qi <yao.qi@linaro.org>
Branch: gdb-7.12-branch
Commit: 8268cfa384409770cd6988e54b386ae286c0f3d1

[AArch64] Track FP registers in prologue analyzer

We don't track FP registers in aarch64 prologue analyzer, so this causes
an internal error when FP registers are saved by "stp" instruction in
prologue (stp	d8, d9, [sp,#128]),

 tbreak _Unwind_RaiseException^M
 aarch64-tdep.c:335: internal-error: CORE_ADDR aarch64_analyze_prologue(gdbarch*, CORE_ADDR, CORE_ADDR, aarch64_prologue_cache*): Assertion `inst.operands[0].type == AARCH64_OPND_Rt' failed.^M
 A problem internal to GDB has been detected,

This patch teaches GDB to track FP registers (D registers) in prologue
analyzer.

gdb:

2016-10-12  Yao Qi  <yao.qi@linaro.org>

	PR tdep/20682
	* aarch64-tdep.c: Replace 32 with AARCH64_D_REGISTER_COUNT.
	(aarch64_analyze_prologue): Extend array 'regs' for D registers.
	Assert that operand 0 and 1 can be X or D registers.  Update
	register number for D registers.  Update registers in frame
	cache.
	* aarch64-tdep.h (AARCH64_D_REGISTER_COUNT): New macro.


^ permalink raw reply	[flat|nested] 48+ messages in thread
* [binutils-gdb/gdb-7.12-branch] Set GDB version number to 7.12.
@ 2016-10-07 17:29 sergiodj+buildbot
  2016-10-07 17:39 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
  0 siblings, 1 reply; 48+ messages in thread
From: sergiodj+buildbot @ 2016-10-07 17:29 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 013fd7c2f84387f218364f6cc95e16708dfba28e ***

Author: Joel Brobecker <brobecker@adacore.com>
Branch: gdb-7.12-branch
Commit: 013fd7c2f84387f218364f6cc95e16708dfba28e

Set GDB version number to 7.12.

gdb/ChangeLog:

	* version.in: Set GDB version number to 7.12.


^ permalink raw reply	[flat|nested] 48+ messages in thread
* [binutils-gdb/gdb-7.12-branch] frame.h: Forward-declare struct ui_out
@ 2016-10-06 21:39 sergiodj+buildbot
  2016-10-07  5:25 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
  0 siblings, 1 reply; 48+ messages in thread
From: sergiodj+buildbot @ 2016-10-06 21:39 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT f2ddf8f6caffc513751ebfb3608c3a453aed5103 ***

Author: Simon Marchi <simon.marchi@ericsson.com>
Branch: gdb-7.12-branch
Commit: f2ddf8f6caffc513751ebfb3608c3a453aed5103

frame.h: Forward-declare struct ui_out

Fixes this failure when building in C mode.  I think it's relevant for master
as well, since it's a good practice to include (or forward-declare) what you
use.

In file included from ../../binutils-gdb/gdb/gdbarch.h:38:0,
                 from ../../binutils-gdb/gdb/defs.h:653,
                 from ../../binutils-gdb/gdb/dictionary.c:23:
../../binutils-gdb/gdb/frame.h:710:48: warning: struct ui_out declared inside parameter list will not be visible outside of this definition or declaration
 extern void print_stack_frame_to_uiout (struct ui_out *uiout,

gdb/ChangeLog:

	* frame.h: Forward-declare struct ui_out.


^ permalink raw reply	[flat|nested] 48+ messages in thread
* [binutils-gdb/gdb-7.12-branch] stack: fix gdb.dwarf2/dw2-undefined-ret-addr.exp regression
@ 2016-10-06 15:41 sergiodj+buildbot
  2016-10-06 17:29 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
  0 siblings, 1 reply; 48+ messages in thread
From: sergiodj+buildbot @ 2016-10-06 15:41 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 3929b7e909b48a20d5dac6631e519f3b6b2ac84e ***

Author: Markus Metzger <markus.t.metzger@intel.com>
Branch: gdb-7.12-branch
Commit: 3929b7e909b48a20d5dac6631e519f3b6b2ac84e

stack: fix gdb.dwarf2/dw2-undefined-ret-addr.exp regression

Commit a038fa3e14a4 stack: check frame_unwind_caller_id adds a frame_id check to
frame_info and treats a missing frame_id as NOT_AVAILABLE_ERROR.  This causes a
regression in gdb.dwarf2/dw2-undefined-ret-addr.exp.

Treat a missing frame_id as OPTIMIZED_OUT_ERROR instead.

See also https://sourceware.org/ml/gdb-patches/2016-07/msg00273.html.


^ permalink raw reply	[flat|nested] 48+ messages in thread
* [binutils-gdb/gdb-7.12-branch] Introduce cleanup to restore current_uiout
@ 2016-10-03 23:07 sergiodj+buildbot
  2016-10-04  3:39 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
  0 siblings, 1 reply; 48+ messages in thread
From: sergiodj+buildbot @ 2016-10-03 23:07 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 33de0b1741b1939dd5384e54a858e71d2029a365 ***

Author: Simon Marchi <simark@simark.ca>
Branch: gdb-7.12-branch
Commit: 33de0b1741b1939dd5384e54a858e71d2029a365

Introduce cleanup to restore current_uiout

Make a globally available cleanup from a pre-existing one in infrun.c.
This is used in a following patch.

gdb/ChangeLog:

	* infrun.c (restore_current_uiout_cleanup): Move to ui-out.c.
	(print_stop_event): Use make_cleanup_restore_current_uiout.
	* python/python.c (execute_gdb_command): Likewise.
	* ui-out.c (restore_current_uiout_cleanup): Move from infrun.c.
	(make_cleanup_restore_current_uiout): New function definition.
	* ui-out.h (make_cleanup_restore_current_uiout): New function
	declaration.
	* utils.c (do_restore_ui_out): Remove.
	(make_cleanup_restore_ui_out): Remove.
	* utils.h (make_cleanup_restore_ui_out): Remove.


^ permalink raw reply	[flat|nested] 48+ messages in thread
* [binutils-gdb/gdb-7.12-branch] Fix PR 20345 - call_function_by_hand_dummy: Assertion `tp->thread_fsm == &sm->thread_fsm' failed
@ 2016-09-29  7:11 sergiodj+buildbot
  2016-09-29 16:42 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
  0 siblings, 1 reply; 48+ messages in thread
From: sergiodj+buildbot @ 2016-09-29  7:11 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 629ad95de4e61ac78f49e1abf4592dbc1fe84d96 ***

Author: Pedro Alves <palves@redhat.com>
Branch: gdb-7.12-branch
Commit: 629ad95de4e61ac78f49e1abf4592dbc1fe84d96

Fix PR 20345 - call_function_by_hand_dummy: Assertion `tp->thread_fsm == &sm->thread_fsm' failed

If you run an infcall from the command line, and immediately after run
some other command, GDB incorrectly processes the other command before
the infcall finishes.

The problem is that the fix for PR gdb/20418 (Problems with
synchronous commands and new-ui, git 3eb7562a983b) moved the
add_file_handler/delete_file_handler calls out of
target_terminal_$foo, and missed adjusting the infcall code.

gdb/ChangeLog:
2016-09-28  Pedro Alves  <palves@redhat.com>

	* infcall.c (run_inferior_call): Remove input from the event
	loop while running the infcall.

gdb/testsuite/ChangeLog:
2016-09-28  Pedro Alves  <palves@redhat.com>

	* gdb.base/infcall-input.c: New file.
	* gdb.base/infcall-input.exp: New file.


^ permalink raw reply	[flat|nested] 48+ messages in thread
* [binutils-gdb/gdb-7.12-branch] Backport lastest POWER9 support to match final ISA 3.0 documentation.
@ 2016-09-17  5:25 sergiodj+buildbot
  2016-09-19  4:58 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
  0 siblings, 1 reply; 48+ messages in thread
From: sergiodj+buildbot @ 2016-09-17  5:25 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 36d46af3d3e7dadcbac433ea42d0247a517cd782 ***

Author: Peter Bergner <bergner@vnet.ibm.com>
Branch: gdb-7.12-branch
Commit: 36d46af3d3e7dadcbac433ea42d0247a517cd782

Backport lastest POWER9 support to match final ISA 3.0 documentation.

opcodes/
	Apply from master.
	2016-09-14  Peter Bergner <bergner@vnet.ibm.com>

	* ppc-opc.c (powerpc_opcodes) <slbiag>: New mnemonic.
	<addex., brd, brh, brw, lwzmx, nandxor, rldixor, setbool,
	xor3>: Delete mnemonics.
	<cp_abort>: Rename mnemonic from ...
	<cpabort>: ...to this.
	<setb>: Change to a X form instruction.
	<sync>: Change to 1 operand form.
	<copy>: Delete mnemonic.
	<copy_first>: Rename mnemonic from ...
	<copy>: ...to this.
	<paste, paste.>: Delete mnemonics.
	<paste_last>: Rename mnemonic from ...
	<paste.>: ...to this.

gas/
	Apply from master.
	2016-09-14  Peter Bergner <bergner@vnet.ibm.com>

	* testsuite/gas/ppc/power9.d <slbiag, cpabort> New tests.
	<addex., brd, brh, brw, lwzmx, nandxor, rldixor, setbool,
	xor3, cp_abort, copy_first, paste, paste_last, sync>: Remove tests.
	<copy, paste.>: Update tests.
	* testsuite/gas/ppc/power9.s: Likewise.


^ permalink raw reply	[flat|nested] 48+ messages in thread
* [binutils-gdb/gdb-7.12-branch] Fix lwp_suspend/unsuspend imbalance in linux_wait_1
@ 2016-09-01  8:54 sergiodj+buildbot
  2016-09-01 10:02 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
  0 siblings, 1 reply; 48+ messages in thread
From: sergiodj+buildbot @ 2016-09-01  8:54 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 305a161d11c4b5801a0e135fec5d77f3d64f121f ***

Author: Antoine Tremblay <antoine.tremblay@ericsson.com>
Branch: gdb-7.12-branch
Commit: 305a161d11c4b5801a0e135fec5d77f3d64f121f

Fix lwp_suspend/unsuspend imbalance in linux_wait_1

This patch fixes imbalanced lwp_suspend/unsuspend calls caused by the
premature choosing of another event for fairness.

select_event_lwp would switch the event before a call to
unsuspend_all_lwps, thus it would be called with the wrong event.

This caused an assertion failure: unsuspend LWP xx, suspended=-1 when
testing  gdb.threads/non-stop-fair-events.exp with ARM range stepping in
GDBServer.

This patch moves the switch of event after the unsuspend/unstop calls.

No regressions, tested on ubuntu 14.04 ARMv7 and x86.
With gdbserver-native.

gdb/gdbserver/ChangeLog:

	* linux-low.c (linux_wait_1): Move event switch after unsuspend_lwps.


^ permalink raw reply	[flat|nested] 48+ messages in thread
* [binutils-gdb/gdb-7.12-branch] gdb.base/default.exp regression
@ 2016-08-30 12:43 sergiodj+buildbot
  2016-08-30 15:49 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
  0 siblings, 1 reply; 48+ messages in thread
From: sergiodj+buildbot @ 2016-08-30 12:43 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT b82dedc7696daab1b7a4a28530f3eb94c6b4e62d ***

Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Branch: gdb-7.12-branch
Commit: b82dedc7696daab1b7a4a28530f3eb94c6b4e62d

gdb.base/default.exp regression

tty^M
(gdb) FAIL: gdb.base/default.exp: tty

gdb/testsuite/ChangeLog
2016-08-29  Jan Kratochvil  <jan.kratochvil@redhat.com>

	* gdb.base/default.exp (tty): Remove.


^ permalink raw reply	[flat|nested] 48+ messages in thread
* [binutils-gdb/gdb-7.12-branch] Sync proc_service definition with GLIBC
@ 2016-08-25 13:07 sergiodj+buildbot
  2016-08-25 17:51 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
  0 siblings, 1 reply; 48+ messages in thread
From: sergiodj+buildbot @ 2016-08-25 13:07 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT f2f45a7252a4bd977c135cc77536cbc0e9669cf2 ***

Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Branch: gdb-7.12-branch
Commit: f2f45a7252a4bd977c135cc77536cbc0e9669cf2

Sync proc_service definition with GLIBC

GLIBC BZ#20311 [1] proc_service.h install patch also remove 'const'
attributes from ps_get_thread_area and comment #15 discuss why to remove
the const attribute (basically since it a callback with the struct
ps_prochandle owned by the client it should be able to modify it if
it the case).

On default build this is not the issue and current g++ does not trigger
any issue with this mismatch declaration.  However, on some bootstrap
build configuration where gdbserver is build with gcc instead this
triggers:

error: conflicting types for 'ps_get_thread_area'

This patch fixes it by syncing the declaration with GLIBC.

[1] https://sourceware.org/bugzilla/show_bug.cgi?id=20311

gdb/ChangeLog:

2016-08-25  Adhemerval Zanella  <adhemerval.zanella@linaro.org>

	* aarch64-linux-nat.c (ps_get_thread_area): Remove const from
	struct ps_prochandle.
	* amd64-linux-nat.c (ps_get_thread_area): Likewise.
	* arm-linux-nat.c (ps_get_thread_area): Likewise.
	* gdb_proc_service.h (ps_get_thread_area): Likewise.
	* i386-linux-nat.c (ps_get_thread_area): Likewise.
	* m68klinux-nat.c (ps_get_thread_area): Likewise.
	* mips-linux-nat.c (ps_get_thread_area): Likewise.
	* nat/aarch64-linux.c (aarch64_ps_get_thread_area): Likewise.
	* nat/aarch64-linux.h (aarch64_ps_get_thread_area): Likewise.
	* xtensa-linux-nat.c (ps_get_thread_area): Likewise.

gdb/gdbserver/ChangeLog:

2016-08-25  Adhemerval Zanella  <adhemerval.zanella@linaro.org>

	PR server/20491
	* gdb_proc_service.h (ps_get_thread_area): Remove const from struct
	ps_prochandle.
	* linux-aarch64-low.c (ps_get_thread_area): Likewise.
	* linux-arm-low.c (ps_get_thread_area): Likewise.
	* linux-crisv32-low.c (ps_get_thread_area): Likewise.
	* linux-m68k-low.c (ps_get_thread_area): Likewise.
	* linux-mips-low.c (ps_get_thread_area): Likewise.
	* linux-nios2-low.c (ps_get_thread_area): Likewise.
	* linux-tic6x-low.c (ps_get_thread_area): Likewise.
	* linux-x86-low.c (ps_get_thread_area): Likewise.
	* linux-xtensa-low.c (ps_get_thread_area): Likewise.


^ permalink raw reply	[flat|nested] 48+ messages in thread
* [binutils-gdb/gdb-7.12-branch] Allow resetting an empty inferior-tty
@ 2016-08-24 22:31 sergiodj+buildbot
  2016-08-25  9:09 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
  0 siblings, 1 reply; 48+ messages in thread
From: sergiodj+buildbot @ 2016-08-24 22:31 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 2b3eaab2c3eadd12bbd56499c00dca8cefb81552 ***

Author: Simon Marchi <simon.marchi@ericsson.com>
Branch: gdb-7.12-branch
Commit: 2b3eaab2c3eadd12bbd56499c00dca8cefb81552

Allow resetting an empty inferior-tty

This patch allows the user to set the inferior-tty to "empty", in order
to come back to the default behaviour of using the same tty as gdb is
using.

This is already supported in MI (and tested in gdb.mi/mi-basics.exp).

I added a new test, set-inferior-tty.exp, where I test only the setting
and unsetting of the parameter.  It would be nice to actually test that
the inferior output properly goes to the separate tty, but that will be
for another day.

gdb/ChangeLog:

	* infcmd.c (set_inferior_io_terminal): Set inferior terminal to
	NULL if terminal_name is an empty string.
	(_initialize_infcmd): Make the argument of "set inferior-tty"
	optional, mention it in the help doc.

gdb/doc/ChangeLog:

	* gdb.texinfo (Input/Output): Mention possibility to unset
	inferior-tty.

gdb/testsuite/ChangeLog:

	* gdb.base/set-inferior-tty.exp: New file.
	* gdb.base/set-inferior-tty.c: New file.


^ permalink raw reply	[flat|nested] 48+ messages in thread
* [binutils-gdb/gdb-7.12-branch] x32: gdb: Fix 'call' insn relocation with qRelocInsn
@ 2016-08-24  6:02 sergiodj+buildbot
  2016-08-25  6:53 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
  0 siblings, 1 reply; 48+ messages in thread
From: sergiodj+buildbot @ 2016-08-24  6:02 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT c0c1412c584bc98d651354a029a50d054996bcef ***

Author: Pedro Alves <palves@redhat.com>
Branch: gdb-7.12-branch
Commit: c0c1412c584bc98d651354a029a50d054996bcef

x32: gdb: Fix 'call' insn relocation with qRelocInsn

Running the fast tracepoints tests against x32 gdbserver exposes a
latent bug.  E.g.,:

 (gdb)
 continue
 Continuing.
 Reading /media/sf_host-pedro/gdb/mygit/build-ubuntu-x32/gdb/testsuite/outputs/gdb.trace/change-loc/change-loc-2.sl from remote target...

 Thread 1 "change-loc" received signal SIGSEGV, Segmentation fault.
 func4 () at /home/pedro/gdb/src/gdb/testsuite/gdb.trace/change-loc.h:24
 24      }
 (gdb) FAIL: gdb.trace/change-loc.exp: 1 ftrace: continue to marker 2

The test sets a fast tracepoint on a shared library.  On x32, shared
libraries end up loaded somewhere in the upper 2GB of the 4GB address
space x32 has access to.  When gdbserver needs to copy an instruction
to execute it in the jump pad, it asks gdb to relocate/adjust it, with
the qRelocInsn packet.  gdb converts "call" instructions into a "push
$<2GB-4GB addr> + jmp" sequence, however, the "pushq" instruction sign
extends its operand, so later when the called function returns, it
returns to an incorrectly sign-extended address.  E.g.,
0xfffffffffabc0000 instead of 0xfabc0000, resulting in the
segmentation fault.

Fix this by converting calls at such addresses to "sub + mov + jmp"
sequences instead.

gdb/ChangeLog:
2016-08-23  Pedro Alves  <palves@redhat.com>

	* amd64-tdep.c (amd64_relocate_instruction) <callq>: Handle return
	addresses over 0x7fffffff.


^ permalink raw reply	[flat|nested] 48+ messages in thread
* [binutils-gdb/gdb-7.12-branch] x32: Avoid unsigned long when installing fast tracepoint jump pads
@ 2016-08-24  2:15 sergiodj+buildbot
  2016-08-24 18:29 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
  0 siblings, 1 reply; 48+ messages in thread
From: sergiodj+buildbot @ 2016-08-24  2:15 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 53e8498437380263d5321bf841c6de526e676347 ***

Author: Pedro Alves <palves@redhat.com>
Branch: gdb-7.12-branch
Commit: 53e8498437380263d5321bf841c6de526e676347

x32: Avoid unsigned long when installing fast tracepoint jump pads

We're casting through unsigned long to write a 64-bit immediate
operand of movabs (the comment said movl, but that was incorrect).
The problem is that unsigned long is 32-bit on x32, so we were writing
fewer bytes than necessary.

Fix this by using an 8 byte memcpy like in other similar places in the
function.

gdb/gdbserver/ChangeLog:
2016-08-23  Pedro Alves  <palves@redhat.com>

	* linux-x86-low.c (amd64_install_fast_tracepoint_jump_pad): Fix
	comment.  Use memcpy instead of casting through unsigned long.


^ permalink raw reply	[flat|nested] 48+ messages in thread
* [binutils-gdb/gdb-7.12-branch] x32 Fast tracepoints: Customize jump pad address
@ 2016-08-24  1:34 sergiodj+buildbot
  2016-08-24  2:19 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
  0 siblings, 1 reply; 48+ messages in thread
From: sergiodj+buildbot @ 2016-08-24  1:34 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 69389fd9fba29ab078f63d366612028fd1de25ab ***

Author: Pedro Alves <palves@redhat.com>
Branch: gdb-7.12-branch
Commit: 69389fd9fba29ab078f63d366612028fd1de25ab

x32 Fast tracepoints: Customize jump pad address

MAP_32BIT is ignored on x32, meaning the jump pad can end up somewhere
between 2GB and 4GB, too far away from the executable for 5-byte
relative jumps (JMP rel32).  So on x32, try explicitly placing the
jump pad near the middle of the available address space.

gdb/gdbserver/ChangeLog:
2016-08-23  Pedro Alves  <palves@redhat.com>

	* linux-amd64-ipa.c (alloc_jump_pad_buffer) [__ILP32__]: Try
	allocating around 0x80000000.


^ permalink raw reply	[flat|nested] 48+ messages in thread
* [binutils-gdb/gdb-7.12-branch] x32 Fast tracepoints: IPA target descriptions
@ 2016-08-24  0:49 sergiodj+buildbot
  2016-08-24  1:03 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
  0 siblings, 1 reply; 48+ messages in thread
From: sergiodj+buildbot @ 2016-08-24  0:49 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 7157552b0f8b4bb74910d85808244029c89229ff ***

Author: Pedro Alves <palves@redhat.com>
Branch: gdb-7.12-branch
Commit: 7157552b0f8b4bb74910d85808244029c89229ff

x32 Fast tracepoints: IPA target descriptions

Building GDB for x32 fails building the IPA, with:

   .../src/gdb/gdbserver/linux-amd64-ipa.c: In function const target_desc* get_ipa_tdesc(int):
   .../src/gdb/gdbserver/linux-amd64-ipa.c:182:14: error: tdesc_amd64_avx_linux was not declared in this scope
	  return tdesc_amd64_avx_linux;
		 ^
   .../src/gdb/gdbserver/linux-amd64-ipa.c:184:14: error: tdesc_amd64_mpx_linux was not declared in this scope
	  return tdesc_amd64_mpx_linux;
		 ^
   .../src/gdb/gdbserver/linux-amd64-ipa.c:186:14: error: tdesc_amd64_avx_mpx_linux was not declared in this scope
	  return tdesc_amd64_avx_mpx_linux;
		 ^
  [...]

The problem is that the IPA is trying to use the 64-bit descriptions,
when it should be using the x32 ones.

gdb/gdbserver/ChangeLog:
2016-08-23  Pedro Alves  <palves@redhat.com>

	PR gdb/20415
	* Makefile.in (x32-linux-ipa.o, x32-avx-linux-ipa.o)
	(x32-avx512-linux-ipa.o): New rules.
	* configure.ac (x86_64-*-linux*): New x32 check.
	* configure.srv (ipa_x32_linux_regobj): New.
	(x86_64-*-linux*): Use $ipa_x32_linux_regobj if building for x32.
	* linux-amd64-ipa.c (get_ipa_tdesc) [__ILP32__]: Return x32
	descriptions.
	(initialize_low_tracepoint) [__ILP32__]: Initialize x32
	descriptions.
	* configure: Regenerate.


^ permalink raw reply	[flat|nested] 48+ messages in thread
* [binutils-gdb/gdb-7.12-branch] Fix signals-state-child.exp in remote testing
@ 2016-08-23 17:02 sergiodj+buildbot
  2016-08-23 18:24 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
  0 siblings, 1 reply; 48+ messages in thread
From: sergiodj+buildbot @ 2016-08-23 17:02 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 22dc25f77bdff5954af60abd7a098ea6e76ad1f9 ***

Author: Yao Qi <yao.qi@linaro.org>
Branch: gdb-7.12-branch
Commit: 22dc25f77bdff5954af60abd7a098ea6e76ad1f9

Fix signals-state-child.exp in remote testing

Remote testing isn't considered in signals-state-child.exp, so the it
fails like

shell diff -s /scratch/yao/gdb/build-git/aarch64-linux-gnu/gdb/testsuite/outputs/gdb.base/signals-state-child/standalone.txt /scratch/yao/gdb/build-git/aarch64-linux-gnu/gdb/testsuite/outputs/gdb.base/signals-state-child/gdb.txt^M
diff: /scratch/yao/gdb/build-git/aarch64-linux-gnu/gdb/testsuite/outputs/gdb.base/signals-state-child/standalone.txt: No such file or directory^M
(gdb) FAIL: gdb.base/signals-state-child.exp: signals states are identical

This patch is to fix it.

gdb/testsuite:

2016-08-23  Yao Qi  <yao.qi@linaro.org>

	* gdb.base/signals-state-child.exp: Set variables gdb_txt and
	standalone_txt.  Delete gdb_txt and standalone_txt on host
	and target.  Spawn the binary on target.  Copy files from
	target to host.


^ permalink raw reply	[flat|nested] 48+ messages in thread
* [binutils-gdb/gdb-7.12-branch] null-terminate string in linespec_location_completer
@ 2016-08-19 19:27 sergiodj+buildbot
  2016-08-20  2:09 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
  0 siblings, 1 reply; 48+ messages in thread
From: sergiodj+buildbot @ 2016-08-19 19:27 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT d71004b8fe2ab0f3e1fc6dede74821f7c287f521 ***

Author: Yao Qi <yao.qi@linaro.org>
Branch: gdb-7.12-branch
Commit: d71004b8fe2ab0f3e1fc6dede74821f7c287f521

null-terminate string in linespec_location_completer

If I build gdb with -fsanitize=address and run tests, I get error,

malformed linespec error: unexpected colon^M
(gdb) PASS: gdb.linespec/ls-errs.exp: lang=C: break     :
break   :=================================================================^M
==3266==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x602000051451 at pc 0x2b5797a972a8 bp 0x7fffd8e0f3c0 sp 0x7fffd8e0f398^M
READ of size 2 at 0x602000051451 thread T0
    #0 0x2b5797a972a7 in __interceptor_strlen (/usr/lib/x86_64-linux-gnu/libasan.so.1+0x322a7)^M
    #1 0x7bd004 in compare_filenames_for_search(char const*, char const*) /home/yao/SourceCode/gnu/gdb/git/gdb/symtab.c:316^M
    #2 0x7bd310 in iterate_over_some_symtabs(char const*, char const*, int (*)(symtab*, void*), void*, compunit_symtab*, compunit_symtab*) /home/yao/SourceCode/gnu/gdb/git/gdb/symtab.c:411^M
    #3 0x7bd775 in iterate_over_symtabs(char const*, int (*)(symtab*, void*), void*) /home/yao/SourceCode/gnu/gdb/git/gdb/symtab.c:481^M
    #4 0x7bda15 in lookup_symtab(char const*) /home/yao/SourceCode/gnu/gdb/git/gdb/symtab.c:527^M
    #5 0x7d5e2a in make_file_symbol_completion_list_1 /home/yao/SourceCode/gnu/gdb/git/gdb/symtab.c:5635^M
    #6 0x7d61e1 in make_file_symbol_completion_list(char const*, char const*, char const*) /home/yao/SourceCode/gnu/gdb/git/gdb/symtab.c:5684^M
    #7 0x88dc06 in linespec_location_completer /home/yao/SourceCode/gnu/gdb/git/gdb/completer.c:288
....
0x602000051451 is located 0 bytes to the right of 1-byte region [0x602000051450,0x602000051451)^M
mallocated by thread T0 here:
    #0 0x2b5797ab97ef in __interceptor_malloc (/usr/lib/x86_64-linux-gnu/libasan.so.1+0x547ef)^M
    #1 0xbbfb8d in xmalloc /home/yao/SourceCode/gnu/gdb/git/gdb/common/common-utils.c:43^M
    #2 0x88dabd in linespec_location_completer /home/yao/SourceCode/gnu/gdb/git/gdb/completer.c:273^M
    #3 0x88e5ef in location_completer(cmd_list_element*, char const*, char const*) /home/yao/SourceCode/gnu/gdb/git/gdb/completer.c:531^M
    #4 0x8902e7 in complete_line_internal /home/yao/SourceCode/gnu/gdb/git/gdb/completer.c:964^

The code in question is here

       file_to_match = (char *) xmalloc (colon - text + 1);
       strncpy (file_to_match, text, colon - text + 1);

it is likely that file_to_match is not null-terminated.  The patch is
to strncpy 'colon - text' bytes and explicitly set '\0'.

gdb:

2016-08-19  Yao Qi  <yao.qi@linaro.org>

	* completer.c (linespec_location_completer): Make file_to_match
	null-terminated.


^ permalink raw reply	[flat|nested] 48+ messages in thread
* [binutils-gdb/gdb-7.12-branch] [GDB] Fix builds broken by proc-service changes.
@ 2016-08-15 21:31 sergiodj+buildbot
  2016-08-16 14:10 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
  0 siblings, 1 reply; 48+ messages in thread
From: sergiodj+buildbot @ 2016-08-15 21:31 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 2e9ffae9c70279ba7b226b9bf5f2f9b20968375c ***

Author: Matthew Wahab <matthew.wahab@arm.com>
Branch: gdb-7.12-branch
Commit: 2e9ffae9c70279ba7b226b9bf5f2f9b20968375c

[GDB] Fix builds broken by proc-service changes.

GLIBC BZ#20311 introduced a change to install proc_service.h so that gdb
didn't have to use the version it embeds in gdb_proc_service.h. The
embedded version is guarded by HAVE_PROC_SERVICE_H and
gdb_proc_service.h has a number other of includes and definitions, all
of which are uncondional except for an include for gregset.h. This is
only included if HAVE_PROC_SERIVCE_H is not defined.

This causes a build failure when cross compiling gdb with the latest
glibc because type definitions in gregset are used independently of
HAVE_PROC_SERIVCE_H. In particular, they are used in gdb_proc_service.h
when PRFPREGSET_T_BROKEN is set.

The error messages on the failure are
----
binutils-gdb/gdb/gdb_proc_service.h:173:9: error: gdb_fpregset_t does
not name a type; did you mean elf_fpregset_t?
 typedef gdb_fpregset_t gdb_prfpregset_t;
         ^~~~~~~~~~~~~~
         elf_fpregset_t

binutils-gdb/gdb/gdb_proc_service.h:173:9: error: gdb_fpregset_t does
not name a type; did you mean elf_fpregset_t?
 typedef gdb_fpregset_t gdb_prfpregset_t;
         ^~~~~~~~~~~~~~
         elf_fpregset_t

binutils-gdb/gdb/proc-service.c:218:15: error: gdb_prfpregset_t does
not name a type; did you mean gdb_fpregset_t?
         const gdb_prfpregset_t *fpregset)
               ^~~~~~~~~~~~~~~~
               gdb_fpregset_t
----

This patch moves the include for gregset.h to before the code guarded by
HAVE_PROC_SERIVCE_H, so that it is always included. This is enough to
fix the build.

2016-08-15  Matthew Wahab  <matthew.wahab@arm.com>

	PR gdb/20457
	* gdb_proc_service.h: Add an include of gregset.h
        [!HAVE_PROC_SERVICE_H]: Remove the include of gregset.h.


^ permalink raw reply	[flat|nested] 48+ messages in thread
* [binutils-gdb/gdb-7.12-branch] Fix warning in gdb.base/signals-state-child.c
@ 2016-08-12 15:06 sergiodj+buildbot
  2016-08-13 21:17 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
  0 siblings, 1 reply; 48+ messages in thread
From: sergiodj+buildbot @ 2016-08-12 15:06 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT c0c8e5aea12c938a1e73c1d32912b094c3329288 ***

Author: Yao Qi <yao.qi@linaro.org>
Branch: gdb-7.12-branch
Commit: c0c8e5aea12c938a1e73c1d32912b094c3329288

Fix warning in gdb.base/signals-state-child.c

I see the following warning when running signals-state-child.exp.

gdb/testsuite/gdb.base/signals-state-child.c:77:4: warning: too many arguments for format [-Wformat-extra-args]
    fprintf (out, "sigaction={sa_handler=", i);
    ^

this patch is to remove the argument from fprintf.

gdb/testsuite:

2016-08-12  Yao Qi  <yao.qi@linaro.org>

	* gdb.base/signals-state-child.c (main): Remove "i" from fprintf's
	argument list.


^ permalink raw reply	[flat|nested] 48+ messages in thread
* [binutils-gdb/gdb-7.12-branch] Fix fallout from gdb/20413's fix (x32: linux_ptrace_test_ret_to_nx: Cannot PTRACE_PEEKUSER)
@ 2016-08-12  6:37 sergiodj+buildbot
  2016-08-12 13:16 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
  0 siblings, 1 reply; 48+ messages in thread
From: sergiodj+buildbot @ 2016-08-12  6:37 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT e565c44e294111fdc2b84396917b0c4ffed916fb ***

Author: Pedro Alves <palves@redhat.com>
Branch: gdb-7.12-branch
Commit: e565c44e294111fdc2b84396917b0c4ffed916fb

Fix fallout from gdb/20413's fix (x32: linux_ptrace_test_ret_to_nx: Cannot PTRACE_PEEKUSER)

Fixes, on NIOS GNU/Linux:

  In file included from
  /scratch/mbilal/nois-lite/src/gdb-trunk/gdb/gdbserver/../nat/linux-ptrace.c:26:0:
  /scratch/mbilal/nois-lite/src/gdb-trunk/gdb/gdbserver/../gregset.h:27:23:
  error: unknown type name 'gregset_t'
   #define GDB_GREGSET_T gregset_t
			 ^

Fix this by including sys/procfs.h directly.  We shouldn't really be
including a gdb-only header in a gdb/nat/ file, anyway.  Whoops.

gdb/ChangeLog:
2016-08-11  Pedro Alves  <palves@redhat.com>

	PR gdb/20413
	* nat/linux-ptrace.c: Include <sys/procfs.h> instead of
	"gregset.h".


^ permalink raw reply	[flat|nested] 48+ messages in thread
* [binutils-gdb/gdb-7.12-branch] Introduce 'enum remove_bp_reason'
@ 2016-08-11  2:08 sergiodj+buildbot
  2016-08-12  0:33 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
  0 siblings, 1 reply; 48+ messages in thread
From: sergiodj+buildbot @ 2016-08-11  2:08 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT bbbbef233724142bd4ff5c288863a62c98b01ff1 ***

Author: Pedro Alves <palves@redhat.com>
Branch: gdb-7.12-branch
Commit: bbbbef233724142bd4ff5c288863a62c98b01ff1

Introduce 'enum remove_bp_reason'

Makes the code more obvious.

gdb/ChangeLog:
2016-08-10  Pedro Alves  <palves@redhat.com>

	PR gdb/19187
	* breakpoint.c (insertion_state_t): Delete.
	(enum remove_bp_reason): New.
	(detach_breakpoints, remove_breakpoint_1, remove_breakpoint):
	Adjust to use enum remove_bp_reason instead of insertion_state_t.


^ permalink raw reply	[flat|nested] 48+ messages in thread
* [binutils-gdb/gdb-7.12-branch] Fix PR gdb/20418 - Problems with synchronous commands and new-ui
@ 2016-08-10  4:56 sergiodj+buildbot
  2016-08-10 18:45 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
  0 siblings, 1 reply; 48+ messages in thread
From: sergiodj+buildbot @ 2016-08-10  4:56 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT b24bdfa398beba87b48fffeb3b1f9bcfe7bf924d ***

Author: Pedro Alves <palves@redhat.com>
Branch: gdb-7.12-branch
Commit: b24bdfa398beba87b48fffeb3b1f9bcfe7bf924d

Fix PR gdb/20418 - Problems with synchronous commands and new-ui

When executing commands on a secondary UI running the MI interpreter,
some commands that should be synchronous are not.  MI incorrectly
continues processing input right after the synchronous command is
sent, before the target stops.

The problem happens when we emit MI async events (=library-loaded,
etc.), and we go about restoring the previous terminal state, we end
up calling target_terminal_ours, which incorrectly always installs the
current UI's input_fd in the event loop...  That is, code like this:

   old_chain = make_cleanup_restore_target_terminal ();
   target_terminal_ours_for_output ();

   fprintf_unfiltered (mi->event_channel, "library-loaded");

...

   do_cleanups (old_chain);

The fix is to move the add_file_handler/delete_file_handler calls out
of target_terminal_$foo, making these completely no-ops unless called
with the main UI as current UI.

gdb/ChangeLog:
2016-08-09  Pedro Alves  <palves@redhat.com>

	PR gdb/20418
	* event-top.c (ui_register_input_event_handler)
	(ui_unregister_input_event_handler): New functions.
	(async_enable_stdin): Register input in the event loop.
	(async_disable_stdin): Unregister input from the event loop.
	(gdb_setup_readline): Register input in the event loop.
	* infrun.c (check_curr_ui_sync_execution_done): Register input in
	the event loop.
	* target.c (target_terminal_inferior): Don't unregister input from
	the event loop.
	(target_terminal_ours): Don't register input in the event loop.
	* target.h (target_terminal_inferior)
	(target_terminal_ours_for_output, target_terminal_ours): Update
	comments.
	* top.h (ui_register_input_event_handler)
	(ui_unregister_input_event_handler): New declarations.
	* utils.c (ui_unregister_input_event_handler_cleanup)
	(prepare_to_handle_input): New functions.
	(defaulted_query, prompt_for_continue): Use
	prepare_to_handle_input.

gdb/testsuite/ChangeLog:
2016-08-09  Pedro Alves  <palves@redhat.com>
	    Simon Marchi  <simon.marchi@ericsson.com>

	PR gdb/20418
	* gdb.mi/new-ui-mi-sync.c, gdb.mi/new-ui-mi-sync.exp: New files.
	* lib/mi-support.exp (mi_expect_interrupt): Remove anchors.


^ permalink raw reply	[flat|nested] 48+ messages in thread
* [binutils-gdb/gdb-7.12-branch] Fix PR mi/20431 - Missing MI prompts after sync execution MI command (-exec-continue, etc.) errors
@ 2016-08-10  2:14 sergiodj+buildbot
  2016-08-10 17:21 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
  0 siblings, 1 reply; 48+ messages in thread
From: sergiodj+buildbot @ 2016-08-10  2:14 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 4d38db46f6f6480ee33844164383ce40e5fc2440 ***

Author: Pedro Alves <palves@redhat.com>
Branch: gdb-7.12-branch
Commit: 4d38db46f6f6480ee33844164383ce40e5fc2440

Fix PR mi/20431 - Missing MI prompts after sync execution MI command (-exec-continue, etc.) errors

gdb 7.11 introduced an MI regression: a failing MI sync execution
command misses printing the MI prompt, and then all subsequent command
miss it too:

 $ gdb-7.11.1 -i=mi
 [...]
 p 1
 &"p 1\n"
 ~"$1 = 1"
 ~"\n"
 ^done
 (gdb)                                        <<< prompted ok
 -exec-continue
 ^error,msg="The program is not being run."   <<< missing prompt after this
 print 1
 &"print 1\n"
 ~"$2 = 1"
 ~"\n"
 ^done                                        <<< missing prompt after this


gdb 7.10.1 behaved correctly, even with "set mi-async on":

 -exec-continue
 ^error,msg="The program is not being run."
 (gdb)                                        <<< prompted ok

etc.

Bisecting points at:

  commit 0b333c5e7d6c
  Author: Pedro Alves <palves@redhat.com>
  Date:   Wed Sep 9 18:23:23 2015 +0100

      Merge async and sync code paths some more
  [...]

The problem is that when an exception is thrown, we leave the prompt
state set to PROMPT_BLOCKED, and then mi_execute_command_input_handler
doesn't print the prompt.  It used to work because before that patch,
we happened to skip disabling stdin if the current target didn't do
async (which it never does before execution).

I was surprised to find that this bug isn't caught by the testsuite,
so I made a thorough test that tests all combinations of pairs of:

 - a failing synchronous execution command
 - a failing non-execution command
 - a non-failing command

gdb/ChangeLog:
2016-08-09  Pedro Alves  <palves@redhat.com>

	PR mi/20431
	* mi/mi-main.c (mi_execute_command): Enable input and set prompt
	state to PROMPT_NEEDED.

gdb/testsuite/ChangeLog:
2016-08-09  Pedro Alves  <palves@redhat.com>

	PR mi/20431
	* gdb.mi/mi-cmd-error.exp: New file.


^ permalink raw reply	[flat|nested] 48+ messages in thread
* [binutils-gdb/gdb-7.12-branch] Fix PR gdb/18653: gdb disturbs inferior's inherited signal dispositions
@ 2016-08-09 22:55 sergiodj+buildbot
  2016-08-09 23:43 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
  0 siblings, 1 reply; 48+ messages in thread
From: sergiodj+buildbot @ 2016-08-09 22:55 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 35fcb4fc81e51295d14125785765e0ea3e132cd9 ***

Author: Pedro Alves <palves@redhat.com>
Branch: gdb-7.12-branch
Commit: 35fcb4fc81e51295d14125785765e0ea3e132cd9

Fix PR gdb/18653: gdb disturbs inferior's inherited signal dispositions

gdb's (or gdbserver's) own signal handling should not interfere with
the signal dispositions their spawned children inherit.  However, it
currently does.  For example, some paths in gdb cause SIGPIPE to be
set to SIG_IGN, and as consequence, the child starts with SIGPIPE to
set to SIG_IGN too, even though gdb was started with SIGPIPE set to
SIG_DFL.

This is because the exec family of functions does not reset the signal
disposition of signals that are set to SIG_IGN:

  http://pubs.opengroup.org/onlinepubs/7908799/xsh/execve.html

  Signals set to the default action (SIG_DFL) in the calling process
  image are set to the default action in the new process
  image. Signals set to be ignored (SIG_IGN) by the calling process
  image are set to be ignored by the new process image. Signals set to
  be caught by the calling process image are set to the default action
  in the new process image (see <signal.h>).

And neither does it reset signal masks or flags.

In order to be transparent, when spawning new child processes to debug
(with "run", etc.), reset signal actions and mask back to what was
originally inherited from gdb/gdbserver's parent, just before execing
the target program to debug.

gdb/ChangeLog:
2016-08-09  Pedro Alves  <palves@redhat.com>

	PR gdb/18653
	* Makefile.in (SFILES): Add
	common/signals-state-save-restore.c.
	(HFILES_NO_SRCDIR): Add common/signals-state-save-restore.h.
	(COMMON_OBS): Add signals-state-save-restore.o.
	(signals-state-save-restore.o): New rule.
	* configure: Regenerate.
	* fork-child.c: Include "signals-state-save-restore.h".
	(fork_inferior): Call restore_original_signals_state.
	* main.c: Include "signals-state-save-restore.h".
	(captured_main): Call save_original_signals_state.
	* common/common.m4: Add sigaction to AC_CHECK_FUNCS checks.
	* common/signals-state-save-restore.c: New file.
	* common/signals-state-save-restore.h: New file.

gdb/gdbserver/ChangeLog:
2016-08-09  Pedro Alves  <palves@redhat.com>

	PR gdb/18653
	* Makefile.in (OBS): Add signals-state-save-restore.o.
	(signals-state-save-restore.o): New rule.
	* config.in: Regenerate.
	* configure: Regenerate.
	* linux-low.c: Include "signals-state-save-restore.h".
	(linux_create_inferior): Call
	restore_original_signals_state.
	* server.c: Include "dispositions-save-restore.h".
	(captured_main): Call save_original_signals_state.

gdb/testsuite/ChangeLog:
2016-08-09  Pedro Alves  <palves@redhat.com>

	PR gdb/18653
	* gdb.base/signals-state-child.c: New file.
	* gdb.base/signals-state-child.exp: New file.
	* gdb.gdb/selftest.exp (do_steps_and_nexts): Add new pattern.


^ permalink raw reply	[flat|nested] 48+ messages in thread
* [binutils-gdb/gdb-7.12-branch] gdb/configure --help: suggest --disable-build-with-cxx instead of --enable...
@ 2016-08-05 17:24 sergiodj+buildbot
  2016-08-05 18:34 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
  0 siblings, 1 reply; 48+ messages in thread
From: sergiodj+buildbot @ 2016-08-05 17:24 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 2b8c86008c05d4ca21971fe4f680288cd28108c1 ***

Author: Pedro Alves <palves@redhat.com>
Branch: gdb-7.12-branch
Commit: 2b8c86008c05d4ca21971fe4f680288cd28108c1

gdb/configure --help: suggest --disable-build-with-cxx instead of --enable...

We build by default with a C++ compiler, but "configure --help" still
says "--enable-build-with-cxx", which hints that it is by default
disabled.  Update the --help text.

gdb/ChangeLog:
2016-08-05  Pedro Alves  <palves@redhat.com>

	* build-with-cxx.m4: Change help string to be in terms of
	--disable-build-with-cxx.
	* configure: Regenerate.

gdb/gdbserver/ChangeLog:
2016-08-05  Pedro Alves  <palves@redhat.com>

	* configure: Regenerate.


^ permalink raw reply	[flat|nested] 48+ messages in thread
* [binutils-gdb/gdb-7.12-branch] Avoid potential memory leak in find_frame_funname
@ 2016-08-03 19:10 sergiodj+buildbot
  2016-08-03 22:00 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
  0 siblings, 1 reply; 48+ messages in thread
From: sergiodj+buildbot @ 2016-08-03 19:10 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT d2ed2edaf76fc10505214290d04c3cf312acfbca ***

Author: Tom Tromey <tom@tromey.com>
Branch: gdb-7.12-branch
Commit: d2ed2edaf76fc10505214290d04c3cf312acfbca

Avoid potential memory leak in find_frame_funname

The PR 18565 thread pointed out that, if cp_remove_params can throw
(we aren't quite sure), then find_frame_funname could leak some
memory.  This patch avoids any potential issue by rearranging some
code in find_frame_funname.

Built and regtested on x86-64 Fedora 24.

2016-08-03  Tom Tromey  <tom@tromey.com>

	* stack.c (find_frame_funname): Avoid any possible leak in case
	cp_remove_params can throw.


^ permalink raw reply	[flat|nested] 48+ messages in thread
* [binutils-gdb/gdb-7.12-branch] Bump GDB version number to 7.11.90.DATE-git.
@ 2016-08-01 19:25 sergiodj+buildbot
  2016-08-01 22:45 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
  0 siblings, 1 reply; 48+ messages in thread
From: sergiodj+buildbot @ 2016-08-01 19:25 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 7ff72836aecd3e64f3d5ef4e5e444c82ad2c7086 ***

Author: Joel Brobecker <brobecker@adacore.com>
Branch: gdb-7.12-branch
Commit: 7ff72836aecd3e64f3d5ef4e5e444c82ad2c7086

Bump GDB version number to 7.11.90.DATE-git.

gdb/ChangeLog:

	* version.in: Set GDB version number to 7.11.90.DATE-git.


^ permalink raw reply	[flat|nested] 48+ messages in thread
* [binutils-gdb/gdb-7.12-branch] Bump version to 7.11.90.DATE-git.
@ 2016-08-01 16:14 sergiodj+buildbot
  2016-08-01 16:35 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
  0 siblings, 1 reply; 48+ messages in thread
From: sergiodj+buildbot @ 2016-08-01 16:14 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT d1c4e52ec0c8d13a04588e3abfb3d6b1df942905 ***

Author: Joel Brobecker <brobecker@adacore.com>
Branch: gdb-7.12-branch
Commit: d1c4e52ec0c8d13a04588e3abfb3d6b1df942905

Bump version to 7.11.90.DATE-git.

Now that the GDB 7.12 branch has been created, we can
bump the version number.

gdb/ChangeLog:

	GDB 7.12 branch created (41bfcd638a4e0e48b96ce4de2845372dea481322):
	* version.in: Bump version to 7.11.90.DATE-git.


^ permalink raw reply	[flat|nested] 48+ messages in thread

end of thread, other threads:[~2016-12-23 16:53 UTC | newest]

Thread overview: 48+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-08-01 18:28 [binutils-gdb/gdb-7.12-branch] gdb/NEWS: rename "since GDB 7.11" into "in GDB 7.12" sergiodj+buildbot
2016-08-01 18:28 ` Failures on Fedora-x86_64-m32, branch gdb-7.12-branch sergiodj+buildbot
2016-08-01 18:40 ` Failures on Fedora-x86_64-cc-with-index, " sergiodj+buildbot
2016-08-01 18:43 ` Failures on Fedora-x86_64-native-extended-gdbserver-m32, " sergiodj+buildbot
2016-08-01 18:52 ` Failures on Fedora-x86_64-native-extended-gdbserver-m64, " sergiodj+buildbot
2016-08-01 19:04 ` Failures on Fedora-i686, " sergiodj+buildbot
2016-08-01 20:02 ` Failures on Debian-x86_64-m64, " sergiodj+buildbot
2016-08-01 21:07 ` Failures on Debian-s390x-native-gdbserver-m64, " sergiodj+buildbot
2016-08-01 21:34 ` Failures on Debian-i686, " sergiodj+buildbot
2016-08-01 21:53 ` Failures on Debian-s390x-native-extended-gdbserver-m64, " sergiodj+buildbot
2016-08-01 22:25 ` Failures on Debian-i686-native-extended-gdbserver, " sergiodj+buildbot
2016-08-01 22:46 ` Failures on Fedora-s390x-m64, " sergiodj+buildbot
2016-08-02  4:48 ` Failures on Fedora-ppc64be-m64, " sergiodj+buildbot
2016-08-02  5:28 ` Failures on Fedora-ppc64be-native-gdbserver-m64, " sergiodj+buildbot
2016-08-02  5:48 ` Failures on Fedora-ppc64be-native-extended-gdbserver-m64, " sergiodj+buildbot
2016-08-02  6:10 ` Failures on Fedora-ppc64be-cc-with-index, " sergiodj+buildbot
2016-08-02  6:12 ` Failures on Fedora-ppc64le-native-extended-gdbserver-m64, " sergiodj+buildbot
2016-08-02  6:35 ` Failures on Fedora-ppc64le-native-gdbserver-m64, " sergiodj+buildbot
  -- strict thread matches above, loose matches on Subject: below --
2016-12-20 20:16 [binutils-gdb/gdb-7.12-branch] gdb: Fix C and C++03 builds sergiodj+buildbot
2016-12-23 17:26 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
2016-12-09 17:42 [binutils-gdb/gdb-7.12-branch] Create tdep->rl78_psw_type lazily sergiodj+buildbot
2016-12-10  2:01 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
2016-10-12 12:26 [binutils-gdb/gdb-7.12-branch] [AArch64] Track FP registers in prologue analyzer sergiodj+buildbot
2016-10-12 13:54 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
2016-10-07 17:29 [binutils-gdb/gdb-7.12-branch] Set GDB version number to 7.12 sergiodj+buildbot
2016-10-07 17:39 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
2016-10-06 21:39 [binutils-gdb/gdb-7.12-branch] frame.h: Forward-declare struct ui_out sergiodj+buildbot
2016-10-07  5:25 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
2016-10-06 15:41 [binutils-gdb/gdb-7.12-branch] stack: fix gdb.dwarf2/dw2-undefined-ret-addr.exp regression sergiodj+buildbot
2016-10-06 17:29 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
2016-10-03 23:07 [binutils-gdb/gdb-7.12-branch] Introduce cleanup to restore current_uiout sergiodj+buildbot
2016-10-04  3:39 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
2016-09-29  7:11 [binutils-gdb/gdb-7.12-branch] Fix PR 20345 - call_function_by_hand_dummy: Assertion `tp->thread_fsm == &sm->thread_fsm' failed sergiodj+buildbot
2016-09-29 16:42 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
2016-09-17  5:25 [binutils-gdb/gdb-7.12-branch] Backport lastest POWER9 support to match final ISA 3.0 documentation sergiodj+buildbot
2016-09-19  4:58 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
2016-09-01  8:54 [binutils-gdb/gdb-7.12-branch] Fix lwp_suspend/unsuspend imbalance in linux_wait_1 sergiodj+buildbot
2016-09-01 10:02 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
2016-08-30 12:43 [binutils-gdb/gdb-7.12-branch] gdb.base/default.exp regression sergiodj+buildbot
2016-08-30 15:49 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
2016-08-25 13:07 [binutils-gdb/gdb-7.12-branch] Sync proc_service definition with GLIBC sergiodj+buildbot
2016-08-25 17:51 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
2016-08-24 22:31 [binutils-gdb/gdb-7.12-branch] Allow resetting an empty inferior-tty sergiodj+buildbot
2016-08-25  9:09 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
2016-08-24  6:02 [binutils-gdb/gdb-7.12-branch] x32: gdb: Fix 'call' insn relocation with qRelocInsn sergiodj+buildbot
2016-08-25  6:53 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
2016-08-24  2:15 [binutils-gdb/gdb-7.12-branch] x32: Avoid unsigned long when installing fast tracepoint jump pads sergiodj+buildbot
2016-08-24 18:29 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
2016-08-24  1:34 [binutils-gdb/gdb-7.12-branch] x32 Fast tracepoints: Customize jump pad address sergiodj+buildbot
2016-08-24  2:19 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
2016-08-24  0:49 [binutils-gdb/gdb-7.12-branch] x32 Fast tracepoints: IPA target descriptions sergiodj+buildbot
2016-08-24  1:03 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
2016-08-23 17:02 [binutils-gdb/gdb-7.12-branch] Fix signals-state-child.exp in remote testing sergiodj+buildbot
2016-08-23 18:24 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
2016-08-19 19:27 [binutils-gdb/gdb-7.12-branch] null-terminate string in linespec_location_completer sergiodj+buildbot
2016-08-20  2:09 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
2016-08-15 21:31 [binutils-gdb/gdb-7.12-branch] [GDB] Fix builds broken by proc-service changes sergiodj+buildbot
2016-08-16 14:10 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
2016-08-12 15:06 [binutils-gdb/gdb-7.12-branch] Fix warning in gdb.base/signals-state-child.c sergiodj+buildbot
2016-08-13 21:17 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
2016-08-12  6:37 [binutils-gdb/gdb-7.12-branch] Fix fallout from gdb/20413's fix (x32: linux_ptrace_test_ret_to_nx: Cannot PTRACE_PEEKUSER) sergiodj+buildbot
2016-08-12 13:16 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
2016-08-11  2:08 [binutils-gdb/gdb-7.12-branch] Introduce 'enum remove_bp_reason' sergiodj+buildbot
2016-08-12  0:33 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
2016-08-10  4:56 [binutils-gdb/gdb-7.12-branch] Fix PR gdb/20418 - Problems with synchronous commands and new-ui sergiodj+buildbot
2016-08-10 18:45 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
2016-08-10  2:14 [binutils-gdb/gdb-7.12-branch] Fix PR mi/20431 - Missing MI prompts after sync execution MI command (-exec-continue, etc.) errors sergiodj+buildbot
2016-08-10 17:21 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
2016-08-09 22:55 [binutils-gdb/gdb-7.12-branch] Fix PR gdb/18653: gdb disturbs inferior's inherited signal dispositions sergiodj+buildbot
2016-08-09 23:43 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
2016-08-05 17:24 [binutils-gdb/gdb-7.12-branch] gdb/configure --help: suggest --disable-build-with-cxx instead of --enable sergiodj+buildbot
2016-08-05 18:34 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
2016-08-03 19:10 [binutils-gdb/gdb-7.12-branch] Avoid potential memory leak in find_frame_funname sergiodj+buildbot
2016-08-03 22:00 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
2016-08-01 19:25 [binutils-gdb/gdb-7.12-branch] Bump GDB version number to 7.11.90.DATE-git sergiodj+buildbot
2016-08-01 22:45 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot
2016-08-01 16:14 [binutils-gdb/gdb-7.12-branch] Bump version to 7.11.90.DATE-git sergiodj+buildbot
2016-08-01 16:35 ` Failures on Debian-x86_64-m64, branch gdb-7.12-branch sergiodj+buildbot

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 read-only IMAP folder(s) and NNTP newsgroup(s).