nl-linux 0.2.3 → 0.2.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,126 @@
1
+ # SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause)
2
+ ---
3
+ name: drm-ras
4
+ protocol: genetlink
5
+ uapi-header: drm/drm_ras.h
6
+
7
+ doc: >-
8
+ DRM RAS (Reliability, Availability, Serviceability) over Generic Netlink.
9
+ Provides a standardized mechanism for DRM drivers to register "nodes"
10
+ representing hardware/software components capable of reporting error counters.
11
+ Userspace tools can query the list of nodes or individual error counters
12
+ via the Generic Netlink interface.
13
+
14
+ definitions:
15
+ -
16
+ type: enum
17
+ name: node-type
18
+ value-start: 1
19
+ entries: [error-counter]
20
+ doc: >-
21
+ Type of the node. Currently, only error-counter nodes are
22
+ supported, which expose reliability counters for a hardware/software
23
+ component.
24
+
25
+ attribute-sets:
26
+ -
27
+ name: node-attrs
28
+ attributes:
29
+ -
30
+ name: node-id
31
+ type: u32
32
+ doc: >-
33
+ Unique identifier for the node.
34
+ Assigned dynamically by the DRM RAS core upon registration.
35
+ -
36
+ name: device-name
37
+ type: string
38
+ doc: >-
39
+ Device name chosen by the driver at registration.
40
+ Can be a PCI BDF, UUID, or module name if unique.
41
+ -
42
+ name: node-name
43
+ type: string
44
+ doc: >-
45
+ Node name chosen by the driver at registration.
46
+ Can be an IP block name, or any name that identifies the
47
+ RAS node inside the device.
48
+ -
49
+ name: node-type
50
+ type: u32
51
+ doc: Type of this node, identifying its function.
52
+ enum: node-type
53
+ -
54
+ name: error-counter-attrs
55
+ attributes:
56
+ -
57
+ name: node-id
58
+ type: u32
59
+ doc: Node ID targeted by this error counter operation.
60
+ -
61
+ name: error-id
62
+ type: u32
63
+ doc: Unique identifier for a specific error counter within an node.
64
+ -
65
+ name: error-name
66
+ type: string
67
+ doc: Name of the error.
68
+ -
69
+ name: error-value
70
+ type: u32
71
+ doc: Current value of the requested error counter.
72
+
73
+ operations:
74
+ list:
75
+ -
76
+ name: list-nodes
77
+ doc: >-
78
+ Retrieve the full list of currently registered DRM RAS nodes.
79
+ Each node includes its dynamically assigned ID, name, and type.
80
+ **Important:** User space must call this operation first to obtain
81
+ the node IDs. These IDs are required for all subsequent
82
+ operations on nodes, such as querying error counters.
83
+ attribute-set: node-attrs
84
+ flags: [admin-perm]
85
+ dump:
86
+ reply:
87
+ attributes:
88
+ - node-id
89
+ - device-name
90
+ - node-name
91
+ - node-type
92
+ -
93
+ name: get-error-counter
94
+ doc: >-
95
+ Retrieve error counter for a given node.
96
+ The response includes the id, the name, and even the current
97
+ value of each counter.
98
+ attribute-set: error-counter-attrs
99
+ flags: [admin-perm]
100
+ do:
101
+ request:
102
+ attributes: &id-attrs
103
+ - node-id
104
+ - error-id
105
+ reply:
106
+ attributes: &errorinfo
107
+ - error-id
108
+ - error-name
109
+ - error-value
110
+ dump:
111
+ request:
112
+ attributes:
113
+ - node-id
114
+ reply:
115
+ attributes: *errorinfo
116
+ -
117
+ name: clear-error-counter
118
+ doc: >-
119
+ Clear error counter for a given node.
120
+ The request includes the error-id and node-id of the
121
+ counter to be cleared.
122
+ attribute-set: error-counter-attrs
123
+ flags: [admin-perm]
124
+ do:
125
+ request:
126
+ attributes: *id-attrs
data/linux/ethtool.yaml CHANGED
@@ -306,10 +306,6 @@ attribute-sets:
306
306
  name: strings
307
307
  attr-cnt-name: __ethtool-a-strings-cnt
308
308
  attributes:
309
- -
310
- name: unspec
311
- type: unused
312
- value: 0
313
309
  -
