From: Ophir Munk <ophirmu@mellanox.com>
To: Dmitry Kozlyuk <dmitry.kozliuk@gmail.com>, "dev@dpdk.org" <dev@dpdk.org>
Cc: "Dmitry Malloy (MESHCHANINOV)" <dmitrym@microsoft.com>,
Narcisa Ana Maria Vasile <Narcisa.Vasile@microsoft.com>,
Fady Bader <fady@mellanox.com>,
Tal Shnaiderman <talshn@mellanox.com>,
Ranjit Menon <ranjit.menon@intel.com>,
Thomas Monjalon <thomas@monjalon.net>
Subject: Re: [dpdk-dev] [PATCH v3 1/1] virt2phys: virtual to physical address translator for Windows
Date: Tue, 21 Apr 2020 06:23:25 +0000 [thread overview]
Message-ID: <AM0PR05MB420972ED61E79D251C930F8CD1D50@AM0PR05MB4209.eurprd05.prod.outlook.com> (raw)
In-Reply-To: <20200414194426.1640704-2-dmitry.kozliuk@gmail.com>
Hi Dmitry,
When trying to test the series under Linux (RedHat 7.4, x86_64-native-linuxapp-gcc) I get compilation errors. I am using make.
It seems that there are calls from common which are not compiled under linux.
x86_64-native-linuxapp-gcc/lib/librte_eal.a(eal_common_memory.o): In function `eal_get_virtual_area':
eal_common_memory.c:(.text+0x27e): undefined reference to `eal_mem_reserve'
[dpdk-branches]$ find lib -name '*.c' | xargs grep eal_mem_reserve
lib/librte_eal/common/eal_common_memory.c: mapped_addr = eal_mem_reserve(
lib/librte_eal/windows/eal_memory.c:eal_mem_reserve(void *requested_addr, size_t size,
lib/librte_eal/unix/eal_memory.c:eal_mem_reserve(void *requested_addr, size_t size,
Does it succeed for you?
If not - can you please resend the series such that it compiles under Linux with Makefile?
> -----Original Message-----
> From: dev <dev-bounces@dpdk.org> On Behalf Of Dmitry Kozlyuk
> Sent: Tuesday, April 14, 2020 10:44 PM
> To: dev@dpdk.org
> Cc: Dmitry Malloy (MESHCHANINOV) <dmitrym@microsoft.com>; Narcisa
> Ana Maria Vasile <Narcisa.Vasile@microsoft.com>; Fady Bader
> <fady@mellanox.com>; Tal Shnaiderman <talshn@mellanox.com>; Dmitry
> Kozlyuk <dmitry.kozliuk@gmail.com>; Ranjit Menon
> <ranjit.menon@intel.com>
> Subject: [dpdk-dev] [PATCH v3 1/1] virt2phys: virtual to physical address
> translator for Windows
>
> This driver supports Windows EAL memory management by translating
> current process virtual addresses to physical addresses (IOVA).
> Standalone virt2phys allows using DPDK without PMD and provides a
> reference implementation.
>
> Suggested-by: Ranjit Menon <ranjit.menon@intel.com>
> Signed-off-by: Dmitry Kozlyuk <dmitry.kozliuk@gmail.com>
> ---
> windows/README.rst | 103 +++++++++
> windows/virt2phys/virt2phys.c | 129 +++++++++++
> windows/virt2phys/virt2phys.h | 34 +++
> windows/virt2phys/virt2phys.inf | 64 ++++++
> windows/virt2phys/virt2phys.sln | 27 +++
> windows/virt2phys/virt2phys.vcxproj | 228 ++++++++++++++++++++
> windows/virt2phys/virt2phys.vcxproj.filters | 36 ++++
> 7 files changed, 621 insertions(+)
> create mode 100644 windows/README.rst
> create mode 100644 windows/virt2phys/virt2phys.c create mode 100644
> windows/virt2phys/virt2phys.h create mode 100644
> windows/virt2phys/virt2phys.inf create mode 100644
> windows/virt2phys/virt2phys.sln create mode 100644
> windows/virt2phys/virt2phys.vcxproj
> create mode 100644 windows/virt2phys/virt2phys.vcxproj.filters
>
> diff --git a/windows/README.rst b/windows/README.rst new file mode
> 100644 index 0000000..45a1d80
> --- /dev/null
> +++ b/windows/README.rst
> @@ -0,0 +1,103 @@
> +Developing Windows Drivers
> +==========================
> +
> +Prerequisites
> +-------------
> +
> +Building Windows Drivers is only possible on Windows.
> +
> +1. Visual Studio 2019 Community or Professional Edition 2. Windows
> +Driver Kit (WDK) for Windows 10, version 1903
> +
> +Follow the official instructions to obtain all of the above:
> +https://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdocs
> .
> +microsoft.com%2Fen-us%2Fwindows-hardware%2Fdrivers%2Fdownload-
> the-wdk&a
> +mp;data=02%7C01%7Cophirmu%40mellanox.com%7C86da431f2b904dca3
> d8208d7e0ac
> +4cd0%7Ca652971c7d2e4d9ba6a4d149256f461b%7C0%7C0%7C637224902
> 939680479&am
> +p;sdata=RSZXmo%2FewOpl9VCCg4BIgYUFvpreZzqX1X%2Bcl9vNRjU%3D&a
> mp;reserved
> +=0
> +
> +
> +Build the Drivers
> +-----------------
> +
> +Build from Visual Studio
> +~~~~~~~~~~~~~~~~~~~~~~~~
> +
> +Open a solution (``*.sln``) with Visual Studio and build it (Ctrl+Shift+B).
> +
> +
> +Build from Command-Line
> +~~~~~~~~~~~~~~~~~~~~~~~
> +
> +Run *Developer Command Prompt for VS 2019* from the Start menu.
> +
> +Navigate to the solution directory (with ``*.sln``), then run:
> +
> +.. code-block:: console
> +
> + msbuild
> +
> +To build a particular combination of configuration and platform:
> +
> +.. code-block:: console
> +
> + msbuild -p:Configuration=Debug;Platform=x64
> +
> +
> +Install the Drivers
> +-------------------
> +
> +Disable Driver Signature Enforcement
> +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> +
> +By default Windows prohibits installing and loading drivers without
> +`digital signature`_ obtained from Microsoft. For development signature
> +enforcement may be disabled as follows.
> +
> +In Elevated Command Prompt (from this point, sufficient privileges are
> +assumed):
> +
> +.. code-block:: console
> +
> + bcdedit -set loadoptions DISABLE_INTEGRITY_CHECKS
> + bcdedit -set TESTSIGNING ON
> + shutdown -r -t 0
> +
> +Upon reboot, an overlay message should appear on the desktop informing
> +that Windows is in test mode, which means it allows loading unsigned
> drivers.
> +
> +.. _digital signature:
> +https://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdocs
> .
> +microsoft.com%2Fen-us%2Fwindows-
> hardware%2Fdrivers%2Finstall%2Fdriver-s
> +igning&data=02%7C01%7Cophirmu%40mellanox.com%7C86da431f2b
> 904dca3d82
> +08d7e0ac4cd0%7Ca652971c7d2e4d9ba6a4d149256f461b%7C0%7C0%7C63
> 72249029396
> +85478&sdata=tLVdijiQ56xwSDW0zVsVE3TnIpuMPTLd9DBtS3Bnf4Q%3
> D&rese
> +rved=0
> +
> +Install, List, and Remove Drivers
> +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> +
> +Driver package is by default located in a subdirectory of its source
> +tree, e.g. ``x64\Debug\virt2phys\virt2phys`` (note two levels of
> ``virt2phys``).
> +
> +To install the driver and bind associated devices to it:
> +
> +.. code-block:: console
> +
> + pnputil /add-driver x64\Debug\virt2phys\virt2phys\virt2phys.inf
> + /install
> +
> +A graphical confirmation to load an unsigned driver will still appear.
> +
> +On Windows Server additional steps are required if the driver uses a
> +custom setup class:
> +
> +1. From "Device Manager", "Action" menu, select "Add legacy hardware".
> +2. It will launch the "Add Hardware Wizard". Click "Next".
> +3. Select second option "Install the hardware that I manually select
> + from a list (Advanced)".
> +4. On the next screen, locate the driver device class.
> +5. Select it, and click "Next".
> +6. The previously installed drivers will now be installed for
> + the appropriate devices (software devices will be created).
> +
> +To list installed drivers:
> +
> +.. code-block:: console
> +
> + pnputil /enum-drivers
> +
> +To remove the driver package and to uninstall its devices:
> +
> +.. code-block:: console
> +
> + pnputil /delete-driver oem2.inf /uninstall
> diff --git a/windows/virt2phys/virt2phys.c b/windows/virt2phys/virt2phys.c
> new file mode 100644 index 0000000..e157e9c
> --- /dev/null
> +++ b/windows/virt2phys/virt2phys.c
> @@ -0,0 +1,129 @@
> +/* SPDX-License-Identifier: BSD-3-Clause
> + * Copyright(c) 2020 Dmitry Kozlyuk
> + */
> +
> +#include <ntddk.h>
> +#include <wdf.h>
> +#include <wdmsec.h>
> +#include <initguid.h>
> +
> +#include "virt2phys.h"
> +
> +DRIVER_INITIALIZE DriverEntry;
> +EVT_WDF_DRIVER_DEVICE_ADD virt2phys_driver_EvtDeviceAdd;
> +EVT_WDF_IO_IN_CALLER_CONTEXT
> virt2phys_device_EvtIoInCallerContext;
> +
> +NTSTATUS
> +DriverEntry(
> + IN PDRIVER_OBJECT driver_object, IN PUNICODE_STRING
> registry_path) {
> + WDF_DRIVER_CONFIG config;
> + WDF_OBJECT_ATTRIBUTES attributes;
> + NTSTATUS status;
> +
> + PAGED_CODE();
> +
> + WDF_DRIVER_CONFIG_INIT(&config,
> virt2phys_driver_EvtDeviceAdd);
> + WDF_OBJECT_ATTRIBUTES_INIT(&attributes);
> + status = WdfDriverCreate(
> + driver_object, registry_path,
> + &attributes, &config, WDF_NO_HANDLE);
> + if (!NT_SUCCESS(status)) {
> + KdPrint(("WdfDriverCreate() failed, status=%08x\n", status));
> + }
> +
> + return status;
> +}
> +
> +_Use_decl_annotations_
> +NTSTATUS
> +virt2phys_driver_EvtDeviceAdd(
> + WDFDRIVER driver, PWDFDEVICE_INIT init) {
> + WDF_OBJECT_ATTRIBUTES attributes;
> + WDFDEVICE device;
> + NTSTATUS status;
> +
> + UNREFERENCED_PARAMETER(driver);
> +
> + PAGED_CODE();
> +
> + WdfDeviceInitSetIoType(
> + init, WdfDeviceIoNeither);
> + WdfDeviceInitSetIoInCallerContextCallback(
> + init, virt2phys_device_EvtIoInCallerContext);
> +
> + WDF_OBJECT_ATTRIBUTES_INIT(&attributes);
> +
> + status = WdfDeviceCreate(&init, &attributes, &device);
> + if (!NT_SUCCESS(status)) {
> + KdPrint(("WdfDeviceCreate() failed, status=%08x\n", status));
> + return status;
> + }
> +
> + status = WdfDeviceCreateDeviceInterface(
> + device, &GUID_DEVINTERFACE_VIRT2PHYS, NULL);
> + if (!NT_SUCCESS(status)) {
> + KdPrint(("WdfDeviceCreateDeviceInterface() failed, "
> + "status=%08x\n", status));
> + return status;
> + }
> +
> + return STATUS_SUCCESS;
> +}
> +
> +_Use_decl_annotations_
> +VOID
> +virt2phys_device_EvtIoInCallerContext(
> + IN WDFDEVICE device, IN WDFREQUEST request) {
> + WDF_REQUEST_PARAMETERS params;
> + ULONG code;
> + PVOID *virt;
> + PHYSICAL_ADDRESS *phys;
> + size_t size;
> + NTSTATUS status;
> +
> + UNREFERENCED_PARAMETER(device);
> +
> + PAGED_CODE();
> +
> + WDF_REQUEST_PARAMETERS_INIT(¶ms);
> + WdfRequestGetParameters(request, ¶ms);
> +
> + if (params.Type != WdfRequestTypeDeviceControl) {
> + KdPrint(("bogus request type=%u\n", params.Type));
> + WdfRequestComplete(request, STATUS_NOT_SUPPORTED);
> + return;
> + }
> +
> + code = params.Parameters.DeviceIoControl.IoControlCode;
> + if (code != IOCTL_VIRT2PHYS_TRANSLATE) {
> + KdPrint(("bogus IO control code=%lu\n", code));
> + WdfRequestComplete(request, STATUS_NOT_SUPPORTED);
> + return;
> + }
> +
> + status = WdfRequestRetrieveInputBuffer(
> + request, sizeof(*virt), (PVOID *)&virt, &size);
> + if (!NT_SUCCESS(status)) {
> + KdPrint(("WdfRequestRetrieveInputBuffer() failed, "
> + "status=%08x\n", status));
> + WdfRequestComplete(request, status);
> + return;
> + }
> +
> + status = WdfRequestRetrieveOutputBuffer(
> + request, sizeof(*phys), (PVOID *)&phys, &size);
> + if (!NT_SUCCESS(status)) {
> + KdPrint(("WdfRequestRetrieveOutputBuffer() failed, "
> + "status=%08x\n", status));
> + WdfRequestComplete(request, status);
> + return;
> + }
> +
> + *phys = MmGetPhysicalAddress(*virt);
> +
> + WdfRequestCompleteWithInformation(
> + request, STATUS_SUCCESS, sizeof(*phys)); }
> diff --git a/windows/virt2phys/virt2phys.h b/windows/virt2phys/virt2phys.h
> new file mode 100644 index 0000000..4bb2b4a
> --- /dev/null
> +++ b/windows/virt2phys/virt2phys.h
> @@ -0,0 +1,34 @@
> +/* SPDX-License-Identifier: BSD-3-Clause
> + * Copyright (c) 2020 Dmitry Kozlyuk
> + */
> +
> +/**
> + * @file virt2phys driver interface
> + */
> +
> +/**
> + * Driver device interface GUID {539c2135-793a-4926-afec-d3a1b61bbc8a}.
> + */
> +DEFINE_GUID(GUID_DEVINTERFACE_VIRT2PHYS,
> + 0x539c2135, 0x793a, 0x4926,
> + 0xaf, 0xec, 0xd3, 0xa1, 0xb6, 0x1b, 0xbc, 0x8a);
> +
> +/**
> + * Driver device type for IO control codes.
> + */
> +#define VIRT2PHYS_DEVTYPE 0x8000
> +
> +/**
> + * Translate a valid non-paged virtual address to a physical address.
> + *
> + * Note: A physical address zero (0) is reported if input address
> + * is paged out or not mapped. However, if input is a valid mapping
> + * of I/O port 0x0000, output is also zero. There is no way
> + * to distinguish between these cases by return value only.
> + *
> + * Input: a non-paged virtual address (PVOID).
> + *
> + * Output: the corresponding physical address (LARGE_INTEGER).
> + */
> +#define IOCTL_VIRT2PHYS_TRANSLATE CTL_CODE( \
> + VIRT2PHYS_DEVTYPE, 0x800, METHOD_BUFFERED,
> FILE_ANY_ACCESS)
> diff --git a/windows/virt2phys/virt2phys.inf
> b/windows/virt2phys/virt2phys.inf new file mode 100644 index
> 0000000..e35765e
> --- /dev/null
> +++ b/windows/virt2phys/virt2phys.inf
> @@ -0,0 +1,64 @@
> +; SPDX-License-Identifier: BSD-3-Clause ; Copyright (c) 2020 Dmitry
> +Kozlyuk
> +
> +[Version]
> +Signature = "$WINDOWS NT$"
> +Class = %ClassName%
> +ClassGuid = {78A1C341-4539-11d3-B88D-00C04FAD5171}
> +Provider = %ManufacturerName%
> +CatalogFile = virt2phys.cat
> +DriverVer =
> +
> +[DestinationDirs]
> +DefaultDestDir = 12
> +
> +; ================= Class section =====================
> +
> +[ClassInstall32]
> +Addreg = virt2phys_ClassReg
> +
> +[virt2phys_ClassReg]
> +HKR,,,0,%ClassName%
> +HKR,,Icon,,-5
> +
> +[SourceDisksNames]
> +1 = %DiskName%,,,""
> +
> +[SourceDisksFiles]
> +virt2phys.sys = 1,,
> +
> +;*****************************************
> +; Install Section
> +;*****************************************
> +
> +[Manufacturer]
> +%ManufacturerName%=Standard,NT$ARCH$
> +
> +[Standard.NT$ARCH$]
> +%virt2phys.DeviceDesc%=virt2phys_Device, Root\virt2phys
> +
> +[virt2phys_Device.NT]
> +CopyFiles = Drivers_Dir
> +
> +[Drivers_Dir]
> +virt2phys.sys
> +
> +;-------------- Service installation
> +[virt2phys_Device.NT.Services]
> +AddService = virt2phys,%SPSVCINST_ASSOCSERVICE%,
> virt2phys_Service_Inst
> +
> +; -------------- virt2phys driver install sections
> +[virt2phys_Service_Inst]
> +DisplayName = %virt2phys.SVCDESC%
> +ServiceType = 1 ; SERVICE_KERNEL_DRIVER
> +StartType = 3 ; SERVICE_DEMAND_START
> +ErrorControl = 1 ; SERVICE_ERROR_NORMAL
> +ServiceBinary = %12%\virt2phys.sys
> +
> +[Strings]
> +SPSVCINST_ASSOCSERVICE = 0x00000002
> +ManufacturerName = "Dmitry Kozlyuk"
> +ClassName = "Kernel bypass"
> +DiskName = "virt2phys Installation Disk"
> +virt2phys.DeviceDesc = "Virtual to physical address translator"
> +virt2phys.SVCDESC = "virt2phys Service"
> diff --git a/windows/virt2phys/virt2phys.sln
> b/windows/virt2phys/virt2phys.sln new file mode 100644 index
> 0000000..0f5ecdc
> --- /dev/null
> +++ b/windows/virt2phys/virt2phys.sln
> @@ -0,0 +1,27 @@
> ++Microsoft Visual Studio Solution File, Format Version 12.00+# Visual Studio
> Version 16+VisualStudioVersion =
> 16.0.29613.14+MinimumVisualStudioVersion =
> 10.0.40219.1+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") =
> "virt2phys", "virt2phys.vcxproj", "{0EEF826B-9391-43A8-A722-
> BDD6F6115137}"+EndProject+Global+
> GlobalSection(SolutionConfigurationPlatforms) = preSolution+
> Debug|x64 = Debug|x64+ Release|x64 = Release|x64+
> EndGlobalSection+
> GlobalSection(ProjectConfigurationPlatforms) = postSolution+
> {0EEF826B-9391-43A8-A722-BDD6F6115137}.Debug|x64.ActiveCfg =
> Debug|x64+ {0EEF826B-9391-43A8-A722-
> BDD6F6115137}.Debug|x64.Build.0 = Debug|x64+ {0EEF826B-
> 9391-43A8-A722-BDD6F6115137}.Debug|x64.Deploy.0 = Debug|x64+
> {0EEF826B-9391-43A8-A722-BDD6F6115137}.Release|x64.ActiveCfg
> = Release|x64+ {0EEF826B-9391-43A8-A722-
> BDD6F6115137}.Release|x64.Build.0 = Release|x64+ {0EEF826B-
> 9391-43A8-A722-BDD6F6115137}.Release|x64.Deploy.0 = Release|x64+
> EndGlobalSection+ GlobalSection(SolutionProperties) =
> preSolution+ HideSolutionNode = FALSE+ EndGlobalSection+
> GlobalSection(ExtensibilityGlobals) = postSolution+
> SolutionGuid = {845012FB-4471-4A12-A1C4-FF7E05C40E8E}+
> EndGlobalSection+EndGlobaldiff --git
> a/windows/virt2phys/virt2phys.vcxproj
> b/windows/virt2phys/virt2phys.vcxproj
> new file mode 100644
> index 0000000..fa51916
> --- /dev/null
> +++ b/windows/virt2phys/virt2phys.vcxproj
> @@ -0,0 +1,228 @@
> +<?xml version="1.0" encoding="utf-8"?>+<Project DefaultTargets="Build"
> ToolsVersion="12.0"
> xmlns="https://eur03.safelinks.protection.outlook.com/?url=http%3A%2F%2
> Fschemas.microsoft.com%2Fdeveloper%2Fmsbuild%2F2003&data=02%
> 7C01%7Cophirmu%40mellanox.com%7C86da431f2b904dca3d8208d7e0ac4c
> d0%7Ca652971c7d2e4d9ba6a4d149256f461b%7C0%7C0%7C637224902939
> 685478&sdata=N7HPDma1qrXV6sobOS0tblhsgaEUePD8lXqhnyXD1sU%
> 3D&reserved=0">+ <ItemGroup Label="ProjectConfigurations">+
> <ProjectConfiguration Include="Debug|Win32">+
> <Configuration>Debug</Configuration>+ <Platform>Win32</Platform>+
> </ProjectConfiguration>+ <ProjectConfiguration
> Include="Release|Win32">+ <Configuration>Release</Configuration>+
> <Platform>Win32</Platform>+ </ProjectConfiguration>+
> <ProjectConfiguration Include="Debug|x64">+
> <Configuration>Debug</Configuration>+ <Platform>x64</Platform>+
> </ProjectConfiguration>+ <ProjectConfiguration Include="Release|x64">+
> <Configuration>Release</Configuration>+ <Platform>x64</Platform>+
> </ProjectConfiguration>+ <ProjectConfiguration Include="Debug|ARM">+
> <Configuration>Debug</Configuration>+ <Platform>ARM</Platform>+
> </ProjectConfiguration>+ <ProjectConfiguration Include="Release|ARM">+
> <Configuration>Release</Configuration>+ <Platform>ARM</Platform>+
> </ProjectConfiguration>+ <ProjectConfiguration
> Include="Debug|ARM64">+ <Configuration>Debug</Configuration>+
> <Platform>ARM64</Platform>+ </ProjectConfiguration>+
> <ProjectConfiguration Include="Release|ARM64">+
> <Configuration>Release</Configuration>+
> <Platform>ARM64</Platform>+ </ProjectConfiguration>+ </ItemGroup>+
> <ItemGroup>+ <ClCompile Include="virt2phys.c" />+ </ItemGroup>+
> <ItemGroup>+ <ClInclude Include="virt2phys.h" />+ </ItemGroup>+
> <ItemGroup>+ <Inf Include="virt2phys.inf" />+ </ItemGroup>+
> <PropertyGroup Label="Globals">+ <ProjectGuid>{0EEF826B-9391-43A8-
> A722-BDD6F6115137}</ProjectGuid>+ <TemplateGuid>{497e31cb-056b-
> 4f31-abb8-447fd55ee5a5}</TemplateGuid>+
> <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>+
> <MinimumVisualStudioVersion>12.0</MinimumVisualStudioVersion>+
> <Configuration>Debug</Configuration>+ <Platform
> Condition="'$(Platform)' == ''">Win32</Platform>+
> <RootNamespace>virt2phys</RootNamespace>+ </PropertyGroup>+
> <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />+
> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"
> Label="Configuration">+ <TargetVersion>Windows10</TargetVersion>+
> <UseDebugLibraries>true</UseDebugLibraries>+
> <PlatformToolset>WindowsKernelModeDriver10.0</PlatformToolset>+
> <ConfigurationType>Driver</ConfigurationType>+
> <DriverType>KMDF</DriverType>+
> <DriverTargetPlatform>Universal</DriverTargetPlatform>+
> </PropertyGroup>+ <PropertyGroup
> Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"
> Label="Configuration">+ <TargetVersion>Windows10</TargetVersion>+
> <UseDebugLibraries>false</UseDebugLibraries>+
> <PlatformToolset>WindowsKernelModeDriver10.0</PlatformToolset>+
> <ConfigurationType>Driver</ConfigurationType>+
> <DriverType>KMDF</DriverType>+
> <DriverTargetPlatform>Universal</DriverTargetPlatform>+
> </PropertyGroup>+ <PropertyGroup
> Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"
> Label="Configuration">+ <TargetVersion>Windows10</TargetVersion>+
> <UseDebugLibraries>true</UseDebugLibraries>+
> <PlatformToolset>WindowsKernelModeDriver10.0</PlatformToolset>+
> <ConfigurationType>Driver</ConfigurationType>+
> <DriverType>KMDF</DriverType>+
> <DriverTargetPlatform>Universal</DriverTargetPlatform>+
> </PropertyGroup>+ <PropertyGroup
> Condition="'$(Configuration)|$(Platform)'=='Release|x64'"
> Label="Configuration">+ <TargetVersion>Windows10</TargetVersion>+
> <UseDebugLibraries>false</UseDebugLibraries>+
> <PlatformToolset>WindowsKernelModeDriver10.0</PlatformToolset>+
> <ConfigurationType>Driver</ConfigurationType>+
> <DriverType>KMDF</DriverType>+
> <DriverTargetPlatform>Universal</DriverTargetPlatform>+
> </PropertyGroup>+ <PropertyGroup
> Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'"
> Label="Configuration">+ <TargetVersion>Windows10</TargetVersion>+
> <UseDebugLibraries>true</UseDebugLibraries>+
> <PlatformToolset>WindowsKernelModeDriver10.0</PlatformToolset>+
> <ConfigurationType>Driver</ConfigurationType>+
> <DriverType>KMDF</DriverType>+
> <DriverTargetPlatform>Universal</DriverTargetPlatform>+
> </PropertyGroup>+ <PropertyGroup
> Condition="'$(Configuration)|$(Platform)'=='Release|ARM'"
> Label="Configuration">+ <TargetVersion>Windows10</TargetVersion>+
> <UseDebugLibraries>false</UseDebugLibraries>+
> <PlatformToolset>WindowsKernelModeDriver10.0</PlatformToolset>+
> <ConfigurationType>Driver</ConfigurationType>+
> <DriverType>KMDF</DriverType>+
> <DriverTargetPlatform>Universal</DriverTargetPlatform>+
> </PropertyGroup>+ <PropertyGroup
> Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'"
> Label="Configuration">+ <TargetVersion>Windows10</TargetVersion>+
> <UseDebugLibraries>true</UseDebugLibraries>+
> <PlatformToolset>WindowsKernelModeDriver10.0</PlatformToolset>+
> <ConfigurationType>Driver</ConfigurationType>+
> <DriverType>KMDF</DriverType>+
> <DriverTargetPlatform>Universal</DriverTargetPlatform>+
> </PropertyGroup>+ <PropertyGroup
> Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'"
> Label="Configuration">+ <TargetVersion>Windows10</TargetVersion>+
> <UseDebugLibraries>false</UseDebugLibraries>+
> <PlatformToolset>WindowsKernelModeDriver10.0</PlatformToolset>+
> <ConfigurationType>Driver</ConfigurationType>+
> <DriverType>KMDF</DriverType>+
> <DriverTargetPlatform>Universal</DriverTargetPlatform>+
> </PropertyGroup>+ <Import
> Project="$(VCTargetsPath)\Microsoft.Cpp.props" />+ <ImportGroup
> Label="ExtensionSettings">+ </ImportGroup>+ <ImportGroup
> Label="PropertySheets">+ <Import
> Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"
> Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')"
> Label="LocalAppDataPlatform" />+ </ImportGroup>+ <PropertyGroup
> Label="UserMacros" />+ <PropertyGroup />+ <PropertyGroup
> Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">+
> <DebuggerFlavor>DbgengKernelDebugger</DebuggerFlavor>+
> </PropertyGroup>+ <PropertyGroup
> Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">+
> <DebuggerFlavor>DbgengKernelDebugger</DebuggerFlavor>+
> </PropertyGroup>+ <PropertyGroup
> Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">+
> <DebuggerFlavor>DbgengKernelDebugger</DebuggerFlavor>+
> </PropertyGroup>+ <PropertyGroup
> Condition="'$(Configuration)|$(Platform)'=='Release|x64'">+
> <DebuggerFlavor>DbgengKernelDebugger</DebuggerFlavor>+
> </PropertyGroup>+ <PropertyGroup
> Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">+
> <DebuggerFlavor>DbgengKernelDebugger</DebuggerFlavor>+
> </PropertyGroup>+ <PropertyGroup
> Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">+
> <DebuggerFlavor>DbgengKernelDebugger</DebuggerFlavor>+
> </PropertyGroup>+ <PropertyGroup
> Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">+
> <DebuggerFlavor>DbgengKernelDebugger</DebuggerFlavor>+
> </PropertyGroup>+ <PropertyGroup
> Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">+
> <DebuggerFlavor>DbgengKernelDebugger</DebuggerFlavor>+
> </PropertyGroup>+ <ItemDefinitionGroup
> Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">+
> <ClCompile>+ <WppEnabled>true</WppEnabled>+
> <WppRecorderEnabled>true</WppRecorderEnabled>+
> <WppScanConfigurationData
> Condition="'%(ClCompile.ScanConfigurationData)' ==
> ''">trace.h</WppScanConfigurationData>+
> <WppKernelMode>true</WppKernelMode>+ </ClCompile>+
> </ItemDefinitionGroup>+ <ItemDefinitionGroup
> Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">+
> <ClCompile>+ <WppEnabled>true</WppEnabled>+
> <WppRecorderEnabled>true</WppRecorderEnabled>+
> <WppScanConfigurationData
> Condition="'%(ClCompile.ScanConfigurationData)' ==
> ''">trace.h</WppScanConfigurationData>+
> <WppKernelMode>true</WppKernelMode>+ </ClCompile>+
> </ItemDefinitionGroup>+ <ItemDefinitionGroup
> Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">+ <ClCompile>+
> <WppEnabled>false</WppEnabled>+
> <WppRecorderEnabled>true</WppRecorderEnabled>+
> <WppScanConfigurationData
> Condition="'%(ClCompile.ScanConfigurationData)' ==
> ''">trace.h</WppScanConfigurationData>+
> <WppKernelMode>true</WppKernelMode>+ </ClCompile>+ <Link>+
> <AdditionalDependencies>$(DDK_LIB_PATH)wdmsec.lib;%(AdditionalDepend
> encies)</AdditionalDependencies>+ </Link>+ <Inf>+
> <TimeStamp>0.1</TimeStamp>+ </Inf>+ </ItemDefinitionGroup>+
> <ItemDefinitionGroup
> Condition="'$(Configuration)|$(Platform)'=='Release|x64'">+
> <ClCompile>+ <WppEnabled>true</WppEnabled>+
> <WppRecorderEnabled>true</WppRecorderEnabled>+
> <WppScanConfigurationData
> Condition="'%(ClCompile.ScanConfigurationData)' ==
> ''">trace.h</WppScanConfigurationData>+
> <WppKernelMode>true</WppKernelMode>+ </ClCompile>+
> </ItemDefinitionGroup>+ <ItemDefinitionGroup
> Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">+
> <ClCompile>+ <WppEnabled>true</WppEnabled>+
> <WppRecorderEnabled>true</WppRecorderEnabled>+
> <WppScanConfigurationData
> Condition="'%(ClCompile.ScanConfigurationData)' ==
> ''">trace.h</WppScanConfigurationData>+
> <WppKernelMode>true</WppKernelMode>+ </ClCompile>+
> </ItemDefinitionGroup>+ <ItemDefinitionGroup
> Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">+
> <ClCompile>+ <WppEnabled>true</WppEnabled>+
> <WppRecorderEnabled>true</WppRecorderEnabled>+
> <WppScanConfigurationData
> Condition="'%(ClCompile.ScanConfigurationData)' ==
> ''">trace.h</WppScanConfigurationData>+
> <WppKernelMode>true</WppKernelMode>+ </ClCompile>+
> </ItemDefinitionGroup>+ <ItemDefinitionGroup
> Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">+
> <ClCompile>+ <WppEnabled>true</WppEnabled>+
> <WppRecorderEnabled>true</WppRecorderEnabled>+
> <WppScanConfigurationData
> Condition="'%(ClCompile.ScanConfigurationData)' ==
> ''">trace.h</WppScanConfigurationData>+
> <WppKernelMode>true</WppKernelMode>+ </ClCompile>+
> </ItemDefinitionGroup>+ <ItemDefinitionGroup
> Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">+
> <ClCompile>+ <WppEnabled>true</WppEnabled>+
> <WppRecorderEnabled>true</WppRecorderEnabled>+
> <WppScanConfigurationData
> Condition="'%(ClCompile.ScanConfigurationData)' ==
> ''">trace.h</WppScanConfigurationData>+
> <WppKernelMode>true</WppKernelMode>+ </ClCompile>+
> </ItemDefinitionGroup>+ <ItemGroup>+ <FilesToPackage
> Include="$(TargetPath)" />+ </ItemGroup>+ <Import
> Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />+ <ImportGroup
> Label="ExtensionTargets">+ </ImportGroup>+</Project>
> \ No newline at end of file
> diff --git a/windows/virt2phys/virt2phys.vcxproj.filters
> b/windows/virt2phys/virt2phys.vcxproj.filters
> new file mode 100644
> index 0000000..0fe65fc
> --- /dev/null
> +++ b/windows/virt2phys/virt2phys.vcxproj.filters
> @@ -0,0 +1,36 @@
> +<?xml version="1.0" encoding="utf-8"?>+<Project ToolsVersion="4.0"
> xmlns="https://eur03.safelinks.protection.outlook.com/?url=http%3A%2F%2
> Fschemas.microsoft.com%2Fdeveloper%2Fmsbuild%2F2003&data=02%
> 7C01%7Cophirmu%40mellanox.com%7C86da431f2b904dca3d8208d7e0ac4c
> d0%7Ca652971c7d2e4d9ba6a4d149256f461b%7C0%7C0%7C637224902939
> 685478&sdata=N7HPDma1qrXV6sobOS0tblhsgaEUePD8lXqhnyXD1sU%
> 3D&reserved=0">+ <ItemGroup>+ <Filter Include="Source Files">+
> <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-
> 2A32D752A2FF}</UniqueIdentifier>+
> <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>+
> </Filter>+ <Filter Include="Header Files">+
> <UniqueIdentifier>{93995380-89BD-4b04-88EB-
> 625FBE52EBFB}</UniqueIdentifier>+
> <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>+ </Filter>+ <Filter
> Include="Resource Files">+ <UniqueIdentifier>{67DA6AB6-F800-4c08-
> 8B7A-83BB121AAD01}</UniqueIdentifier>+
> <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;pn
> g;wav;mfcribbon-ms</Extensions>+ </Filter>+ <Filter Include="Driver
> Files">+ <UniqueIdentifier>{8E41214B-6785-4CFE-B992-
> 037D68949A14}</UniqueIdentifier>+
> <Extensions>inf;inv;inx;mof;mc;</Extensions>+ </Filter>+ </ItemGroup>+
> <ItemGroup>+ <Inf Include="virt2phys.inf">+ <Filter>Driver
> Files</Filter>+ </Inf>+ </ItemGroup>+ <ItemGroup>+ <ClInclude
> Include="virt2phys.h">+ <Filter>Header Files</Filter>+ </ClInclude>+
> </ItemGroup>+ <ItemGroup>+ <ClCompile Include="virt2phys.c">+
> <Filter>Source Files</Filter>+ </ClCompile>+ </ItemGroup>+</Project>--
> 2.25.1
next prev parent reply other threads:[~2020-04-21 6:23 UTC|newest]
Thread overview: 218+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-03-30 4:10 [dpdk-dev] [RFC PATCH 0/9] Windows basic memory management Dmitry Kozlyuk
2020-03-30 4:10 ` [dpdk-dev] [PATCH 1/1] virt2phys: virtual to physical address translator for Windows Dmitry Kozlyuk
2020-03-30 6:58 ` Jerin Jacob
2020-03-30 13:41 ` Dmitry Kozlyuk
2020-04-10 1:45 ` Ranjit Menon
2020-04-10 2:50 ` Dmitry Kozlyuk
2020-04-10 2:59 ` Dmitry Kozlyuk
2020-04-10 19:39 ` Ranjit Menon
2020-03-30 4:10 ` [dpdk-dev] [RFC PATCH 2/9] eal/windows: do not expose private EAL facilities Dmitry Kozlyuk
2020-03-30 4:10 ` [dpdk-dev] [RFC PATCH 3/9] eal/windows: improve CPU and NUMA node detection Dmitry Kozlyuk
2020-03-30 4:10 ` [dpdk-dev] [RFC PATCH 4/9] eal/windows: initialize hugepage info Dmitry Kozlyuk
2020-03-30 4:10 ` [dpdk-dev] [RFC PATCH 5/9] eal: introduce internal wrappers for file operations Dmitry Kozlyuk
2020-03-30 7:04 ` Jerin Jacob
2020-03-30 4:10 ` [dpdk-dev] [RFC PATCH 6/9] eal: introduce memory management wrappers Dmitry Kozlyuk
2020-03-30 7:31 ` Thomas Monjalon
2020-03-30 4:10 ` [dpdk-dev] [RFC PATCH 7/9] eal/windows: fix rte_page_sizes with Clang on Windows Dmitry Kozlyuk
2020-03-30 4:10 ` [dpdk-dev] [RFC PATCH 8/9] eal/windows: replace sys/queue.h with a complete one from FreeBSD Dmitry Kozlyuk
2020-03-30 4:10 ` [dpdk-dev] [RFC PATCH 9/9] eal/windows: implement basic memory management Dmitry Kozlyuk
2020-04-10 16:43 ` [dpdk-dev] [PATCH v2 00/10] eal: Windows " Dmitry Kozlyuk
2020-04-10 16:43 ` [dpdk-dev] [PATCH v2 1/1] virt2phys: virtual to physical address translator for Windows Dmitry Kozlyuk
2020-04-13 5:32 ` Ranjit Menon
2020-04-10 16:43 ` [dpdk-dev] [PATCH v2 02/10] eal/windows: do not expose private EAL facilities Dmitry Kozlyuk
2020-04-10 16:43 ` [dpdk-dev] [PATCH v2 03/10] eal/windows: improve CPU and NUMA node detection Dmitry Kozlyuk
2020-04-10 16:43 ` [dpdk-dev] [PATCH v2 04/10] eal/windows: initialize hugepage info Dmitry Kozlyuk
2020-04-10 16:43 ` [dpdk-dev] [PATCH v2 05/10] eal: introduce internal wrappers for file operations Dmitry Kozlyuk
2020-04-10 16:43 ` [dpdk-dev] [PATCH v2 06/10] eal: introduce memory management wrappers Dmitry Kozlyuk
2020-04-13 7:50 ` Tal Shnaiderman
2020-04-10 16:43 ` [dpdk-dev] [PATCH v2 07/10] eal: extract common code for memseg list initialization Dmitry Kozlyuk
2020-04-10 16:43 ` [dpdk-dev] [PATCH v2 08/10] eal/windows: fix rte_page_sizes with Clang on Windows Dmitry Kozlyuk
2020-04-10 16:43 ` [dpdk-dev] [PATCH v2 09/10] eal/windows: replace sys/queue.h with a complete one from FreeBSD Dmitry Kozlyuk
2020-04-10 16:43 ` [dpdk-dev] [PATCH v2 10/10] eal/windows: implement basic memory management Dmitry Kozlyuk
2020-04-10 22:04 ` Narcisa Ana Maria Vasile
2020-04-11 1:16 ` Dmitry Kozlyuk
2020-04-14 19:44 ` [dpdk-dev] [PATCH v3 00/10] Windows " Dmitry Kozlyuk
2020-04-14 19:44 ` [dpdk-dev] [PATCH v3 1/1] virt2phys: virtual to physical address translator for Windows Dmitry Kozlyuk
2020-04-14 23:35 ` Ranjit Menon
2020-04-15 15:19 ` Thomas Monjalon
2020-04-21 6:23 ` Ophir Munk [this message]
2020-04-14 19:44 ` [dpdk-dev] [PATCH v3 02/10] eal/windows: do not expose private EAL facilities Dmitry Kozlyuk
2020-04-21 22:40 ` Thomas Monjalon
2020-04-14 19:44 ` [dpdk-dev] [PATCH v3 03/10] eal/windows: improve CPU and NUMA node detection Dmitry Kozlyuk
2020-04-14 19:44 ` [dpdk-dev] [PATCH v3 04/10] eal/windows: initialize hugepage info Dmitry Kozlyuk
2020-04-14 19:44 ` [dpdk-dev] [PATCH v3 05/10] eal: introduce internal wrappers for file operations Dmitry Kozlyuk
2020-04-15 21:48 ` Thomas Monjalon
2020-04-17 12:24 ` Burakov, Anatoly
2020-04-28 23:50 ` Dmitry Kozlyuk
2020-04-14 19:44 ` [dpdk-dev] [PATCH v3 06/10] eal: introduce memory management wrappers Dmitry Kozlyuk
2020-04-15 22:17 ` Thomas Monjalon
2020-04-15 23:32 ` Dmitry Kozlyuk
2020-04-17 12:43 ` Burakov, Anatoly
2020-04-20 5:59 ` Tal Shnaiderman
2020-04-21 23:36 ` Dmitry Kozlyuk
2020-04-22 0:55 ` Ranjit Menon
2020-04-22 2:07 ` Ranjit Menon
2020-04-14 19:44 ` [dpdk-dev] [PATCH v3 07/10] eal: extract common code for memseg list initialization Dmitry Kozlyuk
2020-04-15 22:19 ` Thomas Monjalon
2020-04-17 13:04 ` Burakov, Anatoly
2020-04-14 19:44 ` [dpdk-dev] [PATCH v3 08/10] eal/windows: fix rte_page_sizes with Clang on Windows Dmitry Kozlyuk
2020-04-15 9:34 ` Jerin Jacob
2020-04-15 10:32 ` Dmitry Kozlyuk
2020-04-15 10:57 ` Jerin Jacob
2020-04-15 11:09 ` Dmitry Kozlyuk
2020-04-15 11:17 ` Jerin Jacob
2020-05-06 5:41 ` Ray Kinsella
2020-04-14 19:44 ` [dpdk-dev] [PATCH v3 09/10] eal/windows: replace sys/queue.h with a complete one from FreeBSD Dmitry Kozlyuk
2020-04-14 19:44 ` [dpdk-dev] [PATCH v3 10/10] eal/windows: implement basic memory management Dmitry Kozlyuk
2020-04-15 9:42 ` Jerin Jacob
2020-04-16 18:34 ` Ranjit Menon
2020-04-23 1:00 ` Dmitry Kozlyuk
2020-04-14 23:37 ` [dpdk-dev] [PATCH v3 00/10] Windows " Kadam, Pallavi
2020-04-28 23:50 ` [dpdk-dev] [PATCH v4 0/8] " Dmitry Kozlyuk
2020-04-28 23:50 ` [dpdk-dev] [PATCH v4 1/8] eal: replace rte_page_sizes with a set of constants Dmitry Kozlyuk
2020-04-28 23:50 ` [dpdk-dev] [PATCH v4 2/8] eal: introduce internal wrappers for file operations Dmitry Kozlyuk
2020-04-29 16:41 ` Burakov, Anatoly
2020-04-28 23:50 ` [dpdk-dev] [PATCH v4 3/8] eal: introduce memory management wrappers Dmitry Kozlyuk
2020-04-29 17:13 ` Burakov, Anatoly
2020-04-30 13:59 ` Burakov, Anatoly
2020-05-01 19:00 ` Dmitry Kozlyuk
2020-05-05 14:43 ` Burakov, Anatoly
2020-04-28 23:50 ` [dpdk-dev] [PATCH v4 4/8] eal: extract common code for memseg list initialization Dmitry Kozlyuk
2020-05-05 16:08 ` Burakov, Anatoly
2020-04-28 23:50 ` [dpdk-dev] [PATCH v4 5/8] eal/windows: replace sys/queue.h with a complete one from FreeBSD Dmitry Kozlyuk
2020-04-28 23:50 ` [dpdk-dev] [PATCH v4 6/8] eal/windows: improve CPU and NUMA node detection Dmitry Kozlyuk
2020-04-28 23:50 ` [dpdk-dev] [PATCH v4 7/8] eal/windows: initialize hugepage info Dmitry Kozlyuk
2020-04-28 23:50 ` [dpdk-dev] [PATCH v4 8/8] eal/windows: implement basic memory management Dmitry Kozlyuk
2020-04-29 1:18 ` Ranjit Menon
2020-05-01 19:19 ` Dmitry Kozlyuk
2020-05-05 16:24 ` Burakov, Anatoly
2020-05-05 23:20 ` Dmitry Kozlyuk
2020-05-06 9:46 ` Burakov, Anatoly
2020-05-06 21:53 ` Dmitry Kozlyuk
2020-05-07 11:57 ` Burakov, Anatoly
2020-05-13 8:24 ` Fady Bader
2020-05-13 8:42 ` Dmitry Kozlyuk
2020-05-13 9:09 ` Fady Bader
2020-05-13 9:22 ` Fady Bader
2020-05-13 9:38 ` Dmitry Kozlyuk
2020-05-13 12:25 ` Fady Bader
2020-05-18 0:17 ` Dmitry Kozlyuk
2020-05-18 22:25 ` Dmitry Kozlyuk
2020-05-25 0:37 ` [dpdk-dev] [PATCH v5 0/8] Windows " Dmitry Kozlyuk
2020-05-25 0:37 ` [dpdk-dev] [PATCH v5 01/11] eal: replace rte_page_sizes with a set of constants Dmitry Kozlyuk
2020-05-25 0:37 ` [dpdk-dev] [PATCH v5 02/11] eal: introduce internal wrappers for file operations Dmitry Kozlyuk
2020-05-28 7:59 ` Thomas Monjalon
2020-05-28 10:09 ` Dmitry Kozlyuk
2020-05-28 11:29 ` Thomas Monjalon
2020-05-25 0:37 ` [dpdk-dev] [PATCH v5 03/11] eal: introduce memory management wrappers Dmitry Kozlyuk
2020-05-27 6:33 ` Ray Kinsella
2020-05-27 16:34 ` Dmitry Kozlyuk
2020-05-28 11:26 ` Burakov, Anatoly
2020-06-01 21:08 ` Thomas Monjalon
2020-05-28 11:52 ` Burakov, Anatoly
2020-05-25 0:37 ` [dpdk-dev] [PATCH v5 04/11] eal/mem: extract common code for memseg list initialization Dmitry Kozlyuk
2020-05-28 7:31 ` Thomas Monjalon
2020-05-28 10:04 ` Dmitry Kozlyuk
2020-05-28 11:46 ` Burakov, Anatoly
2020-05-28 14:41 ` Dmitry Kozlyuk
2020-05-29 8:49 ` Burakov, Anatoly
2020-05-28 12:19 ` Burakov, Anatoly
2020-05-25 0:37 ` [dpdk-dev] [PATCH v5 05/11] eal/mem: extract common code for dynamic memory allocation Dmitry Kozlyuk
2020-05-28 8:34 ` Thomas Monjalon
2020-05-28 12:21 ` Burakov, Anatoly
2020-05-28 13:24 ` Dmitry Kozlyuk
2020-05-25 0:37 ` [dpdk-dev] [PATCH v5 06/11] trace: add size_t field emitter Dmitry Kozlyuk
2020-05-25 5:53 ` Jerin Jacob
2020-05-25 0:37 ` [dpdk-dev] [PATCH v5 07/11] eal/windows: add tracing support stubs Dmitry Kozlyuk
2020-05-25 0:37 ` [dpdk-dev] [PATCH v5 08/11] eal/windows: replace sys/queue.h with a complete one from FreeBSD Dmitry Kozlyuk
2020-05-25 0:37 ` [dpdk-dev] [PATCH v5 09/11] eal/windows: improve CPU and NUMA node detection Dmitry Kozlyuk
2020-05-25 0:37 ` [dpdk-dev] [PATCH v5 10/11] eal/windows: initialize hugepage info Dmitry Kozlyuk
2020-05-25 0:37 ` [dpdk-dev] [PATCH v5 11/11] eal/windows: implement basic memory management Dmitry Kozlyuk
2020-06-02 23:03 ` [dpdk-dev] [PATCH v6 00/11] Windows " Dmitry Kozlyuk
2020-06-02 23:03 ` [dpdk-dev] [PATCH v6 01/11] eal: replace rte_page_sizes with a set of constants Dmitry Kozlyuk
2020-06-03 1:59 ` Stephen Hemminger
2020-06-02 23:03 ` [dpdk-dev] [PATCH v6 02/11] eal: introduce internal wrappers for file operations Dmitry Kozlyuk
2020-06-03 12:07 ` Neil Horman
2020-06-03 12:34 ` Dmitry Kozlyuk
2020-06-04 21:07 ` Neil Horman
2020-06-05 0:16 ` Dmitry Kozlyuk
2020-06-05 11:19 ` Neil Horman
2020-06-02 23:03 ` [dpdk-dev] [PATCH v6 03/11] eal: introduce memory management wrappers Dmitry Kozlyuk
2020-06-02 23:03 ` [dpdk-dev] [PATCH v6 04/11] eal/mem: extract common code for memseg list initialization Dmitry Kozlyuk
2020-06-09 13:36 ` Burakov, Anatoly
2020-06-09 14:17 ` Dmitry Kozlyuk
2020-06-10 10:26 ` Burakov, Anatoly
2020-06-10 14:31 ` Dmitry Kozlyuk
2020-06-10 15:48 ` Burakov, Anatoly
2020-06-10 16:39 ` Dmitry Kozlyuk
2020-06-11 8:59 ` Burakov, Anatoly
2020-06-02 23:03 ` [dpdk-dev] [PATCH v6 05/11] eal/mem: extract common code for dynamic memory allocation Dmitry Kozlyuk
2020-06-02 23:03 ` [dpdk-dev] [PATCH v6 06/11] trace: add size_t field emitter Dmitry Kozlyuk
2020-06-03 3:29 ` Jerin Jacob
2020-06-02 23:03 ` [dpdk-dev] [PATCH v6 07/11] eal/windows: add tracing support stubs Dmitry Kozlyuk
2020-06-02 23:03 ` [dpdk-dev] [PATCH v6 08/11] eal/windows: replace sys/queue.h with a complete one from FreeBSD Dmitry Kozlyuk
2020-06-02 23:03 ` [dpdk-dev] [PATCH v6 09/11] eal/windows: improve CPU and NUMA node detection Dmitry Kozlyuk
2020-06-02 23:03 ` [dpdk-dev] [PATCH v6 10/11] eal/windows: initialize hugepage info Dmitry Kozlyuk
2020-06-02 23:03 ` [dpdk-dev] [PATCH v6 11/11] eal/windows: implement basic memory management Dmitry Kozlyuk
2020-06-08 7:41 ` [dpdk-dev] [PATCH v6 00/11] Windows " Dmitry Kozlyuk
2020-06-08 7:41 ` [dpdk-dev] [PATCH v7 01/11] eal: replace rte_page_sizes with a set of constants Dmitry Kozlyuk
2020-06-08 7:41 ` [dpdk-dev] [PATCH v7 02/11] eal: introduce internal wrappers for file operations Dmitry Kozlyuk
2020-06-08 7:41 ` [dpdk-dev] [PATCH v7 03/11] eal: introduce memory management wrappers Dmitry Kozlyuk
2020-06-08 7:41 ` [dpdk-dev] [PATCH v7 04/11] eal/mem: extract common code for memseg list initialization Dmitry Kozlyuk
2020-06-09 11:14 ` Tal Shnaiderman
2020-06-09 13:49 ` Burakov, Anatoly
2020-06-08 7:41 ` [dpdk-dev] [PATCH v7 05/11] eal/mem: extract common code for dynamic memory allocation Dmitry Kozlyuk
2020-06-08 7:41 ` [dpdk-dev] [PATCH v7 06/11] trace: add size_t field emitter Dmitry Kozlyuk
2020-06-08 7:41 ` [dpdk-dev] [PATCH v7 07/11] eal/windows: add tracing support stubs Dmitry Kozlyuk
2020-06-08 7:41 ` [dpdk-dev] [PATCH v7 08/11] eal/windows: replace sys/queue.h with a complete one from FreeBSD Dmitry Kozlyuk
2020-06-08 7:41 ` [dpdk-dev] [PATCH v7 09/11] eal/windows: improve CPU and NUMA node detection Dmitry Kozlyuk
2020-06-08 7:41 ` [dpdk-dev] [PATCH v7 10/11] eal/windows: initialize hugepage info Dmitry Kozlyuk
2020-06-08 7:41 ` [dpdk-dev] [PATCH v7 11/11] eal/windows: implement basic memory management Dmitry Kozlyuk
2020-06-10 14:27 ` [dpdk-dev] [PATCH v8 00/11] Windows " Dmitry Kozlyuk
2020-06-10 14:27 ` [dpdk-dev] [PATCH v8 01/11] eal: replace rte_page_sizes with a set of constants Dmitry Kozlyuk
2020-06-10 14:27 ` [dpdk-dev] [PATCH v8 02/11] eal: introduce internal wrappers for file operations Dmitry Kozlyuk
2020-06-11 17:13 ` Thomas Monjalon
2020-06-10 14:27 ` [dpdk-dev] [PATCH v8 03/11] eal: introduce memory management wrappers Dmitry Kozlyuk
2020-06-12 10:47 ` Thomas Monjalon
2020-06-12 13:44 ` Dmitry Kozliuk
2020-06-12 13:54 ` Thomas Monjalon
2020-06-12 20:24 ` Dmitry Kozliuk
2020-06-12 21:37 ` Thomas Monjalon
2020-06-10 14:27 ` [dpdk-dev] [PATCH v8 04/11] eal/mem: extract common code for memseg list initialization Dmitry Kozlyuk
2020-06-12 15:39 ` Thomas Monjalon
2020-06-10 14:27 ` [dpdk-dev] [PATCH v8 05/11] eal/mem: extract common code for dynamic memory allocation Dmitry Kozlyuk
2020-06-10 14:27 ` [dpdk-dev] [PATCH v8 06/11] trace: add size_t field emitter Dmitry Kozlyuk
2020-06-10 14:27 ` [dpdk-dev] [PATCH v8 07/11] eal/windows: add tracing support stubs Dmitry Kozlyuk
2020-06-10 14:27 ` [dpdk-dev] [PATCH v8 08/11] eal/windows: replace sys/queue.h with a complete one from FreeBSD Dmitry Kozlyuk
2020-06-10 14:27 ` [dpdk-dev] [PATCH v8 09/11] eal/windows: improve CPU and NUMA node detection Dmitry Kozlyuk
2020-06-12 21:45 ` Thomas Monjalon
2020-06-12 22:09 ` Thomas Monjalon
2020-06-10 14:27 ` [dpdk-dev] [PATCH v8 10/11] eal/windows: initialize hugepage info Dmitry Kozlyuk
2020-06-12 21:55 ` Thomas Monjalon
2020-06-10 14:27 ` [dpdk-dev] [PATCH v8 11/11] eal/windows: implement basic memory management Dmitry Kozlyuk
2020-06-12 22:12 ` Thomas Monjalon
2020-06-11 17:29 ` [dpdk-dev] [PATCH v8 00/11] Windows " Thomas Monjalon
2020-06-12 22:00 ` Thomas Monjalon
2020-06-15 0:43 ` [dpdk-dev] [PATCH v9 00/12] " Dmitry Kozlyuk
2020-06-15 0:43 ` [dpdk-dev] [PATCH v9 01/12] eal: replace rte_page_sizes with a set of constants Dmitry Kozlyuk
2020-06-15 0:43 ` [dpdk-dev] [PATCH v9 02/12] eal: introduce internal wrappers for file operations Dmitry Kozlyuk
2020-06-15 0:43 ` [dpdk-dev] [PATCH v9 03/12] eal: introduce memory management wrappers Dmitry Kozlyuk
2020-06-15 6:03 ` Kinsella, Ray
2020-06-15 7:41 ` Dmitry Kozlyuk
2020-06-15 7:41 ` Kinsella, Ray
2020-06-15 10:53 ` Neil Horman
2020-06-15 11:10 ` Dmitry Kozlyuk
2020-06-15 0:43 ` [dpdk-dev] [PATCH v9 04/12] eal/mem: extract common code for memseg list initialization Dmitry Kozlyuk
2020-06-15 13:13 ` Thomas Monjalon
2020-06-15 0:43 ` [dpdk-dev] [PATCH v9 05/12] eal/mem: extract common code for dynamic memory allocation Dmitry Kozlyuk
2020-06-15 0:43 ` [dpdk-dev] [PATCH v9 06/12] trace: add size_t field emitter Dmitry Kozlyuk
2020-06-15 0:43 ` [dpdk-dev] [PATCH v9 07/12] eal/windows: add tracing support stubs Dmitry Kozlyuk
2020-06-15 0:43 ` [dpdk-dev] [PATCH v9 08/12] eal/windows: replace sys/queue.h with a complete one from FreeBSD Dmitry Kozlyuk
2020-06-15 0:43 ` [dpdk-dev] [PATCH v9 09/12] eal/windows: improve CPU and NUMA node detection Dmitry Kozlyuk
2020-06-15 15:21 ` Thomas Monjalon
2020-06-15 15:39 ` Dmitry Kozlyuk
2020-06-15 0:43 ` [dpdk-dev] [PATCH v9 10/12] doc/windows: split build and run instructions Dmitry Kozlyuk
2020-06-15 0:43 ` [dpdk-dev] [PATCH v9 11/12] eal/windows: initialize hugepage info Dmitry Kozlyuk
2020-06-15 0:43 ` [dpdk-dev] [PATCH v9 12/12] eal/windows: implement basic memory management Dmitry Kozlyuk
2020-06-15 17:34 ` [dpdk-dev] [PATCH v9 00/12] Windows " Thomas Monjalon
2020-06-16 1:52 ` Ranjit Menon
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=AM0PR05MB420972ED61E79D251C930F8CD1D50@AM0PR05MB4209.eurprd05.prod.outlook.com \
--to=ophirmu@mellanox.com \
--cc=Narcisa.Vasile@microsoft.com \
--cc=dev@dpdk.org \
--cc=dmitry.kozliuk@gmail.com \
--cc=dmitrym@microsoft.com \
--cc=fady@mellanox.com \
--cc=ranjit.menon@intel.com \
--cc=talshn@mellanox.com \
--cc=thomas@monjalon.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).