]> sourceware.org Git - systemtap.git/commitdiff
Split dyninst transport initialization into two parts.
authorDavid Smith <dsmith@redhat.com>
Wed, 8 May 2013 15:16:46 +0000 (10:16 -0500)
committerDavid Smith <dsmith@redhat.com>
Wed, 8 May 2013 15:16:46 +0000 (10:16 -0500)
* runtime/dyninst/transport.c: Split the thread starting code out from
  _stp_dyninst_transport_session_init() into
  _stp_dyninst_transport_session_start().
* runtime/dyninst/transport.h: Add _stp_dyninst_transport_session_start()
  prototype.
* runtime/dyninst/common_session_state.h (stp_session_init): Calls
  _stp_dyninst_transport_sesion_init().
* runtime/dyninst/runtime.h (stp_dyninst_session_init_finished): Calls
  _stp_dyninst_transport_session_start().

runtime/dyninst/common_session_state.h
runtime/dyninst/runtime.h
runtime/dyninst/transport.c
runtime/dyninst/transport.h

index 15b320de9c548002e94b222e6565e274204ecbac..43a404a023cbb4e224a0d669ae13d231d485ccf6 100644 (file)
@@ -203,7 +203,7 @@ static int stp_session_init(void)
        }
 #endif
 
-       return 0;
+       return _stp_dyninst_transport_session_init();
 }
 
 static int stp_session_init_finished(void)
index b94a59dbcf04325d658285cae97349672e99be3b..35dcbafe33c541e1b134bc77589f561cc7c001ea 100644 (file)
@@ -382,7 +382,7 @@ int stp_dyninst_session_init_finished(void)
      * caused the base address of the shared memory to move around,
      * which would cause the addresses of the mutexes to move
      * around. */
-    return _stp_dyninst_transport_session_init();
+    return _stp_dyninst_transport_session_start();
 }
 
 void stp_dyninst_session_exit(void)
index 93bfc2361c3cc2a080111699db8f8f5707524971..7072e9d1d3aa8c4fa9a452e37d897685f59a47b5 100644 (file)
@@ -389,6 +389,13 @@ static int _stp_dyninst_transport_session_init(void)
                }
        }
 
+       return 0;
+}
+
+static int _stp_dyninst_transport_session_start(void)
+{
+       int rc;
+
        // Start the thread.
        rc = pthread_create(&_stp_transport_thread, NULL,
                            &_stp_dyninst_transport_thread_func, NULL);
index 91f54b261e26fbc08fb92e5c9ff8c727327f7612..dbcd23cf7a46b108f97546b6cd398a756bc0d3fd 100644 (file)
@@ -107,6 +107,8 @@ struct _stp_transport_context_data {
 
 static int _stp_dyninst_transport_session_init(void);
 
+static int _stp_dyninst_transport_session_start(void);
+
 static int _stp_dyninst_transport_init(const char *name);
 
 static int _stp_dyninst_transport_write_oob_data(char *buffer, size_t bytes);
This page took 0.031576 seconds and 5 git commands to generate.