314
310
  name: unspec
315
311
  type: unused
@@ -861,6 +857,12 @@ attribute-sets:
861
857
  name: tx-profile
862
858
  type: nest
863
859
  nested-attributes: profile
860
+ -
861
+ name: rx-cqe-frames
862
+ type: u32
863
+ -
864
+ name: rx-cqe-nsecs
865
+ type: u32
864
866
 
865
867
  -
866
868
  name: pause-stat
@@ -879,6 +881,19 @@ attribute-sets:
879
881
  -
880
882
  name: rx-frames
881
883
  type: u64
884
+ -
885
+ name: tx-pause-storm-events
886
+ type: u64
887
+ doc: >-
888
+ TX pause storm event count. Increments each time device
889
+ detects that its pause assertion condition has been true
890
+ for too long for normal operation. As a result, the device
891
+ has temporarily disabled its own Pause TX function to
892
+ protect the network from itself.
893
+ This counter should never increment under normal overload
894
+ conditions; it indicates catastrophic failure like an OS
895
+ crash. The rate of incrementing is implementation specific.
896
+
882
897
  -
883
898
  name: pause
884
899
  attr-cnt-name: __ethtool-a-pause-cnt
@@ -2244,6 +2259,8 @@ operations:
2244
2259
  - tx-aggr-time-usecs
2245
2260
  - rx-profile
2246
2261
  - tx-profile
2262
+ - rx-cqe-frames
2263
+ - rx-cqe-nsecs
2247
2264
  dump: *coalesce-get-op
2248
2265
  -
2249
2266
  name: coalesce-set
data/linux/handshake.yaml CHANGED
@@ -12,6 +12,12 @@ protocol: genetlink
12
12
  doc: Netlink protocol to request a transport layer security handshake.
13
13
 
14
14
  definitions:
15
+ -
16
+ type: const
17
+ name: max-errno
18
+ value: 4095
19
+ header: linux/err.h
20
+ scope: kernel
15
21
  -
16
22
  type: enum
17
23
  name: handler-class
@@ -80,6 +86,8 @@ attribute-sets:
80
86
  -
81
87
  name: status
82
88
  type: u32
89
+ checks:
90
+ max: max-errno
83
91
  -
84
92
  name: sockfd
85
93
  type: s32
@@ -117,6 +125,7 @@ operations:
117
125
  name: done
118
126
  doc: Handler reports handshake completion
119
127
  attribute-set: done
128
+ flags: [admin-perm]
120
129
  do:
121
130
  request:
122
131
  attributes:
data/linux/mptcp_pm.yaml CHANGED
@@ -15,6 +15,7 @@ definitions:
15
15
  type: enum
16
16
  name: event-type
17
17
  enum-name: mptcp-event-type
18
+ doc: Netlink MPTCP event types
18
19
  name-prefix: mptcp-event-
19
20
  entries:
20
21
  -
@@ -33,6 +33,11 @@ doc: |
33
33
  @cap-get operation.
34
34
 
35
35
  definitions:
36
+ -
37
+ type: const
38
+ name: max-handle-id
39
+ value: 0x3fffffe
40
+ scope: kernel
36
41
  -
37
42
  type: enum
38
43
  name: scope
@@ -140,6 +145,8 @@ attribute-sets:
140
145
  -
141
146
  name: id
142
147
  type: u32
148
+ checks:
149
+ max: max-handle-id
143
150
  doc: |
144
151
  Numeric identifier of a shaper. The id semantic depends on
145
152
  the scope. For @queue scope it's the queue id and for @node
@@ -247,8 +254,8 @@ operations:
247
254
  flags: [admin-perm]
248
255
 
249
256
  do:
250
- pre: net-shaper-nl-pre-doit
251
- post: net-shaper-nl-post-doit
257
+ pre: net-shaper-nl-pre-doit-write
258
+ post: net-shaper-nl-post-doit-write
252
259
  request:
253
260
  attributes:
254
261
  - ifindex
@@ -278,8 +285,8 @@ operations:
278
285
  flags: [admin-perm]
279
286
 
280
287
  do:
281
- pre: net-shaper-nl-pre-doit
282
- post: net-shaper-nl-post-doit
288
+ pre: net-shaper-nl-pre-doit-write
289
+ post: net-shaper-nl-post-doit-write
283
290
  request:
