Поделиться через


DF — PNP Rebalance Request New Resources Device Test (Development and Integration)

Как и в случае с тестом удаления, тестовое приложение пытается добавить верхний фильтр в стек целевого устройства, а затем перезапустить стек устройств с помощью SetupDiCallClassInstaller с DIF_PROPERTYCHANGE. Если эта попытка не увенчалась успехом (т. е. если кто-то в стеке целевого устройства не выполнил запрос на удаление IRP), тест перезагружает компьютер для проверки повторной балансировки.

Этот тест инициирует повторную балансировку, а также управляет потребностью устройства в ресурсах, чтобы максимально увеличить вероятность того, что на самом деле новые ресурсы будут выделены устройству. Этот параметр также помогает устройству без ресурсов пройти полную процедуру повторной балансировки:

  1. Сначала запускается простая повторная балансировка, что приводит к следующим irp:

    • IRP_MN_QUERY_STOP_DEVICE (предполагается, что этот IRP передается всеми драйверами. Тест уже охватывает случай, когда этот IRP завершается сбоем.)

    • IRP_MN_QUERY_RESOURCE_REQUIREMENTS

    • IRP_MN_FILTER_RESOURCE_REQUIREMENTS. В ответ на этот IRP драйвер фильтра принимает меры в зависимости от того, потребляет ли устройство какие-либо ресурсы:

      • Если у устройства нет требований к ресурсам, фильтр назначает поддельный ресурс.
      • Если у устройства есть требования к ресурсам, оно пытается перестроить список требований к ресурсам таким образом, чтобы максимально увеличить вероятность изменения текущего назначения. Например, если устройству требуется 2 байта памяти в диапазоне от 00 до FF и в настоящее время назначено значение 3A–3B, измените так, чтобы новое требование к ресурсам (в порядке предпочтения) выглядело как 00-39, 3C-FF или 3A-3B. Аналогичным образом, если в списке требований к ресурсам устройства есть альтернативные требования, он изменит их порядок, чтобы альтернативное требование было указано раньше в списке.
  2. Теперь устройство всегда должно выполнять процедуру повторного балансировки.

    IRP_MN_STOP_DEVICE

    IRP_MN_START_DEVICE (новые выделенные ресурсы. Если были созданы поддельные требования, маскировка новых ресурсов от фактических драйверов.)

  • Тестовый двоичный файл: Devfund_PnPDTest.dll
  • Метод теста: PNPTryStopDeviceRequestNewResourcesAndRestartDevice

Тест Отключить поддержку расширенного тестирования устройств (EDT) удаляет драйвер фильтра теста (msdmfilt.sys) в качестве верхнего фильтра на устройствах, указанных с помощью параметра DQ. Этот фильтр теста устанавливается в рамках выполнения тестов в этой категории тестов.

  • Тестовый двоичный файл: Devfund_PnPDTest.dll
  • Метод теста: DisableEnhancedDeviceTestingSupport

Сведения о тесте

   
Характеристики
  • Device.DevFund.Reliability.Discretional
Платформы
  • Windows 10, клиентские выпуски (x86)
  • Windows 10, клиентские выпуски (x64)
  • Windows Server 2016 (x64)
  • Windows 10, клиентские выпуски (Arm64)
  • Windows 10, мобильный выпуск (Arm)
  • Windows 10, мобильный выпуск (Arm64)
Поддерживаемые выпуски
  • Windows 10
  • Windows 10 версии 1511
  • Windows 10, версия 1607
  • Windows 10 версии 1703
  • Windows 10 версии 1709
  • Windows 10 версии 1803
  • Windows 10, версия 1809
  • Windows 10 версии 1903
  • Следующее обновление до Windows 10
Ожидаемое время выполнения (в минутах) 3
Категория Сценарий
Время ожидания (в минутах) 45
Требуется перезагрузка false
Требуется специальная конфигурация Да
Тип automatic

 

Дополнительная документация

Тесты в этой области функций могут содержать дополнительную документацию, включая предварительные требования, сведения о настройке и устранении неполадок, которые можно найти в следующих разделах:

Выполнение теста

Перед запуском теста завершите настройку теста, как описано в разделе Требования к тестированию : Предварительные требования к тестированию надежности Device.Fundamentals.

Устранение неполадок

Общие сведения об устранении неполадок при тестировании HLK см. в разделе Устранение неполадок при тестировании Windows HLK.

Сведения об устранении неполадок, относящихся к тестам Device Fundamentals в HLK и WDK, см. в дополнительной документации по Device.DevFund.

Дополнительные сведения

Параметры

Имя параметра Описание параметра
DQ Запрос SDEL WDTF, используемый для идентификации целевых устройств. https://go.microsoft.com/fwlink/?LinkId=232678
Wpa2PskAesSsid Требуется только в том случае, если DUT или одно из его дочерних устройств является адаптером Wi-Fi. Укажите SSID сети WPA2 AES WiFi, которую тест может использовать для тестирования адаптера Wi-Fi. Значение по умолчанию — kitstestssid.
Wpa2PskPassword Требуется только в том случае, если DUT или одно из его дочерних устройств является адаптером Wi-Fi. Укажите пароль сети Wi-Fi WPA2 AES, указанной с помощью параметра Wpa2PskAesSsid. Значение по умолчанию — password.
WDTFREMOTESYSTEM Требуется только в том случае, если DUT или одно из его дочерних устройств является проводной сетевой картой без адреса шлюза IPv6. Если определено, что это требуется, укажите IPv6-адрес, по которому тестовый сетевой адаптер может проверить связь для тестирования сетевых операций ввода-вывода. Например: fe80::78b6:810:9c12:46cd
DriverVerifierAdditionalDrivers Дополнительные драйверы, для которых должно быть включено средство проверки драйверов
DriverVerifierExcludedFlags Заполнитель для флагов средства проверки драйверов, которые могут быть исключены вручную для тестового запуска
MultiDeviceHardwareIdSdelQueryHardwareID Несколько устройств SDEL
MultiDeviceInstanceIdSdelWDKDeviceID Идентификатор устройства DUT
DriverVerifierCustomizeConfiguration Указывает, что для этого теста может потребоваться автоматически обновить параметры средства проверки драйверов.
TestCycles Количество циклов, для которых выполняется тест.
DoSimpleIO Верно или неверно. Запускает SimpleIO (при обнаружении) на тестовых устройствах до и после выполнения операций PNP.
IOPeriod Период времени в минутах для запуска SimpleIO (если он найден).
DoConcurrentIO Верно или неверно. Использует параллельный интерфейс ввода-вывода WDTF для отправки запросов ввода-вывода в стеки целевых устройств при выполнении операций PNP.