All virtio-win test cases have been modified now,following is one of our case step: For Windows guest, Enable viorng.sys verifier in guest: # verifier.exe /standard /driver viorng.sys (run as administrator ,Win8/Win2012) # verifier /flags 0x00800000 0x00000001 0x00000002 0x00000008 0x00000010 0x00000020 0x00000080 0x00000100 0x00000800 0x00020000 /driver viorng.sys (Win8.1+) Then reboot the guest and recheck #verifier /querysettings So change status to verified
Just find that "verifier /flags 0x00800000 0x00000001 0x00000002 0x00000008 0x00000010 0x00000020 0x00000080 0x00000100 0x00000800 0x00020000 /driver MyDriver.sys" does not work on win8.1 and win2012r2 guests, only the first flag can be set, others will be ignored. There is another way to enable the expected flags: set related verifier flags by verifier GUI, and query setting in cmd. Then we can get an equivalent flag value that matched with all flags we want and we can use that flag directly in verifier setting command. For win10, win2016, win2019, the flag value is 0x009209bb: Verifier Flags: 0x009209bb Standard Flags: [X] 0x00000001 Special pool. [X] 0x00000002 Force IRQL checking. [X] 0x00000008 Pool tracking. [X] 0x00000010 I/O verification. [X] 0x00000020 Deadlock detection. [X] 0x00000080 DMA checking. [X] 0x00000100 Security checks. [X] 0x00000800 Miscellaneous checks. [X] 0x00020000 DDI compliance checking. Additional Flags: [ ] 0x00000004 Randomized low resources simulation. [ ] 0x00000200 Force pending I/O requests. [ ] 0x00000400 IRP logging. [ ] 0x00002000 Invariant MDL checking for stack. [ ] 0x00004000 Invariant MDL checking for driver. [ ] 0x00008000 Power framework delay fuzzing. [ ] 0x00010000 Port/miniport interface checking. [ ] 0x00040000 Systematic low resources simulation. [ ] 0x00080000 DDI compliance checking (additional). [ ] 0x00200000 NDIS/WIFI verification. [X] 0x00800000 Kernel synchronization delay fuzzing. [ ] 0x01000000 VM switch verification. [ ] 0x02000000 Code integrity checks. Internal Flags: [X] 0x00100000 Extended Verifier flags (internal). [X] Indicates flag is enabled. Boot Mode: Persistent Rules: All rules are using default settings Extensions: wdm: rules.default Verified Drivers: vioscsi.sys For win8.1, win2012R2, the flag value is 0x008209bb: Enabled Flags Value: 0x008209BB Standard Flags: [X] (0x00000001) Special pool [X] (0x00000002) Force IRQL checking [X] (0x00000008) Pool tracking [X] (0x00000010) I/O verification [X] (0x00000020) Deadlock detection [X] (0x00000080) DMA checking [X] (0x00000100) Security checks [X] (0x00000800) Miscellaneous checks [X] (0x00020000) DDI compliance checking Additional Flags: [ ] (0x00000004) Randomized low resources simulation [ ] (0x00000200) Force pending I/O requests [ ] (0x00000400) IRP logging [ ] (0x00002000) Invariant MDL checking for stack [ ] (0x00004000) Invariant MDL checking for driver [ ] (0x00008000) Power framework delay fuzzing [ ] (0x00040000) Systematic low resources simulation [ ] (0x00080000) DDI compliance checking (additional) [ ] (0x00200000) NDIS/WIFI verification [X] (0x00800000) Kernel synchronization delay fuzzing [ ] (0x01000000) VM switch verification [X] Indicates flag is enabled Bootmode: Persistent Rules: All rules using default settings. Verified drivers: viorng.sys So QE will use following command in our test: For win7,win8,win2012: verifier /standard /driver viorng.sys For win8.1,win2012R2: verifier /flags 0x008209BB /driver viorng.sys For win10,win2016,win2019: verifier /flags 0x009209BB /driver viorng.sys
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHEA-2020:3055