1use lock_ordering_macro::lock_ordering;
6
7lock_ordering! {
8 AioPendingOperationsLock => WaitQueueImplLock,
10 AshmemStateLock => FsNodeWriteGuardStateLock,
11 BeforeFsNodeAppend => FsNodeAppend,
12 BinderFreezeLevel => BinderProcessStateLevel,
13 BinderFsDevicesLevel => DeviceRegistryStateLevel,
14 BinderFsDevicesLevel => FsNodeInfoLevel,
15 BinderFsDevicesLevel => RwQueueInnerLock,
16 BinderObjectLevel => BinderThreadStateLock,
17 BinderProcessSharedMemoryLevel => BinderFreezeLevel,
18 BinderProcessSharedMemoryLevel => FsRenameRecursive,
19 BinderProcessSharedMemoryLevel => TaskFilesLock,
20 BinderProcessStateLevel => BinderContextManagerLevel,
21 BinderProcessStateLevel => BinderObjectLevel,
22 BinderProcsLevel => BinderProcessSharedMemoryLevel,
23 BinderThreadStateLock => ThreadGroupMutableStateLock,
24 BinderThreadStateLock => WaiterEventHandlerLock,
25 CgroupChildrenLock => CgroupStateLock,
26 CgroupDirectoryInterfaceFilesLock => CgroupChildrenLock,
27 CgroupDirectoryInterfaceFilesLock => CgroupDirectoryNodesLock,
28 CgroupDirectoryInterfaceFilesLock => RwQueueInnerLock,
29 CgroupPidTableLock => CgroupStateLock,
30 CgroupStateLock => ThreadGroupMutableStateLock,
31 CgroupV1Level => CgroupPidTableLock,
32 DeviceMapperRegistryDevicesLock => DmDeviceStateLock,
33 DeviceMapperRegistryDevicesLock => DynamicThreadSpawnerLock,
34 DeviceRegistryStateLevel => NetlinkSocketInnerLock,
35 DeviceTerminalsLock => TerminalMutableStateLock,
36 DirEntryChildrenLevel => BinderFsDevicesLevel,
37 DirEntryChildrenLevel => CgroupDirectoryInterfaceFilesLock,
38 DirEntryChildrenLevel => FileSystemEntriesLock,
39 DirEntryChildrenLevel => FileSystemPermanentLock,
40 DirEntryChildrenLevel => InotifyStateLock,
41 DirEntryChildrenLevel => NetstackDevicesLock,
42 DirEntryChildrenLevel => NmfsNetworkManagerLock,
43 DirEntryChildrenLevel => SeLinuxPendingEntriesLock,
44 DirEntryChildrenLevel => SeLinuxUpdateLock,
45 DirEntryChildrenLevel => UnixSocketInnerLock,
46 DirEntryChildrenRecursiveLevel => FsNodeInfoRecursiveLevel,
47 DirEntryChildrenRecursiveLevel => MemoryDirectoryReaddirPositionLock,
48 DmDeviceStateLock => DirEntryChildrenLevel,
49 DynamicFileStateLock => CgroupV1Level,
50 DynamicFileStateLock => FsRegistryLock,
51 DynamicFileStateLock => MapInfoCacheBufLock,
52 DynamicFileStateLock => MemoryPressureMonitor,
53 DynamicFileStateLock => TaskCredsLock,
54 EbpfMapStateLevel => EbpfSuspendLock,
55 EbpfStateLock => EbpfSuspendLock,
56 EpollStateLock => BinderProcsLevel,
57 EpollStateLock => EventFdInnerLock,
58 EpollStateLock => MemoryPressureMonitor,
59 EpollStateLock => SuspendResumeManagerInnerLock,
60 EpollStateLock => TimerFileInfoLock,
61 EpollWaitableStateLock => WaitQueueImplLock,
62 ExecutorVmarManagerLock => PidToKoidMapLock,
63 ExecutorVmarManagerLock => ThreadGroupPtraceesLock,
64 FdTableMutableStateLock => FsNodeInfoLevel,
65 FileEpollFilesLock => EpollStateLock,
66 FileObjectOffset => BeforeFsNodeAppend,
67 FileObjectOffset => DynamicFileStateLock,
68 FileObjectOffset => FuseFsNodeInfoLevel,
69 FileObjectOffset => FuseNodeStateLock,
70 FileObjectOffset => IcmpPingGidsLock,
71 FileObjectOffset => PerfRingBufferStateLock,
72 FileObjectOffset => SeLinuxFsContextSidLock,
73 FileObjectOffset => SeLinuxPendingFileSystemsLock,
74 FileObjectOffset => StubBytesFileStateLock,
75 FramebufferInfoLock => FramebufferPresentationReceiverLock,
76 FramebufferInfoLock => FramebufferViewBoundProtocolsLock,
77 FramebufferInfoLock => FramebufferViewIdentityLock,
78 FsContextStateLock => MountsLevel,
79 FsNodeAppend => UninterruptibleLock,
80 FsNodeFlockInfoLock => WaitQueueImplLock,
81 FsNodeInfoLevel => FsNodeWriteGuardStateLock,
82 FsNodeInfoRecursiveLevel => FsRename,
83 FsNodeWriteGuardStateLock => FsNodeFsVerityLock,
84 FsNodeWriteGuardStateLock => ThreadGroupLimits,
85 FsRename => DirEntryChildrenLevel,
86 FsRenameRecursive => DirEntryChildrenRecursiveLevel,
87 FunctionFsStateLock => WaitQueueImplLock,
88 FuseConnectionStateLock => PortWaiterCallbacksLock,
89 FuseConnectionStateLock => WaitQueueImplLock,
90 FuseDirEntryChildrenLevel => FuseFsNodeInfoLevel,
91 FuseDirEntryChildrenLevel => FuseNodeStateLock,
92 FuseFsNodeInfoLevel => UninterruptibleLock,
93 FuseFsRenameLevel => FuseDirEntryChildrenLevel,
94 FutexTableStateLock => FsContextStateLock,
95 FutexTableStateLock => FsNodeInfoLevel,
96 FutexTableStateLock => InflightVmsplicedPayloadsLock,
97 GenericNetlinkServerStateLock => NetlinkSocketInnerLock,
98 InotifyStateLock => EventHandlerReadyQueueLock,
99 InotifyStateLock => PortWaiterCallbacksLock,
100 InotifyStateLock => WaitQueueImplLock,
101 InputEventRelayOpenedFilesLock => WaitQueueImplLock,
102 LoopDeviceStateLock => FsNodeInfoLevel,
103 LoopDeviceStateLock => RemoteBundleInnerLock,
104 LoopDevicesLock => DeviceRegistryStateLevel,
105 LoopDevicesLock => DynamicThreadSpawnerLock,
106 LoopDevicesLock => LoopDeviceStateLock,
107 LoopDevicesLock => SimpleDirectoryEntriesLock,
108 LoopDevicesLock => TaskMutableStateLock,
109 MagmaConnectionsLock => DirEntryChildrenLevel,
110 MemoryAttributionPublisherLock => DynamicThreadSpawnerLock,
111 MemoryDirectoryReaddirPositionLock => DirEntryChildrenLevel,
112 MemoryPressureMonitor => MemoryPressureMonitorClientState,
113 MemoryPressureMonitor => PortWaiterCallbacksLock,
114 MmDumpable => ThreadGroupLimits,
115 NetlinkSocketInnerLock => EpollWaitableStateLock,
116 NetlinkSocketInnerLock => EventHandlerReadyQueueLock,
117 NetlinkSocketInnerLock => PortWaiterCallbacksLock,
118 NetstackDevicesLock => SimpleDirectoryEntriesLock,
119 OverlayFsStateLock => FsNodeInfoLevel,
120 ProcessGroupState => ThreadGroupLimits,
121 RecordLocksStateLock => PortWaiterCallbacksLock,
122 RecordLocksStateLock => WaitQueueImplLock,
123 RemoteBinderHandleLevel => BinderProcsLevel,
124 RemoteBlockDeviceRegistryDevicesLock => SimpleDirectoryEntriesLock,
125 SessionMutableStateLock => TaskMutableStateLock,
126 SignalFdMaskLock => ThreadGroupPendingSignalsLock,
127 SimpleDirectoryEntriesLock => FsNodeInfoLevel,
128 SimpleDirectoryEntriesLock => RwQueueInnerLock,
129 SyslogSubscriptionLock => PortWaiterCallbacksLock,
130 SyslogSubscriptionLock => WaitQueueImplLock,
131 TaskCredsLock => DirEntryChildrenRecursiveLevel,
132 TaskCredsLock => FsNodeInfoRecursiveLevel,
133 TaskCredsLock => TaskFilesLock,
134 TaskFilesLock => FdTableMutableStateLock,
135 TaskMutableStateLock => EpollWaitableStateLock,
136 TaskMutableStateLock => FutexTableStateLock,
137 TaskMutableStateLock => IntervalTimerState,
138 TaskMutableStateLock => MmDumpable,
139 TaskMutableStateLock => PortWaiterCallbacksLock,
140 TaskMutableStateLock => ProfileHandleCacheLock,
141 TaskMutableStateLock => SeccompNotifierLock,
142 TaskMutableStateLock => SignalActionsLock,
143 TaskMutableStateLock => SignalFdMaskLock,
144 TaskMutableStateLock => TaskCommandLevel,
145 TaskMutableStateLock => TaskFilesLock,
146 TaskMutableStateLock => UtsNamespaceLock,
147 TerminalMutableStateLock => EventHandlerReadyQueueLock,
148 TerminalMutableStateLock => SessionMutableStateLock,
149 ThreadGroupMutableStateLock => DeviceTerminalsLock,
150 ThreadGroupMutableStateLock => ProcessGroupState,
151 ThreadGroupPtraceesLock => ThreadGroupMutableStateLock,
152 TimerFileInfoLock => HrTimerManagerStateLock,
153 TimerFileInfoLock => TaskMutableStateLock,
154 TimerTableStateLock => HrTimerIsIntervalLock,
155 TimerTableStateLock => IntervalTimerState,
156 UEventNetlinkSocketDeviceListenerKeyLock => DeviceRegistryStateLevel,
157 UinputDeviceStateLock => DirEntryChildrenLevel,
158 UninterruptibleLock => AioPendingOperationsLock,
159 UninterruptibleLock => AshmemStateLock,
160 UninterruptibleLock => CgroupV1Level,
161 UninterruptibleLock => ComponentMountRecordLock,
162 UninterruptibleLock => DevKmsgLock,
163 UninterruptibleLock => DeviceMapperRegistryDevicesLock,
164 UninterruptibleLock => EbpfMapStateLevel,
165 UninterruptibleLock => EbpfStateLock,
166 UninterruptibleLock => ExecutorVmarManagerLock,
167 UninterruptibleLock => FastrpcInnerState,
168 UninterruptibleLock => FileEpollFilesLock,
169 UninterruptibleLock => FramebufferInfoLock,
170 UninterruptibleLock => FsNodeFlockInfoLock,
171 UninterruptibleLock => FunctionFsStateLock,
172 UninterruptibleLock => FuseConnectionStateLock,
173 UninterruptibleLock => GenericNetlinkServerStateLock,
174 UninterruptibleLock => InotifyWatchersLock,
175 UninterruptibleLock => InputDeviceFileNodesLock,
176 UninterruptibleLock => InputEventRelayOpenedFilesLock,
177 UninterruptibleLock => KernelIpTables,
178 UninterruptibleLock => KernelSwapFiles,
179 UninterruptibleLock => LoopDevicesLock,
180 UninterruptibleLock => MagmaConnectionsLock,
181 UninterruptibleLock => MemoryAttributionPublisherLock,
182 UninterruptibleLock => MemoryXattrStorageLevel,
183 UninterruptibleLock => OverlayFsStateLock,
184 UninterruptibleLock => PerfEventLevel,
185 UninterruptibleLock => QipcrtrSocketInnerLock,
186 UninterruptibleLock => RecordLocksStateLock,
187 UninterruptibleLock => RemoteBinderHandleLevel,
188 UninterruptibleLock => RemoteBlockDeviceRegistryDevicesLock,
189 UninterruptibleLock => SyslogSubscriptionLock,
190 UninterruptibleLock => TaskCredsLock,
191 UninterruptibleLock => UinputDeviceStateLock,
192 UninterruptibleLock => UserFaultInner,
193 UninterruptibleLock => VsockSocketInnerLock,
194 UnixSocketInnerLock => EpollWaitableStateLock,
195 UnixSocketInnerLock => EventHandlerReadyQueueLock,
196 UnixSocketInnerLock => PortWaiterCallbacksLock,
197 UnixSocketInnerLock => SeLinuxPeerSidLock,
198 UnixSocketInnerLock => SocketStateLock,
199 Unlocked => FileObjectOffset,
200 Unlocked => FuseFsRenameLevel,
201 Unlocked => UninterruptibleLock,
202 VsockSocketInnerLock => PortWaiterCallbacksLock,
203 VsockSocketInnerLock => WaitQueueImplLock,
204 WaitQueueImplLock => PortWaiterWaitQueuesLock,
205 WaiterEventHandlerLock => EpollWaitableStateLock,
206 Terminal(AioEventsLock),
212 Terminal(AuditDenyCountsLock),
213 Terminal(AuditNetlinkClientAuditResponseLock),
214 Terminal(AuditQueueLock),
215 Terminal(AuditSinkLock),
216 Terminal(BootedLock),
217 Terminal(CgroupDirectoryNodesLock),
218 Terminal(ComponentControllerLock),
219 Terminal(DynamicThreadSpawnerLock),
220 Terminal(EventFdInnerLock),
221 Terminal(EventHandlerReadyQueueLock),
222 Terminal(FileAsyncOwnerLock),
223 Terminal(FileLeaseLock),
224 Terminal(FileServerStatsLock),
225 Terminal(FileSystemEntriesLock),
226 Terminal(FileSystemPermanentLock),
227 Terminal(FramebufferMemoryLock),
228 Terminal(FramebufferPresentationReceiverLock),
229 Terminal(FramebufferSceneStateLock),
230 Terminal(FramebufferViewBoundProtocolsLock),
231 Terminal(FramebufferViewIdentityLock),
232 Terminal(FsNodeFsVerityLock),
233 Terminal(FsRegistryLock),
234 Terminal(FuchsiaRemoteTargetLock),
235 Terminal(FunctionFsResultLock),
236 Terminal(FuseConnectionsLock),
237 Terminal(FuseNodeStateLock),
238 Terminal(HrTimerIsIntervalLock),
239 Terminal(HrTimerManagerStateLock),
240 Terminal(IcmpPingGidsLock),
241 Terminal(InotifyWatchersLock),
242 Terminal(InputFileInputFileLock),
243 Terminal(IoUringStateLock),
244 Terminal(KgslAllocatorLock),
245 Terminal(KgslContextsLock),
246 Terminal(KgslGpuObjsLock),
247 Terminal(KgslSyncSourcesLock),
248 Terminal(MagmaBuffersLock),
249 Terminal(MagmaDevicesLock),
250 Terminal(MagmaSemaphoresLock),
251 Terminal(MapInfoCacheBufLock),
252 Terminal(MountsLevel),
253 Terminal(NamespaceFlagsLock),
254 Terminal(NanohubContentsLock),
255 Terminal(NanohubServiceLock),
256 Terminal(NetnsIdLock),
257 Terminal(NmfsNetworkManagerLock),
258 Terminal(OverlayFsDirEntriesLock),
259 Terminal(PagerFilesByInodeLock),
260 Terminal(PagerFilesystemsLock),
261 Terminal(PerfFormatIdLookupTableLock),
262 Terminal(PerfRingBufferStateLock),
263 Terminal(PidToKoidMapInnerLock),
264 Terminal(PortWaiterCallbacksLock),
265 Terminal(PortWaiterWaitQueuesLock),
266 Terminal(PowerMessageCountersLock),
267 Terminal(ProfileHandleCacheLock),
268 Terminal(PtsIdsSetLock),
269 Terminal(QbgReadQueueLock),
270 Terminal(QbgShutdownLock),
271 Terminal(ReadWriteBytesFileLock),
272 Terminal(RemoteBinderControllerLock),
273 Terminal(RemoteBinderResponderLock),
274 Terminal(RemoteBundleInnerLock),
275 Terminal(RemoteUnixDomainSocketStateLock),
276 Terminal(RwQueueInnerLock),
277 Terminal(SeLinuxFsContextSidLock),
278 Terminal(SeLinuxPeerSidLock),
279 Terminal(SeLinuxPendingEntriesLock),
280 Terminal(SeLinuxPendingFileSystemsLock),
281 Terminal(SeLinuxUpdateLock),
282 Terminal(SignalActionsLock),
283 Terminal(SocketStateLock),
284 Terminal(StubBytesFileStateLock),
285 Terminal(SuspendResumeManagerInnerLock),
286 Terminal(SyscallLogFiltersLock),
287 Terminal(SyslogStateLock),
288 Terminal(TaskCommandLevel),
289 Terminal(ThermalChargeLevelLock),
290 Terminal(ThreadLockupDetectorRegistryLock),
291 Terminal(TouchPowerPolicyEnabledLock),
292 Terminal(TraceFsDataLock),
293 Terminal(TunDevTunLock),
294 Terminal(UtsNamespaceLock),
295 Terminal(VmspliceSegmentsLock),
296 Terminal(WakeSourcesLock),
297 Terminal(WakeWatchersLock),
298 }