1use lock_ordering_macro::lock_ordering;
6
7lock_ordering! {
8 AbstractSocketNamespaceLock => UnixSocketInnerLock,
10 AbstractSocketNamespaceLock => VsockSocketInnerLock,
11 AioPendingOperationsLock => WaitQueueImplLock,
12 AshmemStateLock => FsNodeWriteGuardStateLock,
13 AshmemStateLock => MemoryManagerStateLock,
14 BeforeFsNodeAppend => FsNodeAppend,
15 BinderFreezeLevel => BinderProcessStateLevel,
16 BinderFsDevicesLevel => DeviceRegistryStateLevel,
17 BinderFsDevicesLevel => FsNodeCacheLock,
18 BinderFsDevicesLevel => MemoryManagerStateLock,
19 BinderFsDevicesLevel => RwQueueInnerLock,
20 BinderObjectLevel => BinderThreadStateLock,
21 BinderProcessSharedMemoryLevel => BinderFreezeLevel,
22 BinderProcessSharedMemoryLevel => FsRenameRecursive,
23 BinderProcessSharedMemoryLevel => TaskFilesLock,
24 BinderProcessStateLevel => BinderContextManagerLevel,
25 BinderProcessStateLevel => BinderObjectLevel,
26 BinderProcessStateLevel => BinderThreadRequeueEventLock,
27 BinderProcsLevel => BinderProcessSharedMemoryLevel,
28 BinderThreadStateLock => BinderThreadRequeueEventLock,
29 BinderThreadStateLock => MemoryManagerStateLock,
30 BinderThreadStateLock => ThreadGroupMutableStateLock,
31 BinderThreadStateLock => WaiterEventHandlerLock,
32 CgroupChildrenLock => CgroupStateLock,
33 CgroupDirectoryInterfaceFilesLock => CgroupChildrenLock,
34 CgroupDirectoryInterfaceFilesLock => CgroupDirectoryNodesLock,
35 CgroupDirectoryInterfaceFilesLock => RwQueueInnerLock,
36 CgroupPidTableLock => CgroupStateLock,
37 CgroupStateLock => ThreadGroupMutableStateLock,
38 CgroupV1Level => CgroupPidTableLock,
39 CrashesPerProcessLock => ThrottledCoreDumpsLock,
40 DeviceMapperRegistryDevicesLock => DmDeviceStateLock,
41 DeviceMapperRegistryDevicesLock => DynamicThreadSpawnerLock,
42 DeviceRegistryStateLevel => NetlinkSocketInnerLock,
43 DeviceTerminalsLock => TerminalMutableStateLock,
44 DirEntryChildrenLevel => BinderFsDevicesLevel,
45 DirEntryChildrenLevel => CgroupDirectoryInterfaceFilesLock,
46 DirEntryChildrenLevel => FileSystemEntriesLock,
47 DirEntryChildrenLevel => FileSystemPermanentLock,
48 DirEntryChildrenLevel => InotifyStateLock,
49 DirEntryChildrenLevel => MmDumpable,
50 DirEntryChildrenLevel => NetstackDevicesLock,
51 DirEntryChildrenLevel => NmfsNetworkManagerLock,
52 DirEntryChildrenLevel => SeLinuxPendingEntriesLock,
53 DirEntryChildrenLevel => SeLinuxUpdateLock,
54 DirEntryChildrenLevel => UnixSocketInnerLock,
55 DirEntryChildrenRecursiveLevel => FsNodeCacheRecursiveLock,
56 DirEntryChildrenRecursiveLevel => MemoryDirectoryReaddirPositionLock,
57 DmDeviceStateLock => DirEntryChildrenLevel,
58 DmDeviceStateLock => MemoryManagerStateLock,
59 DynamicFileStateLock => CgroupV1Level,
60 DynamicFileStateLock => FsRegistryLock,
61 DynamicFileStateLock => MapInfoCacheBufLock,
62 DynamicFileStateLock => MemoryManagerStateLock,
63 DynamicFileStateLock => MemoryPressureMonitor,
64 DynamicFileStateLock => TaskCredsLock,
65 EbpfMapStateLevel => EbpfSuspendLock,
66 EbpfStateLock => EbpfSuspendLock,
67 EbpfStateLock => MemoryManagerStateLock,
68 EpollStateLock => BinderProcsLevel,
69 EpollStateLock => EventFdInnerLock,
70 EpollStateLock => MemoryPressureMonitor,
71 EpollStateLock => SuspendResumeManagerInnerLock,
72 EpollStateLock => TimerFileInfoLock,
73 EpollWaitableStateLock => WaitQueueImplLock,
74 ExecutorVmarManagerLock => ThreadGroupPtraceesLock,
75 FastrpcInnerState => MemoryManagerStateLock,
76 FdTableMutableStateLock => FsNodeInfoLevel,
77 FdTableMutableStateLock => MountsLevel,
78 FileEpollFilesLock => EpollStateLock,
79 FileObjectOffset => BeforeFsNodeAppend,
80 FileObjectOffset => DynamicFileStateLock,
81 FileObjectOffset => FuseFsNodeCacheLock,
82 FileObjectOffset => FuseFsNodeInfoLevel,
83 FileObjectOffset => FuseNodeStateLock,
84 FileObjectOffset => IcmpPingGidsLock,
85 FileObjectOffset => OverlayFsDirEntriesLock,
86 FileObjectOffset => PerfTraceEventQueueListLock,
87 FileObjectOffset => SeLinuxFsContextSidLock,
88 FileObjectOffset => SeLinuxPendingFileSystemsLock,
89 FileObjectOffset => SeLinuxQueryCacheResetLock,
90 FileObjectOffset => StubBytesFileStateLock,
91 FramebufferInfoLock => FramebufferPresentationReceiverLock,
92 FramebufferInfoLock => FramebufferViewBoundProtocolsLock,
93 FramebufferInfoLock => FramebufferViewIdentityLock,
94 FramebufferInfoLock => MemoryManagerStateLock,
95 FsContextStateLock => MountsLevel,
96 FsNodeAppend => MemoryManagerStateLock,
97 FsNodeAppend => UninterruptibleLock,
98 FsNodeCacheLock => FsNodeInfoLevel,
99 FsNodeCacheLock => SeLinuxQueryCacheResetLock,
100 FsNodeCacheRecursiveLock => FsNodeInfoRecursiveLevel,
101 FsNodeCacheRecursiveLock => SeLinuxQueryCacheResetLock,
102 FsNodeFlockInfoLock => WaitQueueImplLock,
103 FsNodeInfoLevel => FsNodeWriteGuardStateLock,
104 FsNodeInfoRecursiveLevel => FsRename,
105 FsNodeWriteGuardStateLock => FsNodeFsVerityLock,
106 FsNodeWriteGuardStateLock => SeLinuxQueryCacheResetLock,
107 FsNodeWriteGuardStateLock => ThreadGroupLimits,
108 FsNodeWriteGuardStateLock => WaitQueueImplLock,
109 FsRename => DirEntryChildrenLevel,
110 FsRenameRecursive => DirEntryChildrenRecursiveLevel,
111 FunctionFsStateLock => MemoryManagerStateLock,
112 FunctionFsStateLock => WaitQueueImplLock,
113 FuseConnectionStateLock => PortWaiterCallbacksLock,
114 FuseConnectionStateLock => WaitQueueImplLock,
115 FuseDirEntryChildrenLevel => FuseFsNodeCacheLock,
116 FuseDirEntryChildrenLevel => FuseFsNodeInfoLevel,
117 FuseDirEntryChildrenLevel => FuseNodeStateLock,
118 FuseFsNodeCacheLock => FuseFsNodeInfoLevel,
119 FuseFsNodeInfoLevel => UninterruptibleLock,
120 FuseFsRenameLevel => FuseDirEntryChildrenLevel,
121 FutexTableStateLock => FsContextStateLock,
122 FutexTableStateLock => FsNodeInfoLevel,
123 FutexTableStateLock => InflightVmsplicedPayloadsLock,
124 FutexTableStateLock => MemoryManagerStateLock,
125 GenericNetlinkServerStateLock => NetlinkSocketInnerLock,
126 InotifyStateLock => EventHandlerReadyQueueLock,
127 InotifyStateLock => MemoryManagerStateLock,
128 InotifyStateLock => PortWaiterCallbacksLock,
129 InotifyStateLock => WaitQueueImplLock,
130 InputEventRelayOpenedFilesLock => WaitQueueImplLock,
131 InputRelayDeviceInfosLock => InputDeviceInfoLock,
132 IoUringStateLock => MemoryManagerStateLock,
133 KernelsLock => StarnixKernelWakeLeaseLock,
134 LoopDeviceStateLock => FsContextStateLock,
135 LoopDeviceStateLock => FsNodeInfoLevel,
136 LoopDeviceStateLock => RemoteBundleInnerLock,
137 LoopDevicesLock => DeviceRegistryStateLevel,
138 LoopDevicesLock => DynamicThreadSpawnerLock,
139 LoopDevicesLock => LoopDeviceStateLock,
140 LoopDevicesLock => SimpleDirectoryEntriesLock,
141 LoopDevicesLock => TaskMutableStateLock,
142 MagmaConnectionsLock => DirEntryChildrenLevel,
143 MemoryAttributionPublisherLock => DynamicThreadSpawnerLock,
144 MemoryDirectoryReaddirPositionLock => DirEntryChildrenLevel,
145 MemoryManagerStateLock => ExpandoLock,
146 MemoryManagerStateLock => FsContextStateLock,
147 MemoryManagerStateLock => FsNodeInfoLevel,
148 MemoryManagerStateLock => InflightVmsplicedPayloadsLock,
149 MemoryManagerStateLock => MapInfoCacheBufLock,
150 MemoryManagerStateLock => SeLinuxFsContextSidLock,
151 MemoryManagerStateLock => SeLinuxQueryCacheResetLock,
152 MemoryManagerStateLock => ThreadGroupLimits,
153 MemoryManagerStateLock => UserFaultInner,
154 MemoryPressureMonitor => MemoryPressureMonitorClientState,
155 MemoryPressureMonitor => PortWaiterCallbacksLock,
156 MountsLevel => MountSubmountsLock,
157 NetlinkSocketInnerLock => EpollWaitableStateLock,
158 NetlinkSocketInnerLock => EventHandlerReadyQueueLock,
159 NetlinkSocketInnerLock => PortWaiterCallbacksLock,
160 NetstackDevicesLock => SimpleDirectoryEntriesLock,
161 NflogListenersLock => NetlinkSocketInnerLock,
162 OverlayFsDirEntriesLock => MemoryManagerStateLock,
163 OverlayFsStateLock => FsNodeCacheRecursiveLock,
164 OverlayFsStateLock => SeLinuxQueryCacheResetLock,
165 PerfTraceEventQueueListLock => PerfRingBufferStateLock,
166 PidTableLock => CgroupPidTableLock,
167 PidTableLock => MemoryAttributionPublisherLock,
168 PidTableLock => ThreadGroupMutableStateLock,
169 PidTableLock => ThreadGroupPtraceesLock,
170 PowerStatsManagerLock => DeviceRegistryStateLevel,
171 PowerStatsManagerLock => SimpleDirectoryEntriesLock,
172 QbgReadQueueLock => MemoryManagerStateLock,
173 RecordLocksStateLock => PortWaiterCallbacksLock,
174 RecordLocksStateLock => WaitQueueImplLock,
175 RemoteBinderHandleLevel => BinderProcsLevel,
176 RemoteBlockDeviceRegistryDevicesLock => SimpleDirectoryEntriesLock,
177 SeLinuxFsContextSidLock => SeLinuxQueryCacheResetLock,
178 SeLinuxQueryCacheResetLock => SeLinuxSecurityServerStateLock,
179 SignalFdMaskLock => ThreadGroupPendingSignalsLock,
180 SimpleDirectoryEntriesLock => FsNodeCacheLock,
181 SimpleDirectoryEntriesLock => RwQueueInnerLock,
182 SyslogSubscriptionLock => PortWaiterCallbacksLock,
183 SyslogSubscriptionLock => WaitQueueImplLock,
184 TaskCredsLock => DirEntryChildrenRecursiveLevel,
185 TaskCredsLock => FsNodeInfoRecursiveLevel,
186 TaskCredsLock => OverlayFsStateLock,
187 TaskCredsLock => TaskFilesLock,
188 TaskFilesLock => FdTableMutableStateLock,
189 TaskMutableStateLock => EpollWaitableStateLock,
190 TaskMutableStateLock => FutexTableStateLock,
191 TaskMutableStateLock => IntervalTimerState,
192 TaskMutableStateLock => PortWaiterCallbacksLock,
193 TaskMutableStateLock => ProfileHandleCacheLock,
194 TaskMutableStateLock => SeccompNotifierLock,
195 TaskMutableStateLock => SignalActionsLock,
196 TaskMutableStateLock => SignalFdMaskLock,
197 TaskMutableStateLock => TaskCommandLevel,
198 TaskMutableStateLock => TaskFilesLock,
199 TaskMutableStateLock => ThreadGroupLimits,
200 TaskMutableStateLock => UtsNamespaceLock,
201 TerminalMutableStateLock => EventHandlerReadyQueueLock,
202 TerminalMutableStateLock => TaskMutableStateLock,
203 ThreadGroupLimits => SeLinuxQueryCacheResetLock,
204 ThreadGroupMutableStateLock => DeviceTerminalsLock,
205 ThreadGroupPtraceesLock => ThreadGroupMutableStateLock,
206 TimerFileInfoLock => HrTimerManagerStateLock,
207 TimerFileInfoLock => TaskMutableStateLock,
208 TimerTableStateLock => HrTimerIsIntervalLock,
209 TimerTableStateLock => IntervalTimerState,
210 TracePerformanceEventManagerStateLock => PidToKoidMapInnerLock,
211 UEventNetlinkSocketDeviceListenerKeyLock => DeviceRegistryStateLevel,
212 UninterruptibleLock => AioPendingOperationsLock,
213 UninterruptibleLock => AshmemStateLock,
214 UninterruptibleLock => CgroupV1Level,
215 UninterruptibleLock => ComponentMountRecordLock,
216 UninterruptibleLock => CrashesPerProcessLock,
217 UninterruptibleLock => DevKmsgLock,
218 UninterruptibleLock => DeviceMapperRegistryDevicesLock,
219 UninterruptibleLock => EbpfMapStateLevel,
220 UninterruptibleLock => EbpfStateLock,
221 UninterruptibleLock => ExecutorVmarManagerLock,
222 UninterruptibleLock => FastrpcInnerState,
223 UninterruptibleLock => FileEpollFilesLock,
224 UninterruptibleLock => FramebufferInfoLock,
225 UninterruptibleLock => FsNodeFlockInfoLock,
226 UninterruptibleLock => FunctionFsStateLock,
227 UninterruptibleLock => FuseConnectionStateLock,
228 UninterruptibleLock => GenericNetlinkServerStateLock,
229 UninterruptibleLock => InotifyWatchersLock,
230 UninterruptibleLock => InputDeviceFileNodesLock,
231 UninterruptibleLock => InputEventRelayOpenedFilesLock,
232 UninterruptibleLock => IoUringStateLock,
233 UninterruptibleLock => KernelIpTables,
234 UninterruptibleLock => KernelSwapFiles,
235 UninterruptibleLock => LoopDevicesLock,
236 UninterruptibleLock => MagmaConnectionsLock,
237 UninterruptibleLock => MemoryXattrStorageLevel,
238 UninterruptibleLock => NflogListenersLock,
239 UninterruptibleLock => OverlayFsStateLock,
240 UninterruptibleLock => PerfEventLevel,
241 UninterruptibleLock => PidTableLock,
242 UninterruptibleLock => PowerStatsManagerLock,
243 UninterruptibleLock => QbgReadQueueLock,
244 UninterruptibleLock => QipcrtrSocketInnerLock,
245 UninterruptibleLock => RecordLocksStateLock,
246 UninterruptibleLock => RemoteBinderHandleLevel,
247 UninterruptibleLock => RemoteBlockDeviceRegistryDevicesLock,
248 UninterruptibleLock => SeLinuxFsContextSidLock,
249 UninterruptibleLock => SeLinuxQueryCacheResetLock,
250 UninterruptibleLock => SyslogSubscriptionLock,
251 UninterruptibleLock => TaskCredsLock,
252 UninterruptibleLock => TracePerformanceEventManagerStateLock,
253 UninterruptibleLock => UinputDeviceStateLock,
254 UninterruptibleLock => UserFaultInner,
255 UninterruptibleLock => VsockSocketInnerLock,
256 UnixSocketInnerLock => EpollWaitableStateLock,
257 UnixSocketInnerLock => EventHandlerReadyQueueLock,
258 UnixSocketInnerLock => MemoryManagerStateLock,
259 UnixSocketInnerLock => PortWaiterCallbacksLock,
260 UnixSocketInnerLock => SeLinuxPeerSidLock,
261 UnixSocketInnerLock => SeLinuxQueryCacheResetLock,
262 UnixSocketInnerLock => SocketStateLock,
263 Unlocked => FileObjectOffset,
264 Unlocked => FuseFsRenameLevel,
265 Unlocked => UninterruptibleLock,
266 VsockSocketInnerLock => PortWaiterCallbacksLock,
267 VsockSocketInnerLock => WaitQueueImplLock,
268 WaitQueueImplLock => PortWaiterWaitQueuesLock,
269 WaitQueueImplLock => SeLinuxQueryCacheResetLock,
270 WaiterEventHandlerLock => EpollWaitableStateLock,
271 Terminal(AioEventsLock),
277 Terminal(AndroidUsbCcToggleEnableLock),
278 Terminal(AuditDenyCountsLock),
279 Terminal(AuditNetlinkClientAuditResponseLock),
280 Terminal(AuditQueueLock),
281 Terminal(AuditSinkLock),
282 Terminal(BinderThreadRequeueEventLock),
283 Terminal(BootedLock),
284 Terminal(CgroupDirectoryNodesLock),
285 Terminal(ComponentControllerLock),
286 Terminal(CoreDumpListLock),
287 Terminal(CpuC2ProxyCacheLock),
288 Terminal(CpuFreqProxyCacheLock),
289 Terminal(DynamicThreadSpawnerLock),
290 Terminal(EbpfVerifierDependenciesLock),
291 Terminal(EventFdInnerLock),
292 Terminal(EventHandlerReadyQueueLock),
293 Terminal(ExpandoLock),
294 Terminal(FileAsyncOwnerLock),
295 Terminal(FileLeaseLock),
296 Terminal(FileServerStatsLock),
297 Terminal(FileSystemEntriesLock),
298 Terminal(FileSystemPermanentLock),
299 Terminal(FramebufferMemoryLock),
300 Terminal(FramebufferPresentationReceiverLock),
301 Terminal(FramebufferSceneStateLock),
302 Terminal(FramebufferViewBoundProtocolsLock),
303 Terminal(FramebufferViewIdentityLock),
304 Terminal(FsNodeFsVerityLock),
305 Terminal(FsRegistryLock),
306 Terminal(FuchsiaRemoteTargetLock),
307 Terminal(FunctionFsResultLock),
308 Terminal(FuseConnectionsLock),
309 Terminal(FuseNodeStateLock),
310 Terminal(HrTimerIsIntervalLock),
311 Terminal(HrTimerManagerStateLock),
312 Terminal(IcmpPingGidsLock),
313 Terminal(InotifyWatchersLock),
314 Terminal(InputDeviceInfoLock),
315 Terminal(InputFileInputFileLock),
316 Terminal(InputRelayDisplaySizeLock),
317 Terminal(KgslAllocatorLock),
318 Terminal(KgslContextsLock),
319 Terminal(KgslGpuObjsLock),
320 Terminal(KgslSyncSourcesLock),
321 Terminal(MagmaBuffersLock),
322 Terminal(MagmaDevicesLock),
323 Terminal(MagmaSemaphoresLock),
324 Terminal(MapInfoCacheBufLock),
325 Terminal(MemoryManagerCachedStatsLock),
326 Terminal(NamespaceFlagsLock),
327 Terminal(NanohubContentsLock),
328 Terminal(NanohubServiceLock),
329 Terminal(NetnsIdLock),
330 Terminal(NmfsNetworkManagerLock),
331 Terminal(NotFoundCountsLock),
332 Terminal(OdpmRailLastReadingLock),
333 Terminal(OdpmRailProxyLock),
334 Terminal(PagerFilesByInodeLock),
335 Terminal(PagerFilesystemsLock),
336 Terminal(PerfFormatIdLookupTableLock),
337 Terminal(PerfRingBufferStateLock),
338 Terminal(PidToKoidMapInnerLock),
339 Terminal(PortWaiterCallbacksLock),
340 Terminal(PortWaiterWaitQueuesLock),
341 Terminal(PowerMessageCountersLock),
342 Terminal(PrefetchQueueStateLock),
343 Terminal(PrefetchWorkerReceiversLock),
344 Terminal(ProfileHandleCacheLock),
345 Terminal(PsiProviderHistoryLock),
346 Terminal(PtsIdsSetLock),
347 Terminal(QbgShutdownLock),
348 Terminal(RcuCacheLock),
349 Terminal(RcuHashMapLock),
350 Terminal(ReadWriteBytesFileLock),
351 Terminal(RebootErrorStateLock),
352 Terminal(RemoteBinderControllerLock),
353 Terminal(RemoteBinderResponderLock),
354 Terminal(RemoteBundleInnerLock),
355 Terminal(RemoteUnixDomainSocketStateLock),
356 Terminal(RwQueueInnerLock),
357 Terminal(SeLinuxPeerSidLock),
358 Terminal(SeLinuxPendingEntriesLock),
359 Terminal(SeLinuxPendingFileSystemsLock),
360 Terminal(SeLinuxSecurityServerStateLock),
361 Terminal(SeLinuxUpdateLock),
362 Terminal(SignalActionsLock),
363 Terminal(SocketStateLock),
364 Terminal(StarnixKernelWakeLeaseLock),
365 Terminal(StubBytesFileStateLock),
366 Terminal(SuspendResumeManagerInnerLock),
367 Terminal(SyscallLogFiltersLock),
368 Terminal(SyslogStateLock),
369 Terminal(TaskCommandLevel),
370 Terminal(ThermalChargeLevelLock),
371 Terminal(ThreadLockupDetectorRegistryLock),
372 Terminal(ThrottledCoreDumpsLock),
373 Terminal(TouchPowerPolicyEnabledLock),
374 Terminal(TraceFsDataLock),
375 Terminal(TunDevTunLock),
376 Terminal(UinputDeviceStateLock),
377 Terminal(UtsNamespaceLock),
378 Terminal(VmspliceSegmentsLock),
379 Terminal(WakeSourcesLock),
380 Terminal(WakeWatchersLock),
381 }