This is the mail archive of the gdb-cvs@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[binutils-gdb] Remove usage of find_inferior in lynx_mourn


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=c91bb56b06b52d45de7c8871a6d44ddae61ae977

commit c91bb56b06b52d45de7c8871a6d44ddae61ae977
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date:   Sat Dec 2 20:36:32 2017 -0500

    Remove usage of find_inferior in lynx_mourn
    
    Replace it with for_each_thread with pid filtering.  We can remove
    lynx_delete_thread_callback and pass remove_thread directly.
    
    I can't build/test this change, but it should be obvious enough.
    
    gdb/gdbserver/ChangeLog:
    
    	* lynx.low (lynx_delete_thread_callback): Remove.
    	(lynx_mourn): Use for_each_thread.

Diff:
---
 gdb/gdbserver/ChangeLog  |  5 +++++
 gdb/gdbserver/lynx-low.c | 16 +---------------
 2 files changed, 6 insertions(+), 15 deletions(-)

diff --git a/gdb/gdbserver/ChangeLog b/gdb/gdbserver/ChangeLog
index 5ebb90c..5464033 100644
--- a/gdb/gdbserver/ChangeLog
+++ b/gdb/gdbserver/ChangeLog
@@ -1,5 +1,10 @@
 2017-12-02  Simon Marchi  <simon.marchi@polymtl.ca>
 
+	* lynx.low (lynx_delete_thread_callback): Remove.
+	(lynx_mourn): Use for_each_thread.
+
+2017-12-02  Simon Marchi  <simon.marchi@polymtl.ca>
+
 	* regcache.c (regcache_invalidate_one): Remove.
 	(regcache_invalidate_pid): use for_each_thread.
 
diff --git a/gdb/gdbserver/lynx-low.c b/gdb/gdbserver/lynx-low.c
index ca9adc4..6039364 100644
--- a/gdb/gdbserver/lynx-low.c
+++ b/gdb/gdbserver/lynx-low.c
@@ -555,26 +555,12 @@ lynx_detach (int pid)
   return 0;
 }
 
-/* A callback for find_inferior which removes from the thread list
-   all threads belonging to process PROC.  */
-
-static int
-lynx_delete_thread_callback (thread_info *thread, void *proc)
-{
-  struct process_info *process = (struct process_info *) proc;
-
-  if (thread->id.pid () == pid_of (process))
-    remove_thread (thread);
-
-  return 0;
-}
-
 /* Implement the mourn target_ops method.  */
 
 static void
 lynx_mourn (struct process_info *proc)
 {
-  find_inferior (&all_threads, lynx_delete_thread_callback, proc);
+  for_each_thread (proc->pid, remove_thread);
 
   /* Free our private data.  */
   free (proc->priv);


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]