diff options
author | Josh Stone <jistone@redhat.com> | 2009-04-20 16:41:52 -0700 |
---|---|---|
committer | Josh Stone <jistone@redhat.com> | 2009-04-20 16:41:52 -0700 |
commit | 1f329b5e2af4710a254e252529e8eee2fab4fd67 (patch) | |
tree | 402dd46adb0e54a7aa0a54f38bdba0e19dbc9501 /hash.cxx | |
parent | 3e1c25aa1f788ad5075e2563cc208b58ab6273b5 (diff) | |
download | systemtap-steved-1f329b5e2af4710a254e252529e8eee2fab4fd67.tar.gz systemtap-steved-1f329b5e2af4710a254e252529e8eee2fab4fd67.tar.xz systemtap-steved-1f329b5e2af4710a254e252529e8eee2fab4fd67.zip |
Add a function to hash typequery modules
Diffstat (limited to 'hash.cxx')
-rw-r--r-- | hash.cxx | 20 |
1 files changed, 20 insertions, 0 deletions
@@ -273,4 +273,24 @@ find_tracequery_hash (systemtap_session& s) s.tracequery_path = hashdir + "/tracequery_" + result + ".ko"; } + +void +find_typequery_hash (systemtap_session& s, const string& name, string& module) +{ + hash h; + get_base_hash(s, h); + + // Add the typequery name to distinguish the hash + h.add(name); + + // Get the directory path to store our cached module + string result, hashdir; + h.result(result); + if (!create_hashdir(s, result, hashdir)) + return; + + module = hashdir + "/typequery_" + result + + (name[0] == 'k' ? ".ko" : ".so"); +} + /* vim: set sw=2 ts=8 cino=>4,n-2,{2,^-2,t0,(0,u0,w1,M1 : */ |