This is the mail archive of the systemtap@sourceware.org mailing list for the systemtap 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]

[Bug translator/19265] finding out-of-tree kernel modules only works with full paths, not relative paths


https://sourceware.org/bugzilla/show_bug.cgi?id=19265

--- Comment #2 from David Smith <dsmith at redhat dot com> ---
Looks like the "dash" problem mentioned in comment #1 comes from the following
code from dwarf_builder::build() in tapsets.cxx:

===============
  else if (get_param (parameters, TOK_MODULE, module_name))                     
    {                                                                           
      // If not a full path was given, then it's an in-tree module. Replace any 
      // dashes with underscores.                                               
      if (!is_fully_resolved(module_name, sess.sysroot, sess.sysenv))           
        {                                                                       
          size_t dash_pos = 0;                                                  
          string module_name2 = module_name; // copy out for replace operations 
          while((dash_pos=module_name2.find('-'))!=string::npos)                
            module_name2.replace(int(dash_pos),1,"_");                          
          module_name = module_name2;                                           
          filled_parameters[TOK_MODULE] = new literal_string(module_name);      
        }                                                                       

      // NB: glob patterns get expanded later, during the offline               
      // elfutils module listing.                                               
      dw = get_kern_dw(sess, module_name);                                      
    }                                                                           
===============

The code is replacing *all* the dashes with underscores, not just the ones in
the module file name itself.

-- 
You are receiving this mail because:
You are the assignee for the bug.

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