284
291
  attributes: *ns-binding
285
292
 
@@ -309,8 +316,8 @@ operations:
309
316
  flags: [admin-perm]
310
317
 
311
318
  do:
312
- pre: net-shaper-nl-pre-doit
313
- post: net-shaper-nl-post-doit
319
+ pre: net-shaper-nl-pre-doit-write
320
+ post: net-shaper-nl-post-doit-write
314
321
  request:
315
322
  attributes:
316
323
  - ifindex
data/linux/netdev.yaml CHANGED
@@ -127,7 +127,14 @@ attribute-sets:
127
127
  enum: xsk-flags
128
128
  -
129
129
  name: io-uring-provider-info
130
- attributes: []
130
+ attributes:
131
+ -
132
+ name: rx-buf-len
133
+ type: uint
134
+ doc: |
135
+ RX buffer length in bytes for this io_uring memory provider.
136
+ Reflects the rx_buf_len passed at io_uring zerocopy rx
137
+ registration time.
131
138
  -
132
139
  name: page-pool
133
140
  attributes:
@@ -339,6 +346,15 @@ attribute-sets:
339
346
  doc: XSK information for this queue, if any.
340
347
  type: nest
341
348
  nested-attributes: xsk-info
349
+ -
350
+ name: lease
351
+ doc: |
352
+ A queue from a virtual device can have a lease which refers to
353
+ another queue from a physical device. This is useful for memory
354
+ providers and AF_XDP operations which take an ifindex and queue id
355
+ to allow applications to bind against virtual devices in containers.
356
+ type: nest
357
+ nested-attributes: lease
342
358
  -
343
359
  name: qstats
344
360
  doc: |
@@ -537,6 +553,26 @@ attribute-sets:
537
553
  name: id
538
554
  -
539
555
  name: type
556
+ -
557
+ name: lease
558
+ attributes:
559
+ -
560
+ name: ifindex
561
+ doc: The netdev ifindex to lease the queue from.
562
+ type: u32
563
+ checks:
564
+ min: 1
565
+ -
566
+ name: queue
567
+ doc: The netdev queue to lease from.
568
+ type: nest
569
+ nested-attributes: queue-id
570
+ -
571
+ name: netns-id
572
+ doc: The network namespace id of the netdev.
573
+ type: s32
574
+ checks:
575
+ min: 0
540
576
  -
541
577
  name: dmabuf
542
578
  attributes:
@@ -620,6 +656,9 @@ operations:
620
656
  - dmabuf
621
657
  - io-uring
622
658
  dump:
659
+ request:
660
+ attributes:
661
+ - ifindex
623
662
  reply: *pp-reply
624
663
  config-cond: page-pool
625
664
  -
@@ -663,6 +702,9 @@ operations:
663
702
  - recycle-ring-full
664
703
  - recycle-released-refcnt
665
704
  dump:
705
+ request:
706
+ attributes:
707
+ - info
666
708
  reply: *pp-stats-reply
667
709
  config-cond: page-pool-stats
668
710
  -
@@ -686,6 +728,7 @@ operations:
686
728
  - dmabuf
687
729
  - io-uring
688
730
  - xsk
731
+ - lease
689
732
  dump:
690
733
  request:
691
734
  attributes:
@@ -762,7 +805,7 @@ operations:
762
805
  name: bind-rx
763
806
  doc: Bind dmabuf to netdev
764
807
  attribute-set: dmabuf
765
- flags: [admin-perm]
808
+ flags: [uns-admin-perm]
766
809
  do:
767
810
  request:
768
811
  attributes:
@@ -797,6 +840,22 @@ operations:
797
840
  reply:
798
841
  attributes:
799
842
  - id
843
+ -
844
+ name: queue-create
845
+ doc: |
846
+ Create a new queue for the given netdevice. Whether this operation
847
+ is supported depends on the device and the driver.
848
+ attribute-set: queue
849
+ flags: [admin-perm]
850
+ do:
851
+ request:
852
+ attributes:
853
+ - ifindex
854
+ - type
855
+ - lease
856
+ reply: &queue-create-op
857
+ attributes:
858
+ - id
800
859
 
801
860
  kernel-family:
802
861
  headers: ["net/netdev_netlink.h"]