Skip to content

Commit a663098

Browse files
committed
Sync to 7.1-rc3
Upstream commit 5db89c99566f (net: ifb: report ethtool stats over num_tx_queues, 2026-05-13) Signed-off-by: Jakub Kicinski <kuba@kernel.org>
1 parent d367853 commit a663098

43 files changed

Lines changed: 2300 additions & 0 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Lines changed: 175 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,175 @@
1+
# SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause)
2+
#
3+
# Copyright (c) 2025 Valve Corporation.
4+
#
5+
---
6+
name: dev-energymodel
7+
8+
doc: |
9+
Energy model netlink interface to notify its changes.
10+
11+
protocol: genetlink
12+
13+
uapi-header: linux/dev_energymodel.h
14+
15+
definitions:
16+
-
17+
type: flags
18+
name: perf-state-flags
19+
entries:
20+
-
21+
name: perf-state-inefficient
22+
doc: >-
23+
The performance state is inefficient. There is in this perf-domain,
24+
another performance state with a higher frequency but a lower or
25+
equal power cost.
26+
-
27+
type: flags
28+
name: perf-domain-flags
29+
entries:
30+
-
31+
name: perf-domain-microwatts
32+
doc: >-
33+
The power values are in micro-Watts or some other scale.
34+
-
35+
name: perf-domain-skip-inefficiencies
36+
doc: >-
37+
Skip inefficient states when estimating energy consumption.
38+
-
39+
name: perf-domain-artificial
40+
doc: >-
41+
The power values are artificial and might be created by platform
42+
missing real power information.
43+
44+
attribute-sets:
45+
-
46+
name: perf-domain
47+
doc: >-
48+
Information on a single performance domains.
49+
attributes:
50+
-
51+
name: pad
52+
type: pad
53+
-
54+
name: perf-domain-id
55+
type: u32
56+
doc: >-
57+
A unique ID number for each performance domain.
58+
-
59+
name: flags
60+
type: u64
61+
doc: >-
62+
Bitmask of performance domain flags.
63+
enum: perf-domain-flags
64+
-
65+
name: cpus
66+
type: u64
67+
multi-attr: true
68+
doc: >-
69+
CPUs that belong to this performance domain.
70+
-
71+
name: perf-table
72+
doc: >-
73+
Performance states table.
74+
attributes:
75+
-
76+
name: perf-domain-id
77+
type: u32
78+
doc: >-
79+
A unique ID number for each performance domain.
80+
-
81+
name: perf-state
82+
type: nest
83+
nested-attributes: perf-state
84+
multi-attr: true
85+
-
86+
name: perf-state
87+
doc: >-
88+
Performance state of a performance domain.
89+
attributes:
90+
-
91+
name: pad
92+
type: pad
93+
-
94+
name: performance
95+
type: u64
96+
doc: >-
97+
CPU performance (capacity) at a given frequency.
98+
-
99+
name: frequency
100+
type: u64
101+
doc: >-
102+
The frequency in KHz, for consistency with CPUFreq.
103+
-
104+
name: power
105+
type: u64
106+
doc: >-
107+
The power consumed at this level (by 1 CPU or by a registered
108+
device). It can be a total power: static and dynamic.
109+
-
110+
name: cost
111+
type: u64
112+
doc: >-
113+
The cost coefficient associated with this level, used during energy
114+
calculation. Equal to: power * max_frequency / frequency.
115+
-
116+
name: flags
117+
type: u64
118+
doc: >-
119+
Bitmask of performance state flags.
120+
enum: perf-state-flags
121+
122+
operations:
123+
list:
124+
-
125+
name: get-perf-domains
126+
attribute-set: perf-domain
127+
doc: Get the list of information for all performance domains.
128+
do:
129+
request:
130+
attributes:
131+
- perf-domain-id
132+
reply:
133+
attributes: &perf-domain-attrs
134+
- pad
135+
- perf-domain-id
136+
- flags
137+
- cpus
138+
dump:
139+
reply:
140+
attributes: *perf-domain-attrs
141+
-
142+
name: get-perf-table
143+
attribute-set: perf-table
144+
doc: Get the energy model table of a performance domain.
145+
do:
146+
request:
147+
attributes:
148+
- perf-domain-id
149+
reply:
150+
attributes:
151+
- perf-domain-id
152+
- perf-state
153+
-
154+
name: perf-domain-created
155+
doc: A performance domain is created.
156+
notify: get-perf-table
157+
mcgrp: event
158+
-
159+
name: perf-domain-updated
160+
doc: A performance domain is updated.
161+
notify: get-perf-table
162+
mcgrp: event
163+
-
164+
name: perf-domain-deleted
165+
doc: A performance domain is deleted.
166+
attribute-set: perf-table
167+
event:
168+
attributes:
169+
- perf-domain-id
170+
mcgrp: event
171+
172+
mcast-groups:
173+
list:
174+
-
175+
name: event
Lines changed: 115 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,115 @@
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:
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

0 commit comments

Comments
 (0)