]> sourceware.org Git - systemtap.git/commit - session.h
Cache compile_server_info attached to sessions, not static
authorJosh Stone <jistone@redhat.com>
Fri, 18 Mar 2011 02:51:11 +0000 (19:51 -0700)
committerJosh Stone <jistone@redhat.com>
Fri, 18 Mar 2011 02:51:11 +0000 (19:51 -0700)
commiteff14db3b9ead0438307325fb4ee83452b8db754
treef6e7dfc8b724e9aa3f4dd2ab4673251c1c5ed77e
parent2e46c01a3e6053a0cfd05645ebe0c118a0d828af
Cache compile_server_info attached to sessions, not static

The various vector<compile_server_info> caches in csclient have
information that's specific to the systemtap_session in question, so
they need to be saved with the session rather than kept static.  This
matters for the brave new world of having multiple unique remote targets
within a single stap execution.

* session.h (systemtap_session::server_cache): New, opaque pointer for
  a struct containing csclient's cached data.
* session.cxx (systemtap_session::systemtap_session): NULL it.
* csclient.cxx (struct compile_server_cache): Define a container for all
  the caching vectors that will be stored in the session.
  (cscache): Get the cache from the session, allocate it if needed.
  (get_default_server_info): Use a cache vector instead of a static.
  (get_specific_server_info): Ditto.
  (get_or_keep_trusted_server_info): Ditto.
  (get_or_keep_signing_server_info): Ditto.
  (get_or_keep_online_server_info): Ditto.
csclient.cxx
session.cxx
session.h
This page took 0.025848 seconds and 5 git commands to generate.