digraph "Fencing Cycle" {
   node [shape=box bgcolor=grey style=filled]
   kernel [label="Kernel DMA Fences"]
   userspace [label="userspace controlled fences"]
   kernel -> userspace [label="memory management"]
   userspace -> kernel [label="Future fence, fence proxy, ..."]

   { rank=same; kernel userspace }
}