* linux-low.c (linux_attach_lwp): Do not _exit after errors.
[deliverable/binutils-gdb.git] / gdb / gdbserver / ChangeLog
index 7b78653323a84c87b1e3673018255bb551206260..5a6e7b9e920058135f0c7394ba86d2b98548f918 100644 (file)
@@ -1,3 +1,357 @@
+2008-01-29  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * linux-low.c (linux_attach_lwp): Do not _exit after errors.
+       (linux_kill, linux_detach): Clean up the process list.
+       * remote-utils.c (remote_open): Improve port number parsing.
+       (putpkt_binary, input_interrupt): Only send interrupts if the target
+       is running.
+       * server.c (extended_protocol): Make static.
+       (attached): Define earlier.
+       (exit_requested, response_needed, program_argv): New variables.
+       (target_running): New.
+       (start_inferior): Clear attached here.
+       (attach_inferior): Set attached here.
+       (require_running): Define.
+       (handle_query): Use require_running and target_running.  Implement
+       "monitor exit".
+       (handle_v_attach, handle_v_run): New.
+       (handle_v_requests): Use require_running.  Handle vAttach and vRun.
+       (gdbserver_usage): Update.
+       (main): Redo argument parsing.  Handle --debug and --multi.  Handle
+       --attach along with other options or after the port.  Save
+       program_argv.  Support no initial program.  Resynchronize
+       communication with GDB after an error.  Handle "monitor exit".
+       Use require_running and target_running.  Always allow the extended
+       protocol.  Do not error out for Hc0 or Hc-1.  Do not automatically
+       restart in extended mode.
+       * README: Refer to the GDB manual.  Update --attach usage.
+
+2007-12-20  Andreas Schwab  <schwab@suse.de>
+
+       * linux-low.c (STACK_SIZE): Define.
+       (linux_tracefork_child): Use it.  Use __clone2 on ia64.
+       (linux_test_for_tracefork): Likewise.
+
+2007-12-18  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * linux-low.c (linux_wait_for_event): Update messages.  Do not
+       reinsert auto-delete breakpoints.
+       * mem-break.c (struct breakpoint): Change return type of handler to
+       int.
+       (set_breakpoint_at): Update handler type.
+       (reinsert_breakpoint_handler): Return 1 instead of calling
+       delete_breakpoint.
+       (reinsert_breakpoint_by_bp): Check for the original breakpoint before
+       setting a new one.
+       (check_breakpoints): Delete auto-delete breakpoints and return 2.
+       * mem-break.h (set_breakpoint_at): Update handler type.
+       * thread-db.c (thread_db_create_event, thread_db_create_event): Update.
+       * win32-low.c (auto_delete_breakpoint): New.
+       (get_child_debug_event): Use it.
+
+2007-12-16  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * configure.ac: Check for pread and pwrite.
+       * hostio.c (handle_pread): Fall back to lseek and read.
+       (handle_pwrite): Fall back to lseek and write.
+       * config.in, configure: Regenerated.
+
+2007-12-07  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * server.c (myresume): Add own_buf argument.
+       (main): Update calls.
+
+2007-12-06  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * linux-low.c (linux_wait, linux_resume): Do not handle async I/O.
+       * remote-utils.c (remote_open): Do not call disable_async_io.
+       (block_async_io): Delete.
+       (unblock_async_io): Make static.
+       (initialize_async_io): New.
+       * server.c (handle_v_cont): Handle async I/O here.
+       (myresume): Likewise.  Move other common resume tasks here...
+       (main): ... from here.  Call initialize_async_io.  Disable async
+       I/O before the main loop.
+       * server.h (initialize_async_io): Declare.
+       (block_async_io, unblock_async_io): Delete prototypes.
+       * spu-low.c (spu_resume, spu_wait): Do not handle async I/O here.
+
+2007-12-06  Mick Davis  <mickd@goanna.iinet.net.au>
+
+       * remote-utils.c (readchar): Allow binary data in received messages.
+
+2007-12-03  Pedro Alves  <pedro_alves@portugalmail.pt>
+
+       * win32-low.c (attaching): New global.
+       (win32_create_inferior): Clear the `attaching' global.
+       (win32_attach): Set the `attaching' global.
+       (get_child_debug_event) [_WIN32_WCE]: Stop the inferior when
+       attaching.  Only set a breakpoint at the entry point if not
+       attaching.
+
+2007-12-03  Pedro Alves  <pedro_alves@portugalmail.pt>
+
+       * server.c (main): Don't report dll events on the initial
+       connection on attaches.
+
+2007-12-03  Pedro Alves  <pedro_alves@portugalmail.pt>
+
+       * server.c (main): Relax numerical bases supported for the pid of
+       the --attach command line argument.
+
+2007-12-03  Pedro Alves  <pedro_alves@portugalmail.pt>
+
+       * win32-low.c (win32_attach): Call OpenProcess before
+       DebugActiveProcess, not after.  Add last error output to error
+       call.
+
+2007-12-03  Pedro Alves  <pedro_alves@portugalmail.pt>
+
+       * win32-low.c (win32_get_thread_context)
+       (win32_set_thread_context): New functions.
+       (thread_rec): Use win32_get_thread_context.
+       (continue_one_thread, win32_resume): Use win32_set_thread_context.
+       * win32-low.h (win32_thread_info) [_WIN32_WCE]: Add `base_context'
+       field.
+
+2007-12-03  Leo Zayas
+           Pedro Alves  <pedro_alves@portugalmail.pt>
+
+       * win32-low.c (soft_interrupt_requested, faked_breakpoint): New
+       global variables.
+       (child_add_thread): Minor cleanup.
+       (child_continue): Resume artificially suspended threads before
+       calling ContinueDebugEvent.
+       (suspend_one_thread): New.
+       (fake_breakpoint_event): New.
+       (get_child_debug_event): Change return type to int.  Check here if
+       gdb sent an interrupt request.  If a soft interrupt was requested,
+       fake a breakpoint event.  Return 0 if there is no event to handle,
+       and 1 otherwise.
+       (win32_wait): Don't check here if gdb sent an interrupt request.
+       Ensure there is a valid event to handle.
+       (win32_request_interrupt): Add soft interruption method as last
+       resort.
+
+2007-12-03  Leo Zayas
+           Pedro Alves  <pedro_alves@portugalmail.pt>
+
+       * win32-low.h (win32_thread_info): Add descriptions to the
+       structure members.  Replace `suspend_count' counter by a
+       `suspended' flag.
+       * win32-low.c (thread_rec): Update condition of when to get the
+       context from the inferior.  Rely on ContextFlags being set if it
+       has already been retrieved.  Only suspend the inferior thread if
+       we haven't already.  Warn if that fails.
+       (continue_one_thread): s/suspend_count/suspended/.  Only call
+       ResumeThread once.  Warn if that fails.
+
+2007-12-02  Pedro Alves  <pedro_alves@portugalmail.pt>
+
+       * win32-low.c (win32_wait): Don't read from the inferior when it
+       has already exited.
+
+2007-12-02  Pedro Alves  <pedro_alves@portugalmail.pt>
+
+       * Makefile.in (win32_low_h): New variable.
+       (win32-low.o): Add dependency on $(win32_low_h).
+       (win32-arm-low.o, win32-i386-low.o): New rules.
+
+2007-11-30  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * hostio.c: Correct copyright year.
+
+2007-11-30  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * Makefile.in (OBS): Add hostio.o.
+       (hostio.o): New rule.
+       * server.h (handle_vFile): Declare.
+       * hostio.c: New file.
+       * server.c (handle_v_requests): Take packet_len and new_packet_len
+       for binary packets.  Call handle_vFile.
+       (main): Update call to handle_v_requests.
+
+2007-11-05  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * linux-low.c: Include <sched.h>.
+
+2007-11-01  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * linux-low.c (linux_tracefork_grandchild): New.
+       (linux_tracefork_child): Use clone.
+       (linux_test_for_tracefork): Use clone; allocate and free a stack.
+
+2007-10-31  Joel Brobecker  <brobecker@adacore.com>
+
+       * Makefile.in: Use $(SHELL) instead of "sh" to call regdat.sh.
+
+2007-10-24  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * linux-low.c (handle_extended_wait): Handle unexpected signals.
+
+2007-10-23  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * inferiors.c (change_inferior_id): Delete.
+       (add_pid_to_list, pull_pid_from_list): New.
+       * linux-low.c (PTRACE_SETOPTIONS, PTRACE_GETEVENTMSG)
+       (PTRACE_O_TRACESYSGOOD, PTRACE_O_TRACEFORK, PTRACE_O_TRACEVFORK)
+       (PTRACE_O_TRACECLONE, PTRACE_O_TRACEEXEC, PTRACE_O_TRACEVFORKDONE)
+       (PTRACE_O_TRACEEXIT, PTRACE_EVENT_FORK, PTRACE_EVENT_VFORK)
+       (PTRACE_EVENT_CLONE, PTRACE_EVENT_EXEC, PTRACE_EVENT_VFORK_DONE)
+       (PTRACE_EVENT_EXIT, __WALL): Provide default definitions.
+       (stopped_pids, thread_db_active, must_set_ptrace_flags): New variables.
+       (using_threads): Always set to 1.
+       (handle_extended_wait): New.
+       (add_process): Do not set TID.
+       (linux_create_inferior): Set must_set_ptrace_flags.
+       (linux_attach_lwp): Remove TID argument.  Do not check using_threads.
+       Use PTRACE_SETOPTIONS.  Call new_thread_notify.  Update all callers.
+       (linux_thread_alive): Rename TID argument to LWPID.
+       (linux_wait_for_process): Handle unknown processes.  Do not use TID.
+       (linux_wait_for_event): Do not use TID or check using_threads.  Update
+       call to dead_thread_notify.  Call handle_extended_wait.
+       (linux_create_inferior): Use PTRACE_SETOPTIONS.
+       (send_sigstop): Delete sigstop_sent.
+       (wait_for_sigstop): Avoid TID.
+       (linux_supports_tracefork_flag, linux_tracefork_child, my_waitpid)
+       (linux_test_for_tracefork): New.
+       (linux_lookup_signals): Use thread_db_active and
+       linux_supports_tracefork_flag.
+       (initialize_low): Use thread_db_active and linux_test_for_tracefork.
+       * linux-low.h (get_process_thread): Avoid TID.
+       (struct process_ifo): Move thread_known and tid to the end.  Remove
+       sigstop_sent.
+       (linux_attach_lwp, thread_db_init): Update prototypes.
+       * server.h (change_inferior_id): Delete prototype.
+       (add_pid_to_list, pull_pid_from_list): New prototypes.
+       * thread-db.c (thread_db_use_events): New.
+       (find_first_thread): Rename to...
+       (find_one_thread): ...this.  Update callers and messages.  Do not
+       call fatal.  Check thread_db_use_events.  Do not call
+       change_inferior_id or new_thread_notify.
+       (maybe_attach_thread): Update.  Do not call new_thread_notify.
+       (thread_db_init): Set thread_db_use_events.  Check use_events.
+       * utils.c (fatal, warning): Correct message prefix.
+
+2007-10-15  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * Makefile.in (clean): Remove new files.
+       (powerpc-32.o, powerpc-32.c, powerpc-e500.o, powerpc-e500.c)
+       (powerpc-64.o, powerpc-64.c): New rules.
+       * configure.srv: Use alternate register sets for powerpc64-*-linux*
+       with AltiVec, powerpc-*-linux* with AltiVec, and powerpc-*-linux*
+       with SPE.
+       * linux-ppc-low.c (ppc_regmap): Do not fetch the FP registers for
+       SPE targets.
+       (ppc_cannot_store_register): Do not check for FPSCR for SPE targets.
+       (PTRACE_GETVRREGS, PTRACE_SETVRREGS, SIZEOF_VRREGS, ppc_fill_vrregset)
+       (ppc_store_vrregset, PTRACE_GETEVRREGS, PTRACE_SETEVRREGS)
+       (struct gdb_evrregset_t, ppc_fill_evrregset, ppc_store_evrregset): New.
+       (target_regsets): Add AltiVec and SPE register sets.
+       * configure.ac: Check for AltiVec and SPE.
+       * linux-ppc64-low.c (PTRACE_GETVRREGS, PTRACE_SETVRREGS, SIZEOF_VRREGS)
+       (ppc_fill_vrregset, ppc_store_vrregset): New.
+       (target_regsets): Add AltiVec register set.
+       * configure: Regenerated.
+
+2007-09-19  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * linux-low.c (O_LARGEFILE): Define.
+       (linux_read_memory): Use /proc/PID/mem.
+       * configure.ac: Use AC_GNU_SOURCE.  Check for pread64.
+       * configure, config.in: Regenerated.
+
+2007-09-04  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * linux-low.c (linux_wait_for_event): Do not pass signals while
+       single-stepping.
+
+2007-09-03  Pedro Alves  <pedro_alves@portugalmail.pt>
+
+       * win32-low.c (create_process): New.
+       (win32_create_inferior): Use create_process instead of
+       CreateProcess.  If create_process failed retry appending an ".exe"
+       suffix.  Store the GetLastError result immediatelly after
+       create_process calls and use it on the call to error.
+
+2007-09-03  Pedro Alves  <pedro_alves@portugalmail.pt>
+
+       * win32-low.c (handle_load_dll): Don't use toolhelp when waiting.
+
+2007-08-23  Joel Brobecker  <brobecker@adacore.com>
+
+       * configure.ac: Switch license to GPLv3.
+
+2007-08-01  Michael Snyder  <msnyder@access-company.com>
+
+       * remote-utils.c (putpkt_binary): Memory leak, free buf2.
+
+2007-07-31  Pedro Alves  <pedro_alves@portugalmail.pt>
+
+       * win32-low.c (winapi_CloseToolhelp32Snapshot) [_WIN32_WCE]: New
+       typedef.
+       (win32_CloseToolhelp32Snapshot) [_WIN32_WCE]: New global var.
+       (load_toolhelp) [_WIN32_WCE]: Load TOOLHELP.DLL.  Get
+       CloseToolhelp32Snapshot.
+       (toolhelp_get_dll_name) [_WIN32_WCE]: Close the snapshot with
+       CloseToolhelp32Snapshot.
+
+2007-07-27  Michael Snyder  <michael.snyder@access-company.com>
+
+       * server.c (main): Check for inferior exit before main loop.
+
+2007-07-18  Pedro Alves  <pedro_alves@portugalmail.pt>
+
+       * remote-utils.c (remote_open): Set SO_KEEPALIVE on remote_desc
+       instead of on tmp_desc.
+
+2007-07-17  Pedro Alves  <pedro_alves@portugalmail.pt>
+           Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * inferiors.c (all_dlls, dlls_changed, get_dll): New.
+       (add_thread): Minor cleanups.
+       (clear_inferiors): Move lower in the file.  Clear the DLL
+       list.
+       (free_one_dll, match_dll, loaded_dll, unloaded_dll, clear_list): New.
+       * remote-utils.c (prepare_resume_reply): Check dlls_changed.
+       (xml_escape_text): New.
+       * server.c (handle_query): Handle qXfer:libraries:read.  Report it
+       for qSupported.
+       (handle_v_cont): Report errors.
+       (gdbserver_version): Update.
+       (main): Correct size of own_buf.  Do not report initial DLL events.
+       * server.h (struct dll_info, all_dlls, dlls_changed, loaded_dll)
+       (unloaded_dll, xml_escape_text): New.
+       * win32-low.c (enum target_waitkind): Update comments.
+       (win32_add_one_solib, get_image_name, winapi_EnumProcessModules)
+       (winapi_GetModuleInformation, winapi_GetModuleFileNameExA)
+       (win32_EnumProcessModules, win32_GetModuleInformation)
+       (win32_GetModuleFileNameExA, load_psapi, psapi_get_dll_name)
+       (winapi_CreateToolhelp32Snapshot, winapi_Module32First)
+       (winapi_Module32Next, win32_CreateToolhelp32Snapshot)
+       (win32_Module32First, win32_Module32Next, load_toolhelp)
+       (toolhelp_get_dll_name, handle_load_dll, handle_unload_dll): New.
+       (get_child_debug_event): Handle DLL events.
+       (win32_wait): Likewise.
+
+2007-07-12  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * configure.srv: Set srv_linux_regsets for sh*-*-linux*.
+       * linux-sh-low.c (sh_fill_gregset, target_regsets): New.
+
+2007-07-08  Pedro Alves  <pedro_alves@portugalmail.pt>
+
+       * win32-low.c (handle_output_debug_string): Ignore event if not
+       waiting.
+
+2007-07-08  Pedro Alves  <pedro_alves@portugalmail.pt>
+
+       * win32-arm-low.c (arm_wince_breakpoint): Fix typo.
+
+2007-07-03  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * remote-utils.c (look_up_one_symbol): Handle 'm' packets.
+
 2007-07-02  Daniel Jacobowitz  <dan@codesourcery.com>
 
        * inferiors.c (change_inferior_id): Add comment.
This page took 0.034529 seconds and 4 git commands to generate.