• Jakub Kicinski's avatar
    net: fjes: correct TRACE_INCLUDE_PATH · 57e3c5af
    Jakub Kicinski authored
    A comment in define_trace.h clearly states:
    
     TRACE_INCLUDE_PATH if the path is something other than core kernel
                                                               vvvvvvvvvvvvvv
     include/trace then this macro can define the path to use. Note, the path
     is relative to define_trace.h, not the file including it. Full path names
     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
     for out of tree modules must be used.
    
    fjes uses path relative to itself. Which (somehow) works most of
    the time. Except when the kernel tree is "nested" in another
    kernel tree, and ../drivers/net/fjes actually exists. In which
    case build will use the header file from the wrong directory.
    
    I've been trying to figure out why net NIPA builder is constantly
    failing for the last 5 days, with:
    
    include/trace/../../../drivers/net/fjes/fjes_trace.h:88:17: error: ‘__assign_str’ undeclared (first use in this function)
       88 |                 __assign_str(err, err);
          |                 ^~~~~~~~~~~~
    
    when the line in the tree clearly has only one "err". NIPA does
    indeed have "nested" trees, because it uses git work-trees and
    the tree on the "outside" is not very up to date.
    
    Link: https://lore.kernel.org/r/20240529023322.3467755-1-kuba@kernel.orgSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
    57e3c5af
fjes_trace.h 9.97 KB