From ecceb598a871f50feb70a9d4b6b8b3dd4dee85e4 Mon Sep 17 00:00:00 2001 From: froggx <39466474+froggx@users.noreply.github.com> Date: Wed, 22 May 2024 20:49:14 -0500 Subject: [PATCH 1/2] Update SurveyDDA.ps1 The cmdlet "Get-WmiObject" with, used in "SurveyDDA.ps1" as the alias "gwmi," was superseded by "Get-CimInstance" in Powershell 3.0 and later. This causes calls the calls to "gwmi" the occur in the script to fail starting with Powershell 3.0. This update replaces "gwmi" with "Get-CimInstance" for compatibility with these later Powershell versions. --- hyperv-tools/DiscreteDeviceAssignment/SurveyDDA.ps1 | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/hyperv-tools/DiscreteDeviceAssignment/SurveyDDA.ps1 b/hyperv-tools/DiscreteDeviceAssignment/SurveyDDA.ps1 index 2506ad87c..ee9739374 100644 --- a/hyperv-tools/DiscreteDeviceAssignment/SurveyDDA.ps1 +++ b/hyperv-tools/DiscreteDeviceAssignment/SurveyDDA.ps1 @@ -102,7 +102,7 @@ foreach ($pcidev in $pcidevs) { # aren't assignable. # $doubleslashDevId = "*" + $pcidev.PNPDeviceID.Replace("\","\\") + "*" - $irqAssignments = gwmi -query "select * from Win32_PnPAllocatedResource" | Where-Object {$_.__RELPATH -like "*Win32_IRQResource*"} | Where-Object {$_.Dependent -like $doubleslashDevId} + $irqAssignments = Get-CimInstance -query "select * from Win32_PnPAllocatedResource" | Where-Object {$_.__RELPATH -like "*Win32_IRQResource*"} | Where-Object {$_.Dependent -like $doubleslashDevId} #$irqAssignments | Format-Table -Property __RELPATH @@ -130,13 +130,13 @@ foreach ($pcidev in $pcidevs) { # not strictly an issue devices, but very useful when you want to set MMIO gap sizes # - $mmioAssignments = gwmi -query "select * from Win32_PnPAllocatedResource" | Where-Object {$_.__RELPATH -like "*Win32_DeviceMemoryAddress*"} | Where-Object {$_.Dependent -like $doubleslashDevId} + $mmioAssignments = Get-CimInstance -query "select * from Win32_PnPAllocatedResource" | Where-Object {$_.__RELPATH -like "*Win32_DeviceMemoryAddress*"} | Where-Object {$_.Dependent -like $doubleslashDevId} $mmioTotal = 0 foreach ($mem in $mmioAssignments) { $baseAdd =$mem.Antecedent.SubString($mem.Antecedent.IndexOf("""")+1) $baseAdd=$baseAdd.SubString(0,$baseAdd.IndexOf("""")) - $mmioRange = gwmi -query "select * from Win32_DeviceMemoryAddress" | Where-Object{$_.StartingAddress -like $baseAdd} + $mmioRange = Get-CimInstance -query "select * from Win32_DeviceMemoryAddress" | Where-Object{$_.StartingAddress -like $baseAdd} $mmioTotal = $mmioTotal + $mmioRange.EndingAddress - $mmioRange.StartingAddress } if ($mmioTotal -eq 0) From 94dba1ea43553b39af4368aa0e3c990addf037b8 Mon Sep 17 00:00:00 2001 From: froggx <39466474+froggx@users.noreply.github.com> Date: Thu, 23 May 2024 04:29:56 -0500 Subject: [PATCH 2/2] Update SurveyDDA.ps1 --- hyperv-tools/DiscreteDeviceAssignment/SurveyDDA.ps1 | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/hyperv-tools/DiscreteDeviceAssignment/SurveyDDA.ps1 b/hyperv-tools/DiscreteDeviceAssignment/SurveyDDA.ps1 index ee9739374..4c1f4bbb8 100644 --- a/hyperv-tools/DiscreteDeviceAssignment/SurveyDDA.ps1 +++ b/hyperv-tools/DiscreteDeviceAssignment/SurveyDDA.ps1 @@ -102,7 +102,7 @@ foreach ($pcidev in $pcidevs) { # aren't assignable. # $doubleslashDevId = "*" + $pcidev.PNPDeviceID.Replace("\","\\") + "*" - $irqAssignments = Get-CimInstance -query "select * from Win32_PnPAllocatedResource" | Where-Object {$_.__RELPATH -like "*Win32_IRQResource*"} | Where-Object {$_.Dependent -like $doubleslashDevId} + $irqAssignments = Get-WmiObject -query "select * from Win32_PnPAllocatedResource" | Where-Object {$_.__RELPATH -like "*Win32_IRQResource*"} | Where-Object {$_.Dependent -like $doubleslashDevId} #$irqAssignments | Format-Table -Property __RELPATH @@ -130,13 +130,13 @@ foreach ($pcidev in $pcidevs) { # not strictly an issue devices, but very useful when you want to set MMIO gap sizes # - $mmioAssignments = Get-CimInstance -query "select * from Win32_PnPAllocatedResource" | Where-Object {$_.__RELPATH -like "*Win32_DeviceMemoryAddress*"} | Where-Object {$_.Dependent -like $doubleslashDevId} + $mmioAssignments = Get-WmiObject -query "select * from Win32_PnPAllocatedResource" | Where-Object {$_.__RELPATH -like "*Win32_DeviceMemoryAddress*"} | Where-Object {$_.Dependent -like $doubleslashDevId} $mmioTotal = 0 foreach ($mem in $mmioAssignments) { $baseAdd =$mem.Antecedent.SubString($mem.Antecedent.IndexOf("""")+1) $baseAdd=$baseAdd.SubString(0,$baseAdd.IndexOf("""")) - $mmioRange = Get-CimInstance -query "select * from Win32_DeviceMemoryAddress" | Where-Object{$_.StartingAddress -like $baseAdd} + $mmioRange = Get-WmiObject -query "select * from Win32_DeviceMemoryAddress" | Where-Object{$_.StartingAddress -like $baseAdd} $mmioTotal = $mmioTotal + $mmioRange.EndingAddress - $mmioRange.StartingAddress } if ($mmioTotal -eq 0)