• Aaron Conole's avatar
    openvswitch: add trace points · c4ab7b56
    Aaron Conole authored
    This makes openvswitch module use the event tracing framework
    to log the upcall interface and action execution pipeline.  When
    using openvswitch as the packet forwarding engine, some types of
    debugging are made possible simply by using the ovs-vswitchd's
    ofproto/trace command.  However, such a command has some
    limitations:
    
      1. When trying to trace packets that go through the CT action,
         the state of the packet can't be determined, and probably
         would be potentially wrong.
    
      2. Deducing problem packets can sometimes be difficult as well
         even if many of the flows are known
    
      3. It's possible to use the openvswitch module even without
         the ovs-vswitchd (although, not common use).
    
    Introduce the event tracing points here to make it possible for
    working through these problems in kernel space.  The style is
    copied from the mac80211 driver-trace / trace code for
    consistency - this creates some checkpatch splats, but the
    official 'guide' for adding tracepoints, as well as the existing
    examples all add the same splats so it seems acceptable.
    Signed-off-by: default avatarAaron Conole <aconole@redhat.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    c4ab7b56
datapath.c 64.5 KB