Skip to content

Instantly share code, notes, and snippets.

@jessica0f0116
Last active October 30, 2022 11:59
Show Gist options
  • Select an option

  • Save jessica0f0116/17c9b2befa1e6382f157deadb234c5fb to your computer and use it in GitHub Desktop.

Select an option

Save jessica0f0116/17c9b2befa1e6382f157deadb234c5fb to your computer and use it in GitHub Desktop.
gDxgkInterface Windows 10 2004/20H2
0: kd> dqs win32kbase!gDxgkInterface win32kbase!gDxgkInterface+320h //win32kbase xrefs
ffffe412`87e5d7f0 00000000`002c0328
ffffe412`87e5d7f8 ffffe412`87c00000 win32kbase!DeferSysPeekMsg <PERF> (win32kbase+0x0)
ffffe412`87e5d800 00000000`00000000
ffffe412`87e5d808 fffff800`8331e5c0 dxgkrnl!DXG_GUEST_COMPOSITIONOBJECTCHANNEL::ChannelStarted
ffffe412`87e5d810 fffff800`8331e5c0 dxgkrnl!DXG_GUEST_COMPOSITIONOBJECTCHANNEL::ChannelStarted // DxDdCleanupDxGraphics ;
ffffe412`87e5d818 fffff800`8330fbf0 dxgkrnl!DxgkProcessCallout // GdiProcessCallout ;
ffffe412`87e5d820 fffff800`83337470 dxgkrnl!DxgkNotifyProcessFreezeCallout // W32CalloutDispatch ;
ffffe412`87e5d828 fffff800`83337320 dxgkrnl!DxgkNotifyProcessThawCallout // W32CalloutDispatch ;
ffffe412`87e5d830 fffff800`83306670 dxgkrnl!DxgkOpenAdapter // DxgkEngOpenAdapterFromHdc ;
ffffe412`87e5d838 fffff800`832eb490 dxgkrnl!DxgkEnumAdapters2Impl // GreSfmCleanupPresentHistory ;
ffffe412`87e5d840 fffff800`83362cc0 dxgkrnl!DxgkGetMaximumAdapterCount // DrvInitConsole ;
ffffe412`87e5d848 fffff800`8330d060 dxgkrnl!DxgkCloseAdapterImpl // GreSfmCleanupPresentHistory ;
ffffe412`87e5d850 fffff800`83336410 dxgkrnl!DxgkDestroyDevice
ffffe412`87e5d858 fffff800`8331c2d0 dxgkrnl!DxgkEscape // GreSfmCleanupDxgAdapter ;
ffffe412`87e5d860 fffff800`8334b070 dxgkrnl!DxgkGetPresentHistoryInternal
ffffe412`87e5d868 fffff800`83491990 dxgkrnl!DxgkReleaseProcessVidPnSourceOwners
ffffe412`87e5d870 fffff800`83430110 dxgkrnl!DxgkPollDisplayChildrenInternal // DrvDxgkPollDisplayChildren ;
ffffe412`87e5d878 fffff800`8335fb10 dxgkrnl!DxgkFlushPresentHistory // GreSfmCleanupDxgAdapter ;
ffffe412`87e5d880 fffff800`832f8100 dxgkrnl!DxgkGetPathsModality // DrvSetDisplayConfig ; GetPathsModality ; SetDisplayConfigHandlePreferredScaling
ffffe412`87e5d888 fffff800`832eaa00 dxgkrnl!DxgkFunctionalizePathsModality // DrvSetDisplayConfig ; DrvFunctionalizeBaseVidMode ; DrvFunctionalizeDisplayConfig
ffffe412`87e5d890 fffff800`832e92a0 dxgkrnl!DxgkApplyPathsModality // ApplyPathsModality ;
ffffe412`87e5d898 fffff800`832e9390 dxgkrnl!DxgkFinalizePathsModality // ApplyPathsModality ;
ffffe412`87e5d8a0 fffff800`8333baa0 dxgkrnl!DxgkPersistPathsModality // DrvSetDisplayConfig ; DrvDisplayConfigSetDeviceInfo
ffffe412`87e5d8a8 fffff800`83362b70 dxgkrnl!DxgkFreePathsModality // FreePathsModality ;
ffffe412`87e5d8b0 fffff800`8333f550 dxgkrnl!DxgkAugmentCdsj // DrvValidateAndApplyDevMode ;
ffffe412`87e5d8b8 fffff800`8334a5e0 dxgkrnl!DxgkGetPresentHistoryReadyEvent // GreSfmGetPresentQueueEvent ;
ffffe412`87e5d8c0 fffff800`832f3e60 dxgkrnl!DxgkGetDisplayConfigBufferSizes // DrvGetDisplayConfigBufferSizes ;
ffffe412`87e5d8c8 fffff800`832f4090 dxgkrnl!DxgkQueryDisplayConfig // DrvQueryDisplayConfig ;
ffffe412`87e5d8d0 fffff800`834a27f0 dxgkrnl!DxgkHandleForceProjectionMonitor // CreatePathPersistentMonitorsIfNeeded ; DrvDisplayConfigSetDeviceInfo
ffffe412`87e5d8d8 fffff800`833619c0 dxgkrnl!DxgkUpdateCddDevmodeExtraData // DrvProbeAndCaptureDevmode ;
ffffe412`87e5d8e0 fffff800`834a2cc0 dxgkrnl!DxgkProcessDisplayCalloutBatch // DrvProcessDxgkDisplayCallout ;
ffffe412`87e5d8e8 fffff800`832f7320 dxgkrnl!DxgkDisplayConfigDeviceInfo // DrvDisplayConfigGetDeviceInfoInternal ; DrvDisplayConfigGetDeviceInfo
ffffe412`87e5d8f0 fffff800`8330e010 dxgkrnl!DxgkGetAdapterDeviceDesc // DrvpDisplayConfigGetDisplayDeviceInfo;
ffffe412`87e5d8f8 fffff800`8332ade0 dxgkrnl!DxgkGetMonitorInternalInfo // DrvDisplayConfigGetDeviceInfoInternal ; GetMonitorPhysicalDimensions ; DrvGetMonitorOrientation
ffffe412`87e5d900 fffff800`83355cd0 dxgkrnl!DxgkBeginTopologyTransition // DrvSetDisplayConfig ; DrvDisplayConfigSetDeviceInfo
ffffe412`87e5d908 fffff800`83355730 dxgkrnl!DxgkCompleteTopologyTransition // DrvDisplayConfigSetDeviceInfo ; `DrvSetDisplayConfig'::`2'::_AUTO::~_AUTO
ffffe412`87e5d910 fffff800`8342f460 dxgkrnl!DxgkNeedToEnableCddPrimary
ffffe412`87e5d918 fffff800`83355870 dxgkrnl!DxgkInvalidateMonitorConnections // DrvSetDisplayConfig ;
ffffe412`87e5d920 fffff800`832f42f0 dxgkrnl!DxgkWriteDiagEntry // DrvLogDiagDisplayChange ; xxxUserChangeDisplaySettings ; LogDiagCDS ; LogDiagSDC ; DrvDxgkWriteDiagEntry ; DrvDxgkLogCodePointPacket ; LogDiagSDCAccessDenied
ffffe412`87e5d928 fffff800`833382c0 dxgkrnl!DxgkGetAdapterDefaultScaling // ConvertPathPreferredScalingToAdapterDefault ;
ffffe412`87e5d930 fffff800`8335cc60 dxgkrnl!DxgkConvertDisplayConfigCScalingToDdiScaling // ConvertDisplayConfigScalingToPathModalityForPath ;
ffffe412`87e5d938 fffff800`83362390 dxgkrnl!DxgkGetGlobalRawmodeFlag // GetCcdRawmodeFlag ;
ffffe412`87e5d940 fffff800`834a2e90 dxgkrnl!DxgkSetGlobalRawmodeFlag // DrvSetPruneFlag ;
ffffe412`87e5d948 fffff800`83361fe0 dxgkrnl!DxgkQueryModeListCacheLuid // DrvBuildDevmodeList ;
ffffe412`87e5d950 fffff800`833529e0 dxgkrnl!DxgkThreadCallout // GdiThreadCallout ; GdiThreadCalloutCleanup
ffffe412`87e5d958 fffff800`83355420 dxgkrnl!DxgkSessionConnected // xxxRemoteConnect ;
ffffe412`87e5d960 fffff800`83355240 dxgkrnl!DxgkPreSessionDisconnected
ffffe412`87e5d968 fffff800`83355370 dxgkrnl!DxgkSessionDisconnected
ffffe412`87e5d970 fffff800`8336cf80 dxgkrnl!DxgkSessionReconnected
ffffe412`87e5d978 fffff800`8336cc50 dxgkrnl!DxgkGetAdapter // DrvNeedToSwitchAdapterForRemoteSession ; DrvUpdateGraphicsDeviceList ; DrvUpdateRemoteGraphicsDeviceList
ffffe412`87e5d980 fffff800`8336cdf0 dxgkrnl!DxgkReleaseAdapter // MultiUserGreCleanupDrivers ; DrvCleanupRemoteGraphicsDevices
ffffe412`87e5d988 fffff800`8335e6d0 dxgkrnl!DxgkDesktopSwitch
ffffe412`87e5d990 fffff800`832e9780 dxgkrnl!DxgkStatusChangeNotify // NotifyStatusChange ;
ffffe412`87e5d998 fffff800`834640d0 dxgkrnl!DxgkEnableUnorderedWaitsForDevice // GreDxgkEnableUnorderedWaitsForDevice ;
ffffe412`87e5d9a0 fffff800`83362120 dxgkrnl!DxgkCddVerifyCddDevMode
ffffe412`87e5d9a8 fffff800`83476fb0 dxgkrnl!DxgkIsVidPnSourceOwnerDwm // DrvUpdateDisplayModeInMdev ;
ffffe412`87e5d9b0 fffff800`832e8120 dxgkrnl!DxgkIsVidPnSourceOwnerExclusive // GreSuspendDirectDraw ;
ffffe412`87e5d9b8 fffff800`832fbab0 dxgkrnl!DxgkGetMonitorDeviceObject // DrvEnumDisplayDevices ; PruneModesByDisplayDeviceCaps ; GetMonitorBrightnessCaps ; DrvSetMonitorsDimState ; OPM::OPM::CMonitorPDO, DrvSetMonitorBrightness ; DrvDxgkGetMonitorDeviceObject ; DrvPVPGetFirstActiveMonitor ; rimFindMonitorForDigitizerWithQDCData
ffffe412`87e5d9c0 fffff800`832e6960 dxgkrnl!DxgkRegisterDwmProcess // xxxDwmProcessStartup ; GreDxgkRegisterDwmProcess ;
ffffe412`87e5d9c8 fffff800`834353c0 dxgkrnl!DxgkGetSharedResourceAdapterLuid
ffffe412`87e5d9d0 fffff800`83422810 dxgkrnl!DxgkNotifyMonitorDimming
ffffe412`87e5d9d8 fffff800`8334b9e0 dxgkrnl!DxgkGetSharedAllocationObjectType // Directcomposition::CCaptureRenderTargetMarshaler::EmitBuffers ; Directcomposition::CCaptureRenderTargetMarshaler::SetHandleArrayProperty
ffffe412`87e5d9e0 fffff800`8334b060 dxgkrnl!DxgkGetSharedSyncObjectType
ffffe412`87e5d9e8 fffff800`83363f90 dxgkrnl!DxgkGetDisplayManagerObjectType
ffffe412`87e5d9f0 fffff800`83476e90 dxgkrnl!DxgkGetProcessInterferenceCount // W32CalloutDispatch ;
ffffe412`87e5d9f8 fffff800`83362a10 dxgkrnl!DxgkGetGpuUsageStatistics // W32CalloutDispatch ;
ffffe412`87e5da00 fffff800`83338760 dxgkrnl!DxgkUpdateGdiInfo // DrvCreateMDEV ; DrvUpdateDpiInfoOnOptimizedModeChange
ffffe412`87e5da08 fffff800`83361e80 dxgkrnl!DxgkSetPresenterViewMode // DrvSetDisplayConfig ; xxxUserPowerStateCalloutWorker
ffffe412`87e5da10 fffff800`8335f3f0 dxgkrnl!DxgkGetPresenterViewMode // DrvQueryDisplayConfig ; DrvGetDisplayConfigBufferSizes ; DrvSetDisplayConfig ; DrvProcessWin32kEscape
ffffe412`87e5da18 fffff800`83353c90 dxgkrnl!DxgkSetProcessStatus // GreDxgkSetProcessStatus ;
ffffe412`87e5da20 fffff800`8330daa0 dxgkrnl!DxgkConvertLegacyQDCAdapterAndIdToActual // DrvDisplayConfigGetDeviceInfoInternal ; GetTargetVirtualization ; DrvDisplayConfigSetDeviceInfo
ffffe412`87e5da28 fffff800`832e5a70 dxgkrnl!DxgkDisplayOnOff // DrvDxgkDisplayOnOff ;
ffffe412`87e5da30 fffff800`8333eb30 dxgkrnl!DxgkIsVirtualizationDisabledForTarget // GetTargetVirtualization ;
ffffe412`87e5da38 fffff800`83360260 dxgkrnl!DxgkIsSourceInHardwareClone // DrvIsSourceInHardwareClone ;
ffffe412`87e5da40 fffff800`834a87c0 dxgkrnl!DxgkProcessLockScreen // GreLddmProcessLockScreen ;
ffffe412`87e5da48 fffff800`8349fc00 dxgkrnl!DxgkCopyPathsModality // SetDisplayConfigHandlePreferredScaling ;
ffffe412`87e5da50 fffff800`8349fb60 dxgkrnl!DxgkApplyCdsjToPathsModality // DrvValidateAndApplyDevMode ;
ffffe412`87e5da58 fffff800`834b48f0 dxgkrnl!DxgkUpdateDpiInfoForNewOverride // DrvDisplayConfigSetScaleFactorOverride ; DrvDxgkUpgradeLegacyDpiSettings
ffffe412`87e5da60 fffff800`83362770 dxgkrnl!DxgkInitializeDpi // DrvInitializeDxgkrnlDpiCache ;
ffffe412`87e5da68 fffff800`833624e0 dxgkrnl!DxgkGetDpiOverrideForSource // DrvInitializeDxgkrnlDpiCache ;
ffffe412`87e5da70 fffff800`834bb8b0 dxgkrnl!DxgkGetLegacyDpiInfo // DrvDxgkUpgradeLegacyDpiSettings ;
ffffe412`87e5da78 fffff800`83489140 dxgkrnl!DxgkWin32kSetPointerPosition // NtHWCursorUpdatePointer ;
ffffe412`87e5da80 fffff800`834892a0 dxgkrnl!DxgkWin32kSetPointerShape // NtHWCursorUpdatePointer ;
ffffe412`87e5da88 fffff800`8336d290 dxgkrnl!DxgkGetUseHWGPUInRemoteSession // DrvUpdateRemoteAdapterInfo ;
ffffe412`87e5da90 fffff800`83480470 dxgkrnl!DxgkLPMDisplayControl // DrvProcessWin32kEscape ;
ffffe412`87e5da98 fffff800`834803c0 dxgkrnl!DxgkEnableHighPrecisionBrightness // UserPowerInfoCallout ;
ffffe412`87e5daa0 fffff800`83480590 dxgkrnl!DxgkSetHighPrecisionBrightness // DrvSetMonitorBrightness ;
ffffe412`87e5daa8 fffff800`8336d1d0 dxgkrnl!DxgkChangeD3RequestsState // DrvChangeD3RequestsState ;
ffffe412`87e5dab0 fffff800`8335f4b0 dxgkrnl!DxgkGetMonitorEdid // DrvDisplayConfigGetDeviceInfoInternal ;
ffffe412`87e5dab8 fffff800`834a2640 dxgkrnl!DxgkConvertPathsModalityToDisplayConfig // DrvFunctionalizeDisplayConfig ;
ffffe412`87e5dac0 fffff800`8335cb00 dxgkrnl!DxgkConvertDisplayConfigToDevMode // DrvGetDevModeForLddmPath ; DrvGetPreferredMode
ffffe412`87e5dac8 fffff800`833545b0 dxgkrnl!DxgkDDisplayEnumInternal // SetDisplayConfigGetActualPathsModality ;
ffffe412`87e5dad0 fffff800`834a27c0 dxgkrnl!DxgkGetMonitorDisplayId // DrvDisplayConfigGetDeviceInfoInternal ;
ffffe412`87e5dad8 fffff800`8349fc90 dxgkrnl!DxgkEnumerateModesForPathsModality // DrvFunctionalizeDisplayConfig ;
ffffe412`87e5dae0 fffff800`8342c1a0 dxgkrnl!DxgCreateLiveDumpWithWdLogs // NtUserDisplayConfigGetDeviceInfo ; DrvSetDisplayConfig
ffffe412`87e5dae8 fffff800`834bcd70 dxgkrnl!DxgkDispMgrReferenceObjectByHandle // DrvSetDisplayConfig ; DrvFunctionalizeDisplayConfig
ffffe412`87e5daf0 fffff800`834bcd50 dxgkrnl!DxgkDispMgrIsTargetOwned // SetDisplayConfigHandleBrokerProvidedPaths ; FunctionalizeDisplayConfigRemoveUnownedPaths
ffffe412`87e5daf8 fffff800`834c6fa0 dxgkrnl!DxgkCheckDisplayState // DrvDxgkCheckDisplayState ;
ffffe412`87e5db00 fffff800`8335ef00 dxgkrnl!DxgkSetKernelDisplayPolicy // DispBrokerUpdateKernelDisplayPolicy ;
ffffe412`87e5db08 fffff800`833621d0 dxgkrnl!DxgkSendDisplayBrokerMessage // AsyncMessageNoAlloc ;
ffffe412`87e5db10 fffff800`834aab20 dxgkrnl!DxgkGetWddmRemoteSessionGdiViewRange
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment