ovs_datapath.yaml 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162
  1. # SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause)
  2. name: ovs_datapath
  3. version: 2
  4. protocol: genetlink-legacy
  5. uapi-header: linux/openvswitch.h
  6. doc:
  7. OVS datapath configuration over generic netlink.
  8. definitions:
  9. -
  10. name: ovs-header
  11. type: struct
  12. members:
  13. -
  14. name: dp-ifindex
  15. type: u32
  16. -
  17. name: user-features
  18. type: flags
  19. name-prefix: ovs-dp-f-
  20. enum-name:
  21. entries:
  22. -
  23. name: unaligned
  24. doc: Allow last Netlink attribute to be unaligned
  25. -
  26. name: vport-pids
  27. doc: Allow datapath to associate multiple Netlink PIDs to each vport
  28. -
  29. name: tc-recirc-sharing
  30. doc: Allow tc offload recirc sharing
  31. -
  32. name: dispatch-upcall-per-cpu
  33. doc: Allow per-cpu dispatch of upcalls
  34. -
  35. name: datapath-stats
  36. enum-name: ovs-dp-stats
  37. type: struct
  38. members:
  39. -
  40. name: n-hit
  41. type: u64
  42. -
  43. name: n-missed
  44. type: u64
  45. -
  46. name: n-lost
  47. type: u64
  48. -
  49. name: n-flows
  50. type: u64
  51. -
  52. name: megaflow-stats
  53. enum-name: ovs-dp-megaflow-stats
  54. type: struct
  55. members:
  56. -
  57. name: n-mask-hit
  58. type: u64
  59. -
  60. name: n-masks
  61. type: u32
  62. -
  63. name: padding
  64. type: u32
  65. -
  66. name: n-cache-hit
  67. type: u64
  68. -
  69. name: pad1
  70. type: u64
  71. attribute-sets:
  72. -
  73. name: datapath
  74. name-prefix: ovs-dp-attr-
  75. enum-name: ovs-datapath-attrs
  76. attributes:
  77. -
  78. name: name
  79. type: string
  80. -
  81. name: upcall-pid
  82. doc: upcall pid
  83. type: u32
  84. -
  85. name: stats
  86. type: binary
  87. struct: datapath-stats
  88. -
  89. name: megaflow-stats
  90. type: binary
  91. struct: megaflow-stats
  92. -
  93. name: user-features
  94. type: u32
  95. enum: user-features
  96. enum-as-flags: true
  97. -
  98. name: pad
  99. type: unused
  100. -
  101. name: masks-cache-size
  102. type: u32
  103. -
  104. name: per-cpu-pids
  105. type: binary
  106. sub-type: u32
  107. -
  108. name: ifindex
  109. type: u32
  110. operations:
  111. fixed-header: ovs-header
  112. name-prefix: ovs-dp-cmd-
  113. list:
  114. -
  115. name: get
  116. doc: Get / dump OVS data path configuration and state
  117. value: 3
  118. attribute-set: datapath
  119. do: &dp-get-op
  120. request:
  121. attributes:
  122. - name
  123. reply:
  124. attributes:
  125. - name
  126. - upcall-pid
  127. - stats
  128. - megaflow-stats
  129. - user-features
  130. - masks-cache-size
  131. - per-cpu-pids
  132. dump: *dp-get-op
  133. -
  134. name: new
  135. doc: Create new OVS data path
  136. value: 1
  137. attribute-set: datapath
  138. do:
  139. request:
  140. attributes:
  141. - name
  142. - upcall-pid
  143. - user-features
  144. -
  145. name: del
  146. doc: Delete existing OVS data path
  147. value: 2
  148. attribute-set: datapath
  149. do:
  150. request:
  151. attributes:
  152. - name
  153. mcast-groups:
  154. list:
  155. -
  156. name: ovs_datapath