Skip to content

Commit

Permalink
[viostor] WIP 20250211
Browse files Browse the repository at this point in the history
1.  Mostly backported components from vioscsi or vioscsi-proposed...
2.  PR virtio-win#1289 - Added missing juice in PR virtio-win#487 (f8c904c), recommended for SMP with CPU affinity plus increase in MAX_PHYS_SEGMENTS (8x) and MaxXfer size (regression).
3.  Addded VioStorReadRegistryParameter() and dependecy CopyBufferToAnsiString() to set max_segments. Fudged hba_id to "1".
4.  Refactored multi-factor max_segments computation for use with NOPB and MaximumTransferLength.
5.  Refactored memory allocation calculations and added padding to ensure alignment.
6.  Significant instrumentation of the above.
7.  Added instrumentation to RhelSetGuestFeatures().
8.  Refactored VirtIoHwInitialize() to produce improved and clean instrumentation.
9.  Added conditional compilation for STOR_PERF_DPC_REDIRECTION_CURRENT_CPU (dependent on setting of NTDDI_VERSION in project file).
10. Added notes re STOR_PERF_NO_SGL being of no effect.
11. Minor refactoring of definitions in virtio_stor.h plus added some new VQ and registry definitions.
12. Changed VIRTIO_MAX_SG to (MAX_PHYS_SEGMENTS + 1).
13. Changed type (USHORT) of num_queues to ULONG in ADAPTER_EXTENSION.
14. Added max_segments to ADAPTER_EXTENSION.
15. Added WPP trace bits for guest features and registry.
16. Refactored RhelGetDiskGeometry() to improve instrumentation.

Signed-off-by: benyamin-codez <[email protected]>
  • Loading branch information
benyamin-codez committed Feb 12, 2025
1 parent 2bcf04f commit ae03640
Show file tree
Hide file tree
Showing 5 changed files with 899 additions and 222 deletions.
4 changes: 2 additions & 2 deletions viostor/viostor.vcxproj
Original file line number Diff line number Diff line change
Expand Up @@ -135,15 +135,15 @@
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)'=='Win10 Release'">
<ClCompile>
<PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions>%(PreprocessorDefinitions);NTDDI_VERSION=NTDDI_WINTHRESHOLD</PreprocessorDefinitions>
</ClCompile>
<Link>
<AdditionalDependencies>%(AdditionalDependencies);storport.lib</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)'=='Win11 Release'">
<ClCompile>
<PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions>%(PreprocessorDefinitions);NTDDI_VERSION=NTDDI_WIN10_CO</PreprocessorDefinitions>
</ClCompile>
<Link>
<AdditionalDependencies>%(AdditionalDependencies);storport.lib</AdditionalDependencies>
Expand Down
Loading

0 comments on commit ae03640

Please sign in to comment.