Linux x86 low-level debug register code synchronization
[deliverable/binutils-gdb.git] / gdb / gdbserver / ChangeLog
index cd79d75f79036313a2de0ec53267ce30244fc83b..10135aeb2b9d5e65f6a75f43d4be4f92c5f6ccfe 100644 (file)
@@ -1,3 +1,411 @@
+2015-03-24  Gary Benson  <gbenson@redhat.com>
+
+       * linux-x86-low.c (x86_linux_dr_get): Add assertion.
+       Use perror_with_name.  Pass string through gettext.
+       (x86_linux_dr_set): Likewise.
+
+2015-03-24  Gary Benson  <gbenson@redhat.com>
+
+       * linux-x86-low.c (x86_dr_low_set_addr): Rename to...
+       (x86_linux_dr_set_addr): ...this.
+       (x86_dr_low_get_addr): Rename to...
+       (x86_linux_dr_get_addr): ...this.
+       (x86_dr_low_set_control): Rename to...
+       (x86_linux_dr_set_control): ...this.
+       (x86_dr_low_get_control): Rename to...
+       (x86_linux_dr_get_control): ...this.
+       (x86_dr_low_get_status): Rename to...
+       (x86_linux_dr_get_status): ...this.
+       (x86_dr_low): Update with new function names.
+
+2015-03-24  Gary Benson  <gbenson@redhat.com>
+
+       * Makefile.in (x86-linux.o): New rule.
+       * configure.srv: Add x86-linux.o to relevant targets.
+       * linux-low.c (lwp_set_arch_private_info): New function.
+       (lwp_arch_private_info): Likewise.
+       * linux-x86-low.c: Include nat/x86-linux.h.
+       (arch_lwp_info): Removed structure.
+       (update_debug_registers_callback):
+       Use lwp_set_debug_registers_changed.
+       (x86_linux_prepare_to_resume): Use lwp_debug_registers_changed
+       and lwp_set_debug_registers_changed.
+       (x86_linux_new_thread): Use lwp_set_debug_registers_changed.
+
+2015-03-24  Gary Benson  <gbenson@redhat.com>
+
+       * linux-low.h (linux_target_ops) <new_thread>: Changed signature.
+       * linux-arm-low.c (arm_new_thread): Likewise.
+       * linux-aarch64-low.c (aarch64_linux_new_thread): Likewise.
+       * linux-mips-low.c (mips_linux_new_thread): Likewise.
+       * linux-x86-low.c (x86_linux_new_thread): Likewise.
+       * linux-low.c (add_lwp): Update the_low_target.new_thread call.
+
+2015-03-24  Gary Benson  <gbenson@redhat.com>
+
+       * linux-low.c (ptid_of_lwp): New function.
+       (lwp_is_stopped): Likewise.
+       (lwp_stop_reason): Likewise.
+       * linux-x86-low.c (update_debug_registers_callback):
+       Use lwp_is_stopped.
+       (x86_linux_prepare_to_resume): Use ptid_of_lwp and
+       lwp_stop_reason.
+
+2015-03-24  Gary Benson  <gbenson@redhat.com>
+
+       * linux-low.h (linux_stop_lwp): Remove declaration.
+
+2015-03-24  Gary Benson  <gbenson@redhat.com>
+
+       * linux-low.h: Include nat/linux-nat.h.
+       * linux-low.c (iterate_over_lwps_args): New structure.
+       (iterate_over_lwps_filter): New function.
+       (iterate_over_lwps): Likewise.
+       * linux-x86-low.c (update_debug_registers_callback):
+       Update signature to what iterate_over_lwps expects.
+       Remove PID check that iterate_over_lwps now performs.
+       (x86_dr_low_set_addr): Use iterate_over_lwps.
+       (x86_dr_low_set_control): Likewise.
+
+2015-03-24  Gary Benson  <gbenson@redhat.com>
+
+       * linux-x86-low.c (x86_debug_reg_state): New function.
+       (x86_linux_prepare_to_resume): Use the above.
+
+2015-03-24  Gary Benson  <gbenson@redhat.com>
+
+       * linux-low.c (current_lwp_ptid): New function.
+       * linux-x86-low.c: Include nat/linux-nat.h.
+       (x86_dr_low_get_addr): Use current_lwp_ptid.
+       (x86_dr_low_get_control): Likewise.
+       (x86_dr_low_get_status): Likewise.
+
+2015-03-20  Pedro Alves  <palves@redhat.com>
+
+       * tracepoint.c (cmd_qtstatus): Make "str" const.
+
+2015-03-20  Pedro Alves  <palves@redhat.com>
+
+       * server.c (handle_general_set): Make "req_str" const.
+
+2015-03-19  Pedro Alves  <palves@redhat.com>
+
+       * linux-low.c (linux_resume_one_lwp): Rename to ...
+       (linux_resume_one_lwp_throw): ... this.  Don't handle ESRCH here,
+       instead call perror_with_name.
+       (check_ptrace_stopped_lwp_gone): New function.
+       (linux_resume_one_lwp): Reimplement as wrapper around
+       linux_resume_one_lwp_throw that swallows errors if the LWP is
+       gone.
+
+2015-03-19  Pedro Alves  <palves@redhat.com>
+
+       * linux-low.c (count_events_callback, select_event_lwp_callback):
+       No longer check whether the thread has resume_stop as last resume
+       kind.
+
+2015-03-19 Pedro Alves  <palves@redhat.com>
+
+       * linux-low.c (count_events_callback, select_event_lwp_callback):
+       Use the lwp's status_pending_p field, not the thread's.
+
+2015-03-19  Pedro Alves  <palves@redhat.com>
+
+       * linux-low.c (select_event_lwp_callback): Update comments to
+       no longer mention SIGTRAP.
+
+2015-03-18  Gary Benson  <gbenson@redhat.com>
+
+       * server.c (handle_query): Do not report vFile:fstat as supported.
+
+2015-03-11  Gary Benson  <gbenson@redhat.com>
+
+       * hostio.c (sys/types.h): New include.
+       (sys/stat.h): Likewise.
+       (common-remote-fileio.h): Likewise.
+       (handle_fstat): New function.
+       (handle_vFile): Handle vFile:fstat packets.
+
+2015-03-11  Gary Benson  <gbenson@redhat.com>
+
+       * configure.ac (AC_CHECK_MEMBERS): Add checks for
+       struct stat.st_blocks and struct stat.st_blksize.
+       * configure: Regenerate.
+       * config.in: Likewise.
+       * Makefile.in (SFILES): Add common/common-remote-fileio.c.
+       (OBS): Add common-remote-fileio.o.
+       (common-remote-fileio.o): New rule.
+
+2015-03-09  Pedro Alves  <palves@redhat.com>
+
+       * tracepoint.c (gdb_agent_helper_thread): Cast '&sockaddr' to
+       'struct sockaddr' pointer in 'accept' call.
+
+2015-03-09  Pedro Alves  <palves@redhat.com>
+
+       Revert:
+       2015-03-07  Pedro Alves  <palves@redhat.com>
+       * gdbreplay.c: No longer include <netinet/in.h>, <sys/socket.h>,
+       or <winsock2.h> here.  Instead include "gdb_socket.h".
+       (remote_open): Use union gdb_sockaddr_u.
+       * remote-utils.c: No longer include <netinet/in.h>, <sys/socket.h>
+       or <winsock2.h> here.  Instead include "gdb_socket.h".
+       (handle_accept_event, remote_prepare): Use union gdb_sockaddr_u.
+       * tracepoint.c: Include "gdb_socket.h" instead of <sys/socket.h>
+       or <sys/un.h>.
+       (init_named_socket, gdb_agent_helper_thread): Use union
+       gdb_sockaddr_u.
+
+2015-03-07  Pedro Alves  <palves@redhat.com>
+
+       * configure.ac (build_warnings): Move
+       -Wdeclaration-after-statement to the C-specific set.
+       * configure: Regenerate.
+
+2015-03-07  Pedro Alves  <palves@redhat.com>
+
+       * gdbreplay.c: No longer include <netinet/in.h>, <sys/socket.h>,
+       or <winsock2.h> here.  Instead include "gdb_socket.h".
+       (remote_open): Use union gdb_sockaddr_u.
+       * remote-utils.c: No longer include <netinet/in.h>, <sys/socket.h>
+       or <winsock2.h> here.  Instead include "gdb_socket.h".
+       (handle_accept_event, remote_prepare): Use union gdb_sockaddr_u.
+       * tracepoint.c: Include "gdb_socket.h" instead of <sys/socket.h>
+       or <sys/un.h>.
+       (init_named_socket, gdb_agent_helper_thread): Use union
+       gdb_sockaddr_u.
+
+2015-03-07  Pedro Alves  <palves@redhat.com>
+
+       Adjust all callers of TRY_CATCH to use TRY/CATCH/END_CATCH
+       instead.
+
+2015-03-06  Yao Qi  <yao.qi@linaro.org>
+
+       * linux-aarch64-low.c (aarch64_insert_point): Use
+       show_debug_regs as a boolean.
+       (aarch64_remove_point): Likewise.
+
+2015-03-05  Pedro Alves  <palves@redhat.com>
+
+       * lynx-low.c (lynx_target_ops): Install NULL hooks for
+       stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
+       stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint.
+       * nto-low.c (nto_target_ops): Likewise.
+       * spu-low.c (spu_target_ops): Likewise.
+       * win32-low.c (win32_target_ops): Likewise.
+
+2015-03-04  Pedro Alves  <palves@redhat.com>
+
+        * linux-low.c (check_stopped_by_breakpoint) [USE_SIGTRAP_SIGINFO]:
+       Decide whether a breakpoint triggered based on the SIGTRAP's
+       siginfo.si_code.
+        (thread_still_has_status_pending_p) [USE_SIGTRAP_SIGINFO]: Don't check whether a
+        breakpoint is inserted if relying on SIGTRAP's siginfo.si_code.
+       (linux_low_filter_event): Check for breakpoints before checking
+       watchpoints.
+       (linux_wait_1): Don't re-increment the PC if relying on SIGTRAP's
+       siginfo.si_code.
+        (linux_stopped_by_sw_breakpoint)
+        (linux_supports_stopped_by_sw_breakpoint)
+        (linux_stopped_by_hw_breakpoint)
+        (linux_supports_stopped_by_hw_breakpoint): New functions.
+        (linux_target_ops): Install new target methods.
+
+2015-03-04  Pedro Alves  <palves@redhat.com>
+
+       * remote-utils.c (prepare_resume_reply): Report swbreak/hbreak.
+       * server.c (swbreak_feature, hwbreak_feature): New globals.
+       (handle_query) <qSupported>: Handle "swbreak+" and "hwbreak+".
+       (captured_main): Clear swbreak_feature and hwbreak_feature.
+       * server.h (swbreak_feature, hwbreak_feature): Declare.
+       * target.h (struct target_ops) <stopped_by_sw_breakpoint,
+       supports_stopped_by_sw_breakpoint, stopped_by_hw_breakpoint,
+       supports_stopped_by_hw_breakpoint>: New fields.
+       (target_supports_stopped_by_sw_breakpoint)
+       (target_stopped_by_sw_breakpoint)
+       (target_supports_stopped_by_hw_breakpoint)
+       (target_stopped_by_hw_breakpoint): Declare.
+
+2015-03-04  Pedro Alves  <palves@redhat.com>
+
+       enum lwp_stop_reason -> enum target_stop_reason
+       * linux-low.c (check_stopped_by_breakpoint): Adjust.
+       (thread_still_has_status_pending_p, check_stopped_by_watchpoint)
+       (linux_wait_1, stuck_in_jump_pad_callback)
+       (move_out_of_jump_pad_callback, linux_resume_one_lwp)
+       (linux_stopped_by_watchpoint):
+       * linux-low.h (enum lwp_stop_reason): Delete.
+       (struct lwp_info) <stop_reason>: Now an enum target_stop_reason.
+       * linux-x86-low.c (x86_linux_prepare_to_resume): Adjust.
+
+2015-03-04  Yao Qi  <yao.qi@linaro.org>
+
+       * Makefile.in (SFILES): Add linux-aarch64-low.c.
+
+2015-03-03  Gary Benson  <gbenson@redhat.com>
+
+       * hostio.c (handle_vFile): Fix prefix lengths.
+
+2015-03-03  Markus Metzger  <markus.t.metzger@intel.com>
+
+       * linux-low.c (linux_low_enable_btrace): Do not overwrite non-zero
+       ptr_bits.
+
+2015-03-02  Andreas Arnez  <arnez@linux.vnet.ibm.com>
+
+       * Makefile.in (s390-vx-linux64.c, s390-tevx-linux64.c)
+       (s390x-vx-linux64.c, s390x-tevx-linux64.c): New rules.
+       (clean): Add "rm -f" for above C files.
+       * configure.srv (srv_regobj): Add s390-vx-linux64.o,
+       s390-tevx-linux64.o, s390x-vx-linux64.o, and s390x-tevx-linux64.o.
+       (srv_xmlfiles): Add s390-vx-linux64.xml, s390-tevx-linux64.xml,
+       s390x-vx-linux64.xml, s390x-tevx-linux64.xml, and s390-vx.xml.
+       * linux-s390-low.c (HWCAP_S390_VX): New macro.
+       (init_registers_s390_vx_linux64, init_registers_s390_tevx_linux64)
+       (init_registers_s390x_vx_linux64)
+       (init_registers_s390x_tevx_linux64)
+       (tdesc_s390_vx_linux64, tdesc_s390_tevx_linux64)
+       (tdesc_s390x_vx_linux64, tdesc_s390x_tevx_linux64): New extern
+       declarations.
+       (s390_fill_vxrs_low, s390_store_vxrs_low, s390_fill_vxrs_high)
+       (s390_store_vxrs_high): New functions.
+       (s390_regsets): Add entries for NT_S390_VXRS_LOW and
+       NT_S390_VXRS_HIGH.
+       (s390_arch_setup): Add logic for selecting one of the new target
+       descriptions.  Activate the new vector regsets if applicable.
+       (initialize_low_arch): Also invoke init_registers_s390_vx_linux64,
+       init_registers_s390_tevx_linux64, init_registers_s390x_vx_linux64,
+       and init_registers_s390x_tevx_linux64.
+
+2015-03-01  Pedro Alves  <palves@redhat.com>
+
+       * linux-i386-ipa.c (gdb_agent_get_raw_reg): Constify 'raw_regs'
+       parameter.
+
+2015-02-27  Pedro Alves  <palves@redhat.com>
+
+       * linux-x86-low.c (u_debugreg_offset): New function.
+       (x86_linux_dr_get, x86_linux_dr_set): Use it.
+
+2015-02-27  Pedro Alves  <palves@redhat.com>
+
+       * gdb_proc_service.h: Wrap with EXTERN_C_PUSH/EXTERN_C_POP.
+       [!HAVE_PROC_SERVICE_H] (struct ps_prochandle): Forward declare.
+       [!HAVE_PROC_SERVICE_H] (ps_pdread, ps_pdwrite, ps_ptread)
+       ps_ptwrite, ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
+       (ps_lsetfpregs, ps_getpid)
+       (ps_get_thread_area, ps_pglobal_lookup, ps_pstop, ps_pcontinue)
+       (ps_lstop, ps_lcontinue, ps_lgetxregsize, ps_lgetxregs)
+       (ps_lsetxregs, ps_plog): Declare.
+
+2015-02-27  Pedro Alves  <palves@redhat.com>
+
+       * linux-amd64-ipa.c (gdb_agent_get_raw_reg): Use
+       IP_AGENT_EXPORT_FUNC.
+       * linux-i386-ipa.c (gdb_agent_get_raw_reg): Use
+       IP_AGENT_EXPORT_FUNC.
+       * tracepoint.c (ATTR_USED, ATTR_NOINLINE, ATTR_CONSTRUCTOR)
+       (IP_AGENT_EXPORT): Delete.
+       (gdb_tp_heap_buffer, gdb_jump_pad_buffer, gdb_jump_pad_buffer_end)
+       (gdb_trampoline_buffer, gdb_trampoline_buffer_end)
+       (gdb_trampoline_buffer_error, collecting, gdb_collect)
+       (stop_tracing, flush_trace_buffer, about_to_request_buffer_space)
+       (trace_buffer_is_full, stopping_tracepoint, expr_eval_result)
+       (error_tracepoint, tracepoints, tracing, trace_buffer_ctrl)
+       (trace_buffer_ctrl_curr, trace_buffer_lo, trace_buffer_hi)
+       (traceframe_read_count, traceframe_write_count)
+       (traceframes_created, trace_state_variables, get_raw_reg)
+       (get_trace_state_variable_value, set_trace_state_variable_value)
+       (ust_loaded, helper_thread_id, cmd_buf): Use
+       IPA_SYM_EXPORTED_NAME.
+       (stop_tracing, flush_trace_buffer): Use IP_AGENT_EXPORT_FUNC.
+       (tracepoints) Use IP_AGENT_EXPORT_VAR.
+       (stopping_tracepoint, trace_buffer_is_full, expr_eval_result): Use
+       IP_AGENT_EXPORT_VAR and wrap in EXTERN_C_PUSH/EXTERN_C_POP.
+       (last_tracepoint): Move into !IN_PROCESS_AGENT block.
+       (error_tracepoint): Use IP_AGENT_EXPORT_VAR and wrap in
+       EXTERN_C_PUSH/EXTERN_C_POP.
+       (trace_state_variables): Use IP_AGENT_EXPORT_VAR.
+       (trace_buffer_lo, trace_buffer_hi): Use IP_AGENT_EXPORT_VAR and
+       wrap in EXTERN_C_PUSH/EXTERN_C_POP.
+       (trace_buffer_ctrl, trace_buffer_ctrl_curr)
+       (traceframe_write_count, traceframe_read_count)
+       (traceframes_created, tracing): Use IP_AGENT_EXPORT_VAR.
+       (about_to_request_buffer_space, get_trace_state_variable_value)
+       (set_trace_state_variable_value): Use IP_AGENT_EXPORT_FUNC.
+       (collecting): Use IP_AGENT_EXPORT_VAR and wrap in
+       EXTERN_C_PUSH/EXTERN_C_POP.
+       (gdb_collect): Use IP_AGENT_EXPORT_FUNC.
+       (ust_loaded, cmd_buf): Use IP_AGENT_EXPORT_VAR.
+       (helper_thread_id, gdb_agent_capability): Use IP_AGENT_EXPORT_VAR
+       and wrap in EXTERN_C_PUSH/EXTERN_C_POP.
+       (gdb_tp_heap_buffer, gdb_jump_pad_buffer, gdb_jump_pad_buffer_end)
+       (gdb_trampoline_buffer, gdb_trampoline_buffer_end)
+       (gdb_trampoline_buffer_error): Use IP_AGENT_EXPORT_VAR.
+       * tracepoint.h (ATTR_USED, ATTR_NOINLINE, EXPORTED_SYMBOL):
+       Define.
+       (IP_AGENT_EXPORT_FUNC, IP_AGENT_EXPORT_VAR)
+       (IP_AGENT_EXPORT_VAR_DECL): Define.
+       (tracing): Declare.
+       (gdb_agent_get_raw_reg): Declare.
+
+2015-02-27  Tom Tromey  <tromey@redhat.com>
+           Pedro Alves  <palves@redhat.com>
+
+       Rename symbols whose names are reserved C++ keywords throughout.
+
+2015-02-27  Pedro Alves  <palves@redhat.com>
+
+       * Makefile.in (COMPILER): New, get it from autoconf.
+       (CXX): Get from autoconf instead.
+       (COMPILE.pre): Use COMPILER.
+       (CC-LD): Rename to ...
+       (CC_LD): ... this.  Use COMPILER.
+       (gdbserver$(EXEEXT), gdbreplay$(EXEEXT), $(IPA_LIB)): Adjust.
+       (CXX_FOR_TARGET): Default to g++ instead of gcc.
+       * acinclude.m4: Include build-with-cxx.m4.
+       * configure.ac: Call AC_PROG_CXX and GDB_AC_BUILD_WITH_CXX.
+       Disable -Werror by default if building in C++ mode.
+       (build_warnings): Add -Wno-sign-compare, -Wno-write-strings and
+       -Wno-narrowing in C++ mode. Run supported-warning-flags tests with
+       the C++ compiler.  Save/restore CXXFLAGS too.
+       * configure: Regenerate.
+
+2015-02-27  Pedro Alves  <palves@redhat.com>
+
+       * acinclude.m4: Include libiberty.m4.
+       * configure.ac: Call libiberty_INIT.
+       * config.in, configure: Regenerate.
+
+2015-02-26  Pedro Alves  <palves@redhat.com>
+
+       * linux-low.c (linux_wait_1): When incrementing the PC past a
+       program breakpoint always use the_low_target.breakpoint_len as
+       increment, rather than the maximum between that and
+       the_low_target.decr_pc_after_break.
+
+2015-02-23  Pedro Alves  <palves@redhat.com>
+
+       * linux-low.c (check_stopped_by_breakpoint): Don't check if the
+       thread was doing a step-over; always adjust the PC if
+       we stepped over a permanent breakpoint.
+       (linux_wait_1): If we stepped over breakpoint that was on top of a
+       permanent breakpoint, manually advance the PC past it.
+
+2015-02-23  Pedro Alves  <palves@redhat.com>
+
+       * linux-x86-low.c (REGSIZE): Define in both 32-bit and 64-bit
+       modes.
+       (x86_fill_gregset, x86_store_gregset): Use it when handling
+       $orig_eax.
+
+2015-02-20  Pedro Alves  <palves@redhat.com>
+
+       * thread-db.c: Include "nat/linux-procfs.h".
+       (thread_db_init): Skip listing new threads if the kernel supports
+       PTRACE_EVENT_CLONE and /proc/PID/task/ is accessible.
+
 2015-02-20  Pedro Alves  <palves@redhat.com>
 
        * linux-low.c (status_pending_p_callback): Use ptid_match.
This page took 0.032539 seconds and 4 git commands to generate.