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