From win-pv-devel-bounces@lists.xenproject.org Wed Jun 07 09:27:51 2023
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 07 Jun 2023 09:27:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.544577.850470 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1q6pSH-00086f-AI; Wed, 07 Jun 2023 09:27:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 544577.850470; Wed, 07 Jun 2023 09:27:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1q6pSH-00086W-7L; Wed, 07 Jun 2023 09:27:49 +0000
Received: by outflank-mailman (input) for mailman id 544577;
 Wed, 07 Jun 2023 09:27:47 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=yVXw=B3=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1q6pSF-0007p9-QB
 for win-pv-devel@lists.xenproject.org; Wed, 07 Jun 2023 09:27:47 +0000
Received: from mail-wm1-x335.google.com (mail-wm1-x335.google.com
 [2a00:1450:4864:20::335])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8f1be5e1-0515-11ee-8611-37d641c3527e;
 Wed, 07 Jun 2023 11:27:46 +0200 (CEST)
Received: by mail-wm1-x335.google.com with SMTP id
 5b1f17b1804b1-3f6ffc2b314so2881405e9.0
 for <win-pv-devel@lists.xenproject.org>; Wed, 07 Jun 2023 02:27:45 -0700 (PDT)
Received: from [192.168.13.162] (54-240-197-239.amazon.com. [54.240.197.239])
 by smtp.gmail.com with ESMTPSA id
 s15-20020a1cf20f000000b003f7e653c3e3sm1498028wmc.21.2023.06.07.02.27.43
 for <win-pv-devel@lists.xenproject.org>
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 07 Jun 2023 02:27:43 -0700 (PDT)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8f1be5e1-0515-11ee-8611-37d641c3527e
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1686130064; x=1688722064;
        h=content-transfer-encoding:in-reply-to:from:content-language
         :references:to:subject:reply-to:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=d4y3O4alCuZx6mlE8NtuPtwce7xVtD1iv8zGWCvpbGE=;
        b=BMUm7x79oplsjJM5TSiEKpkqzr033nx+paNH1wvuZlnrmD6T/zad7KqAI3cPxFMT7X
         IgMTHmVMZ4VFLFFdpqg/5pwiafF2oaOGCzUECmimmsPQSXpvm2snGcwWh39TuRxWZ9tZ
         zZvP/xBKyaveuCDGYWE7Z3fd0MXesgMBKw4y5plK37kMNPUpU0xlbKbBxFvd4U3gqhE3
         BKPGaIfcsD8oXRa4e6D8PvV5HIlsbHWZ1CHZIhn8wN47BO9NqcOq0qkhS9W/vvNRDMcP
         fUkBHR9aVJ9KyNceRx+NSmqel2iwYD/jaM9aVZsqSS4dfYov3VMGFhdm1F2JLMHiD6FB
         rk0w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1686130064; x=1688722064;
        h=content-transfer-encoding:in-reply-to:from:content-language
         :references:to:subject:reply-to:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=d4y3O4alCuZx6mlE8NtuPtwce7xVtD1iv8zGWCvpbGE=;
        b=k41RkaW0JgF7AS3UptnG/LXRyIkZt7b6GTiJL+3FZ5ldq+PHiAHQxaHjIM9EvAn0BH
         wjlrUEazMJ/3CRj40wUcbYrwpSNYaEwQN3pBXNNO8IbDW1CA9ceJZ1gz3inonWnmQsJ5
         sahuGP19WPxt06ANR+FiRX4xD3kvhX1SFsFYQ/n5arrOVDPyts5JoUH8j0x6KPw63VqZ
         LoxpzgpbsFvmvOanlMMozBTKkT2Ggwph1E0cVDkVb4EdoKRMHPgiI8mYHCrrngVyL5SR
         Z3218OBlO92EW1apj25Ev5QvokeUoW/B2a55cYISPiIvSnGoCJcHqjLAJeVAUBw08qDt
         xTgA==
X-Gm-Message-State: AC+VfDw+LdqDmGgQMR9xd6Ap7Z5xeyuBYoLn+SBCNG1WaBsBxXLJIVR7
	SUma5UPqBsCxmFpHqoN28dO9j/VqeZvi3rlt
X-Google-Smtp-Source: ACHHUZ7IQRV8ei2AnglXplDr3CXuX0lRtz6lX75HwMvptvBOlSc5JKvXsCfdqvoAabYNxmhgc15ijw==
X-Received: by 2002:a05:600c:1385:b0:3f5:a54:9f97 with SMTP id u5-20020a05600c138500b003f50a549f97mr12258948wmf.0.1686130064287;
        Wed, 07 Jun 2023 02:27:44 -0700 (PDT)
Message-ID: <05867814-5f14-2aa4-932d-29ae6da8a87c@gmail.com>
Date: Wed, 7 Jun 2023 10:27:42 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.11.2
Reply-To: paul@xen.org
Subject: Re: [PATCH 1/3] Fix buffer overrun when suspending VMs with many
 vCPUs
To: win-pv-devel@lists.xenproject.org
References: <20230525151411.826-1-owen.smith@cloud.com>
Content-Language: en-US
From: "Durrant, Paul" <xadimgnik@gmail.com>
In-Reply-To: <20230525151411.826-1-owen.smith@cloud.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 25/05/2023 16:14, Owen Smith wrote:
> Dynamically allocate the KDPC array when there are more active vCPUs that
> would fit into the single PAGE_SIZE region that is pre-allocated.
> 
> __Section is defined as a PAGE_SIZE region, which can only contain a limited
> number of KDPC objects in addition to the SYNC_CONTEXT header. When there is
> insufficient space for a KDPC object per vCPU, dynamically allocate space for
> the KDPC array. This prevents a buffer overrun when accessing indexes with
> 64 vCPUs. Dynamic allocation will allow this to expand to many vCPUs beyond
> 64.
> 
> Signed-off-by: Owen Smith <owen.smith@cloud.com>

Let's just dynamically allocate in all cases. I'll adjust accordingly.

Acked-by: Paul Durrant <paul@xen.org>

> ---
>   src/xenbus/sync.c | 50 ++++++++++++++++++++++++++++++++++++++++++++---
>   1 file changed, 47 insertions(+), 3 deletions(-)
> 
> diff --git a/src/xenbus/sync.c b/src/xenbus/sync.c
> index fdfaf2d..4418c8e 100644
> --- a/src/xenbus/sync.c
> +++ b/src/xenbus/sync.c
> @@ -96,12 +96,43 @@ typedef struct  _SYNC_CONTEXT {
>       LONG            ProcessorCount;
>       SYNC_REQUEST    Request;
>       LONG            CompletionCount;
> +    PKDPC           Dpcs;
>       KDPC            Dpc[1];
>   } SYNC_CONTEXT, *PSYNC_CONTEXT;
>   
>   static PSYNC_CONTEXT    SyncContext = (PVOID)__Section;
>   static LONG             SyncOwner = -1;
>   
> +#define MAX_DPCS_PER_PAGE   ((PAGE_SIZE - sizeof(SYNC_CONTEXT)) / sizeof(KDPC))
> +#define SYNC_POOL_TAG       'CNYS'
> +
> +static FORCEINLINE PVOID
> +__SyncAllocate(
> +    IN  ULONG   Size
> +    )
> +{
> +    PVOID       Buffer;
> +
> +    if (Size == 0)
> +        return NULL;
> +
> +    Buffer = ExAllocatePoolWithTag(NonPagedPool,
> +                                   Size,
> +                                   SYNC_POOL_TAG);
> +    if (Buffer != NULL)
> +        RtlZeroMemory(Buffer, Size);
> +
> +    return Buffer;
> +}
> +
> +static FORCEINLINE VOID
> +__SyncFree(
> +    IN  PVOID   Buffer
> +    )
> +{
> +    ExFreePoolWithTag(Buffer, SYNC_POOL_TAG);
> +}
> +
>   static FORCEINLINE VOID
>   __SyncAcquire(
>       IN  LONG    Index
> @@ -343,15 +374,23 @@ SyncCapture(
>       Context->Late = Late;
>   
>       Context->CompletionCount = 0;
> -    KeMemoryBarrier();
> +
> +    Context->Dpcs = &Context->Dpc[0];
>   
>       Context->ProcessorCount = KeQueryActiveProcessorCountEx(ALL_PROCESSOR_GROUPS);
> +    if (Context->ProcessorCount >= MAX_DPCS_PER_PAGE) {
> +        Context->Dpcs = __SyncAllocate(Context->ProcessorCount * sizeof(KDPC));
> +        ASSERT(Context->Dpcs != NULL);
> +    }
> +
> +    KeMemoryBarrier();
>   
>       for (Index = 0; Index < Context->ProcessorCount; Index++) {
> -        PKDPC       Dpc = &Context->Dpc[Index];
> +        PKDPC       Dpc = &Context->Dpcs[Index];
>           NTSTATUS    status;
>   
> -        ASSERT3U((ULONG_PTR)(Dpc + 1), <, (ULONG_PTR)__Section + PAGE_SIZE);
> +        // Imply Context->Dpcs == &Context->Dpc[0] ->
> +        //  ASSERT3U((ULONG_PTR)(Dpc + 1), <, (ULONG_PTR)__Section + PAGE_SIZE);
>   
>           status = KeGetProcessorNumberFromIndex(Index, &ProcNumber);
>           ASSERT(NT_SUCCESS(status));
> @@ -489,6 +528,11 @@ SyncRelease(
>   
>       __SyncWait();
>   
> +    if (Context->ProcessorCount >= MAX_DPCS_PER_PAGE) {
> +        ASSERT3P(Context->Dpcs, !=, &Context->Dpc[0]);
> +        __SyncFree(Context->Dpcs);
> +    }
> +
>       RtlZeroMemory(Context, PAGE_SIZE);
>   
>       __SyncRelease();



From win-pv-devel-bounces@lists.xenproject.org Wed Jun 07 09:28:58 2023
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 07 Jun 2023 09:28:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.544607.850513 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1q6pTO-00025I-Nq; Wed, 07 Jun 2023 09:28:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 544607.850513; Wed, 07 Jun 2023 09:28:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1q6pTO-00025D-L8; Wed, 07 Jun 2023 09:28:58 +0000
Received: by outflank-mailman (input) for mailman id 544607;
 Wed, 07 Jun 2023 09:28:57 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=yVXw=B3=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1q6pTN-00089h-9Y
 for win-pv-devel@lists.xenproject.org; Wed, 07 Jun 2023 09:28:57 +0000
Received: from mail-wr1-x433.google.com (mail-wr1-x433.google.com
 [2a00:1450:4864:20::433])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id b90abec1-0515-11ee-b232-6b7b168915f2;
 Wed, 07 Jun 2023 11:28:56 +0200 (CEST)
Received: by mail-wr1-x433.google.com with SMTP id
 ffacd0b85a97d-30aeee7c8a0so296395f8f.1
 for <win-pv-devel@lists.xenproject.org>; Wed, 07 Jun 2023 02:28:55 -0700 (PDT)
Received: from [192.168.13.162] (54-240-197-239.amazon.com. [54.240.197.239])
 by smtp.gmail.com with ESMTPSA id
 l5-20020a1c7905000000b003f7f475c3c7sm229830wme.8.2023.06.07.02.28.54
 for <win-pv-devel@lists.xenproject.org>
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 07 Jun 2023 02:28:54 -0700 (PDT)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b90abec1-0515-11ee-b232-6b7b168915f2
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1686130135; x=1688722135;
        h=content-transfer-encoding:in-reply-to:from:references:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=Ono/G0Gx5PR3vBL5IptgEMDAgqozYQrFPhfEesVQhpU=;
        b=fbnlnXaGZpNb8r2VMZ8rz7pvz17LOdaGoiFXVA10ZwpT7MnVe85Nk6NFCmFFxhXkjc
         3br94k+chIqD4TjpR2zgYtK8udJO8FlFNBoIc0bclybK9kJnLHcTBxng3FmtE09Bsmsw
         h6Lg3zpZzO13yu943pkWScE3ckRNf4z0bWNf/EYmdJyccxoPFYtICi1k4Jt/hE5iGKGu
         eYX7C2sL4ptqqlCcDBNaihBD63uuhcBFpfjxQsE/k1LflgT8kJW4ahlbJBcj5bjf+zE/
         5/czwgnLLx6zLHFl6FIQ0xISes03CM6xPBKAg91Qo28rWLsbuWn7T9wySx+nTSXIh3Jh
         hETQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1686130135; x=1688722135;
        h=content-transfer-encoding:in-reply-to:from:references:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=Ono/G0Gx5PR3vBL5IptgEMDAgqozYQrFPhfEesVQhpU=;
        b=cDSr9QDsEbzXHfVmHLyPbXDik30YsVAaLbt9bFfUynY3Vh42pms6gxu2imgr6LY5nC
         y5dYDkNgb+EUeFWMzSx5I2eREJtRCjy0TGsFhysqVJ88Ej3vPaJahjzEwtcUBuP+63zD
         C+E+aoXXNDTiZMVnTMXEdKUNkQtt/8cAkzRHxRQav9IoYoMgNHKawgi/Kt0AXYJcWRSs
         khgUNwJ8I/06Jn7jl5GQssvJFFSO+IKORSj+gGt09iVSf/4TmUPcwwFPWrwYfTJ+j/C5
         tKWMUWzW7IG/JYFNOMnoeTCzo0FzvSgYZxqBNHwMvgEdIS2HbKPMR7zsBojlb3qbZt2i
         NP4w==
X-Gm-Message-State: AC+VfDy+sDQ2Jb200Mz/MXmwABIfJdBf1Jx4eZrPcf/QWjfRtjgxgFSJ
	wArRUnWao8zawBVZ1w+4zgvhySzTG+OVt9gq
X-Google-Smtp-Source: ACHHUZ4jdU1Ad/wUgKP4Js/REEmMY7KxQCmh5r/ePHMUZP0ygY0KJZXMbfTCYoOlLZDNA5mfbCYIvA==
X-Received: by 2002:a5d:5581:0:b0:309:48eb:993d with SMTP id i1-20020a5d5581000000b0030948eb993dmr10625621wrv.15.1686130134695;
        Wed, 07 Jun 2023 02:28:54 -0700 (PDT)
Message-ID: <5669833b-f599-650d-db63-6e6846ae042a@gmail.com>
Date: Wed, 7 Jun 2023 10:28:53 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.11.2
Reply-To: paul@xen.org
Subject: Re: [PATCH 2/3] Add logging for Active/Maximum Processors
Content-Language: en-US
To: win-pv-devel@lists.xenproject.org
References: <20230525151411.826-1-owen.smith@cloud.com>
 <20230525151411.826-2-owen.smith@cloud.com>
From: "Durrant, Paul" <xadimgnik@gmail.com>
In-Reply-To: <20230525151411.826-2-owen.smith@cloud.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 25/05/2023 16:14, Owen Smith wrote:
> Server 2022 can report Active = 32, Maximum = 64
> 
> Signed-off-by: Owen Smith <owen.smith@cloud.com>

Acked-by: Paul Durrant <paul@xen.org>

> ---
>   src/xen/system.c | 4 ++++
>   1 file changed, 4 insertions(+)
> 
> diff --git a/src/xen/system.c b/src/xen/system.c
> index 3c01397..844deea 100644
> --- a/src/xen/system.c
> +++ b/src/xen/system.c
> @@ -1263,6 +1263,7 @@ SystemInitialize(
>       LONG            References;
>       HANDLE          ParametersKey;
>       ULONG           RegisterVcpuInfo;
> +    ULONG           ActiveProcessors;
>       NTSTATUS        status;
>   
>       References = InterlockedIncrement(&Context->References);
> @@ -1271,9 +1272,12 @@ SystemInitialize(
>       if (References != 1)
>           goto fail1;
>   
> +    ActiveProcessors = KeQueryActiveProcessorCountEx(ALL_PROCESSOR_GROUPS);
>       Context->ProcessorCount = KeQueryMaximumProcessorCountEx(ALL_PROCESSOR_GROUPS);
>       Context->Processor = __SystemAllocate(sizeof (SYSTEM_PROCESSOR) * Context->ProcessorCount);
>   
> +    Info("CPUs %u / %u\n", ActiveProcessors, Context->ProcessorCount);
> +
>       status = STATUS_NO_MEMORY;
>       if (Context->Processor == NULL)
>           goto fail2;



From win-pv-devel-bounces@lists.xenproject.org Wed Jun 07 09:51:02 2023
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 07 Jun 2023 09:51:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.544632.850547 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1q6poj-0006ov-44; Wed, 07 Jun 2023 09:51:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 544632.850547; Wed, 07 Jun 2023 09:51:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1q6poj-0006oo-1V; Wed, 07 Jun 2023 09:51:01 +0000
Received: by outflank-mailman (input) for mailman id 544632;
 Wed, 07 Jun 2023 09:50:59 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=yVXw=B3=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1q6poh-0006oi-UH
 for win-pv-devel@lists.xenproject.org; Wed, 07 Jun 2023 09:50:59 +0000
Received: from mail-wm1-x336.google.com (mail-wm1-x336.google.com
 [2a00:1450:4864:20::336])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id cd641a79-0518-11ee-8611-37d641c3527e;
 Wed, 07 Jun 2023 11:50:58 +0200 (CEST)
Received: by mail-wm1-x336.google.com with SMTP id
 5b1f17b1804b1-3f735259fa0so42367025e9.1
 for <win-pv-devel@lists.xenproject.org>; Wed, 07 Jun 2023 02:50:57 -0700 (PDT)
Received: from [192.168.13.162] (54-240-197-239.amazon.com. [54.240.197.239])
 by smtp.gmail.com with ESMTPSA id
 z17-20020a1c4c11000000b003f60a9ccd34sm1554675wmf.37.2023.06.07.02.50.56
 for <win-pv-devel@lists.xenproject.org>
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 07 Jun 2023 02:50:56 -0700 (PDT)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: cd641a79-0518-11ee-8611-37d641c3527e
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1686131457; x=1688723457;
        h=content-transfer-encoding:in-reply-to:from:references:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=cdKHikfFGm8MCH2NXVotevhGu6HusKMosVDDYnF3cYY=;
        b=A9PQ/1MxpQrYMM6mcqp1CZmqgu4fuE0ZpNOIkVIkiaVtqB0xcYCG8PcjJPtwBRqWG0
         FAAmVeexm8k3KRhH/sUWpnDIAvhT8GSiD1JD//PWn5aJ2CMc/jDyGdXjzEctceVWvO9M
         RFQP1m0cr972mUQ6gTL5+y66lS6j/th+nbJQV+de1kmVuQXD91+MEyaYFcxs8O6d9K/J
         t2y+9uuuumz4aYn09hn/vqVHK76gCZqi5WQXn8IZoVici9blgFXOgUAuviAVEFVEysWK
         bE/ze96d49Z9VBIJGaLc0xBeEl8MhO0/JgsGSjoIlcqncyxF1+xemFZOJr8VjoZAFQNF
         aF6A==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1686131457; x=1688723457;
        h=content-transfer-encoding:in-reply-to:from:references:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=cdKHikfFGm8MCH2NXVotevhGu6HusKMosVDDYnF3cYY=;
        b=lFqv/Wrx/DVY1In02ZQIRKVR6eF9wYhkjHdkXUD/lOeU8AI99896U2vJkyF4i5ZvD6
         4TGYu/yYVApkdDPUqFKcYyIB+3aDXqj1tQj2L0JaDMGKnOkz47/AGxd53z4ATx3Dgt+a
         5P5J4fFoiqnw1NRcNCnfFWx/WBtzkKfzHvCv4pyfKk00dU2NpNomY9O4DhH+oYo+XaE6
         q+jhBKMGWRvCU/tLAvrcWDJ4tlAyFsvDWTOx31Z1iJce/Ncet7onCRQ+neC+7hAB6t6u
         FugNbbiX5hfzHZHwtkhSNLuGjwqlEv70Ow5WoQPgUpqbh1trM/+6sd1yEncfh46twTSx
         Mqew==
X-Gm-Message-State: AC+VfDxHT8iFvZtLPHWlCwFQTtyaTEPBX4MsrMKeVDVyQCygLk9OeTrI
	mfjpDy7F0dWMKiIKq0SOw/JC2Ons3PCToGE/
X-Google-Smtp-Source: ACHHUZ6FqtEWOt+IOf7Rm971kESBbdFTrYydB7ZStFWL3FxKtwVW/B/U65oLR5XkS25kjbce8rcvew==
X-Received: by 2002:a7b:c38d:0:b0:3f6:c7b:d3c8 with SMTP id s13-20020a7bc38d000000b003f60c7bd3c8mr6420763wmj.16.1686131457236;
        Wed, 07 Jun 2023 02:50:57 -0700 (PDT)
Message-ID: <2cef158d-ff39-50ed-df85-743a2544c28b@gmail.com>
Date: Wed, 7 Jun 2023 10:50:56 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.11.2
Reply-To: paul@xen.org
Subject: Re: [PATCH 3/3] Allow removal of current Slab
Content-Language: en-US
To: win-pv-devel@lists.xenproject.org
References: <20230525151411.826-1-owen.smith@cloud.com>
 <20230525151411.826-3-owen.smith@cloud.com>
From: "Durrant, Paul" <xadimgnik@gmail.com>
In-Reply-To: <20230525151411.826-3-owen.smith@cloud.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 25/05/2023 16:14, Owen Smith wrote:
> From: Owen Smith <owen.smith@citrix.com>
> 
> When all Objects in the current Slab have been freed, its possible
> that the current Slab will be destroyed. Its not guaranteed that the
> current Slab is the only Slab in the SlabList, as objects can be returned
> in a different order than allocated, especially after objects have been
> reused.
> 
> Walk the Cursor back to the previous Slab (or SlabList header)

Yes, this looks like something that was missed when CacheSpill() was 
added. I'm happy to take this part.

> and allow
> for the possibility that the current Slab may be full during the CacheGet
> call (which will require creation of another Slab)
> 

There's an ASSERT to check that the cursor slab is not full so I don't 
think your modification to CacheGet() is correct.
The code is:

  610    if (Cache->Cursor != &Cache->SlabList) {
  611        PLIST_ENTRY ListEntry = Cache->Cursor;
  612        PXENBUS_CACHE_SLAB  Slab;
  613
  614        Slab = CONTAINING_RECORD(ListEntry, XENBUS_CACHE_SLAB, 
ListEntry);
  615
  616        Object = CacheGetObjectFromSlab(Slab);
  617        ASSERT(Object != NULL);
  618
  619        if (CacheMaskCount(Slab->Allocated) == 
CacheMaskSize(Slab->Allocated))
  620            Cache->Cursor = Slab->ListEntry.Flink;
  621    }

So if the cursor slab is full it is walked forward, so if there are no 
more slabs it will end up pointing at Cache->SlabList, so the ASSERT you 
are removing *should* be valid. If you are hitting it then something 
else is wrong.

   Paul

> Signed-off-by: Owen Smith <owen.smith@citrix.com>
> ---
>   src/xenbus/cache.c | 17 +++++++----------
>   1 file changed, 7 insertions(+), 10 deletions(-)
> 
> diff --git a/src/xenbus/cache.c b/src/xenbus/cache.c
> index 07dcd56..e2aa137 100644
> --- a/src/xenbus/cache.c
> +++ b/src/xenbus/cache.c
> @@ -471,14 +471,11 @@ CacheDestroySlab(
>       ASSERT3U(Cache->Count, >=, CacheMaskSize(Slab->Allocated));
>       Cache->Count -= CacheMaskSize(Slab->Allocated);
>   
> -    //
> -    // The only reason the cursor should be pointing at this slab is
> -    // if it is the only one in the list.
> -    //
>       if (Cache->Cursor == &Slab->ListEntry)
> -        Cache->Cursor = &Cache->SlabList;
> +        Cache->Cursor = Slab->ListEntry.Blink;
>   
> -    RemoveEntryList(&Slab->ListEntry);
> +    if (RemoveEntryList(&Slab->ListEntry))
> +        Cache->Cursor = &Cache->SlabList;
>   
>       ASSERT(Cache->Cursor != &Cache->SlabList ||
>              IsListEmpty(&Cache->SlabList));
> @@ -614,17 +611,17 @@ again:
>           Slab = CONTAINING_RECORD(ListEntry, XENBUS_CACHE_SLAB, ListEntry);
>   
>           Object = CacheGetObjectFromSlab(Slab);
> -        ASSERT(Object != NULL);
>   
> -        if (CacheMaskCount(Slab->Allocated) == CacheMaskSize(Slab->Allocated))
> +        if (CacheMaskCount(Slab->Allocated) == CacheMaskSize(Slab->Allocated)) {
>               Cache->Cursor = Slab->ListEntry.Flink;
> +            if (Object == NULL)
> +                goto again;
> +        }
>       }
>   
>       if (Object == NULL) {
>           NTSTATUS status;
>   
> -        ASSERT3P(Cache->Cursor, ==, &Cache->SlabList);
> -
>           status = CacheCreateSlab(Cache);
>           if (NT_SUCCESS(status)) {
>               ASSERT(Cache->Cursor != &Cache->SlabList);



From win-pv-devel-bounces@lists.xenproject.org Wed Jun 07 09:52:06 2023
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 07 Jun 2023 09:52:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.544639.850551 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1q6ppm-0006td-81; Wed, 07 Jun 2023 09:52:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 544639.850551; Wed, 07 Jun 2023 09:52:06 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1q6ppm-0006tW-5L; Wed, 07 Jun 2023 09:52:06 +0000
Received: by outflank-mailman (input) for mailman id 544639;
 Wed, 07 Jun 2023 09:52:04 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=yVXw=B3=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1q6ppk-0006tL-Rs
 for win-pv-devel@lists.xenproject.org; Wed, 07 Jun 2023 09:52:04 +0000
Received: from mail-wm1-x330.google.com (mail-wm1-x330.google.com
 [2a00:1450:4864:20::330])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f4492eea-0518-11ee-8611-37d641c3527e;
 Wed, 07 Jun 2023 11:52:03 +0200 (CEST)
Received: by mail-wm1-x330.google.com with SMTP id
 5b1f17b1804b1-3f6da07ff00so71897455e9.3
 for <win-pv-devel@lists.xenproject.org>; Wed, 07 Jun 2023 02:52:03 -0700 (PDT)
Received: from [192.168.13.162] (54-240-197-231.amazon.com. [54.240.197.231])
 by smtp.gmail.com with ESMTPSA id
 n2-20020a05600c294200b003f7ba52eeccsm1605802wmd.7.2023.06.07.02.52.01
 for <win-pv-devel@lists.xenproject.org>
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 07 Jun 2023 02:52:02 -0700 (PDT)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f4492eea-0518-11ee-8611-37d641c3527e
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1686131522; x=1688723522;
        h=content-transfer-encoding:in-reply-to:from:references:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=vsnzwrcmz2ddZAs2L6YQXH8KP/XzryvTa+NA7Uanqu4=;
        b=MzOXt0slI+mvhlAHGIWOaFMjJqtAzHMTKayiS+Eiidj/bC/5xc0am0cNTFv5nF8NwJ
         LqjHX5fFk0/0FHke1doK1540p4nPfwA5sT1UcD6V31JvQB0q7+i1Nawk88rKpsuss1SD
         B2cz5n+5JjgXMtWcEXzm6Fc7MRmudko54MORLx0D7ajHr1aEZhd+TFSdkFfmLDlCzmwu
         Tsk6wAyTcvsdiYrEFGw1Ku3Y7YYMTxJT9U/i3ypD/smDKeSbIMekfVh5609SGiX74XYZ
         pNPPoQ4is/63iCt5VwLmviQJGQO7Lt3tUsffm4e06QN9tjCvZvNF+qMEPsvXuAeWzqyl
         FrSw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1686131522; x=1688723522;
        h=content-transfer-encoding:in-reply-to:from:references:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=vsnzwrcmz2ddZAs2L6YQXH8KP/XzryvTa+NA7Uanqu4=;
        b=bX4HJabLDl/6H2/2a8ksPW20B61a/9Tbxx0fAJM9IVuTRUcZTRGn4pmDXRUcCN+/do
         Ss5qof0GHCQFnZ5Gzkr/X3ouR8JsyXSYM8eUkO5FWKGkux9TrX+QTQ1Td8LlaP1h740j
         Lbi6FFUNawVt4oFKobfE3SriKyjA60TiauCS1qNedYsBdlBWoT3CFcw45GCm6G8uB56X
         n5iDDd3HUbDnNsEX4k8QdhpyGRsjlgx1Lo47EMdgaa5nYmV6BvgXpF9gfgC5B7c4TVKz
         GeVYJa80uU8xSbuYDzzI70DrW/jiI8+k9be6NTSTVO15GChUlBwH700lyrp4BU4mwjhR
         jeXA==
X-Gm-Message-State: AC+VfDweR4BwC4L2gXUHKyr2FQT0rNI307x/aCeXEpVv/ExU54tIQGsl
	dGANAadKrWZlL1OLjUIdqE9ig6NW1hMxYIlR
X-Google-Smtp-Source: ACHHUZ5kR0gIY0R99zlPCBjPAn4ZKVlR6wp466cfT6zBC+mfs4h32qNdetWWEfCv6acH6FF0XmybQA==
X-Received: by 2002:a7b:c38d:0:b0:3f7:e536:8f0f with SMTP id s13-20020a7bc38d000000b003f7e5368f0fmr4774305wmj.21.1686131522595;
        Wed, 07 Jun 2023 02:52:02 -0700 (PDT)
Message-ID: <e7f7fbe5-c107-91f1-a2e7-0aa8c6ebec74@gmail.com>
Date: Wed, 7 Jun 2023 10:52:01 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.11.2
Reply-To: paul@xen.org
Subject: Re: [PATCH] Set FrontendMaxQueues by default
Content-Language: en-US
To: win-pv-devel@lists.xenproject.org
References: <20230526081710.1222-1-owen.smith@cloud.com>
From: "Durrant, Paul" <xadimgnik@gmail.com>
In-Reply-To: <20230526081710.1222-1-owen.smith@cloud.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 26/05/2023 09:17, Owen Smith wrote:
> Limiting the number of queues to the same value defined in xennet's INF
> file prevents xenvif from allocating many more resources than required.
> 
> Currently, xenvif will allocate a queue for each active CPU, but xennet
> only reports a maximum of 8 RSS queues to Windows. When vCPU count is
> greather than 8, additional queues are not used and just consume resources.
> 
> Signed-off-by: Owen Smith <owen.smith@cloud.com>

Acked-by: Paul Durrant <paul@xen.org>

> ---
>   src/xenvif.inf | 1 +
>   1 file changed, 1 insertion(+)
> 
> diff --git a/src/xenvif.inf b/src/xenvif.inf
> index d81fe52..4b5c9f7 100644
> --- a/src/xenvif.inf
> +++ b/src/xenvif.inf
> @@ -88,6 +88,7 @@ HKR,,"BootFlags",0x00010003,0x81
>   [XenVif_Parameters]
>   HKR,"Parameters",,0x00000010
>   HKR,"Parameters","RequestKey",0x00000000,%RequestKey%
> +HKR,"Parameters","FrontendMaxQueues",0x00010001,0x00000008
>   
>   [XenVif_Inst.CoInstallers]
>   CopyFiles=CoInst_CopyFiles



From win-pv-devel-bounces@lists.xenproject.org Wed Jun 07 11:53:45 2023
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 07 Jun 2023 11:53:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.544716.850686 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1q6rjS-0000bg-AD; Wed, 07 Jun 2023 11:53:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 544716.850686; Wed, 07 Jun 2023 11:53:42 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1q6rjS-0000bZ-6f; Wed, 07 Jun 2023 11:53:42 +0000
Received: by outflank-mailman (input) for mailman id 544716;
 Wed, 07 Jun 2023 11:53:40 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=axRM=B3=tibco.com=osmith@srs-se1.protection.inumbo.net>)
 id 1q6rjQ-0000bT-Gu
 for win-pv-devel@lists.xenproject.org; Wed, 07 Jun 2023 11:53:40 +0000
Received: from mail-ed1-x531.google.com (mail-ed1-x531.google.com
 [2a00:1450:4864:20::531])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f0bc7097-0529-11ee-b232-6b7b168915f2;
 Wed, 07 Jun 2023 13:53:38 +0200 (CEST)
Received: by mail-ed1-x531.google.com with SMTP id
 4fb4d7f45d1cf-516a008e495so675490a12.1
 for <win-pv-devel@lists.xenproject.org>; Wed, 07 Jun 2023 04:53:38 -0700 (PDT)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f0bc7097-0529-11ee-b232-6b7b168915f2
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1686138818; x=1688730818;
        h=cc:to:subject:message-id:date:from:in-reply-to:references
         :mime-version:from:to:cc:subject:date:message-id:reply-to;
        bh=+Uha56pG2JExlYZloa1EHCAsFN8C0+ZE1S5Nmm+g65o=;
        b=PEcswe3C+ThnHc5JvyIDCOjY+XKuZeVSxvWeAnV91X6YjbZhZGGvpzAnAFWH78/Vex
         VYw1r7rh7G4WEqKXfeegh5nVPvfn9G/uSLNbztfS91z3KLiKqofJTlR8MpwfSknVottN
         hLmwmv4WPsK/rpC2TF5o7/kNHXNpNrLtjRSsA=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1686138818; x=1688730818;
        h=cc:to:subject:message-id:date:from:in-reply-to:references
         :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=+Uha56pG2JExlYZloa1EHCAsFN8C0+ZE1S5Nmm+g65o=;
        b=fkVzRQXGg8w+0g+tThFO5B50EPt3hlFtNNAFiubDgWLACwF7r/9sagJrZBZotPvter
         jtct8WPWbUhnVDb8G1asYLT5Mp4okUbcOjCcp7Ff7Cclxze65KtNAbzycyeWv4DQBrAr
         OAJvtEXNlFm63hHsK6C/nEjQIxG6qodoFTKrrkC6kpT+EKcsuz88fY5oqDlJ2Vfn0ON4
         8bUERZuHBCTgqab/R7GEe9gZ2qx39h5mZxtUrzgkU8POHEIvryY0SAUN0VI0cKgppijZ
         kQHrH0WmDgxbUHddDiCMVvFMM7UH1GxoKUDOzRL50uI2oGz6mJNg4Ae1US1otGiQns0T
         TVoQ==
X-Gm-Message-State: AC+VfDw+6j0bYgUmJL/x3AyBhpGW8WQnxG4BSqOZtWSppjWxK1p5qYi9
	jEoFwHWj3YVKRHs83U6QryvA/5w9SNB8o37P/U8GxHm2c499+r0=
X-Google-Smtp-Source: ACHHUZ6LfcK6gcWZy1HZvDuTRoF141iVo1wGT0gu7aOkzKZzTM+AQFwrwLB0WNfZpQl2r1D2eK1i3GIjTLduhHFgfC8=
X-Received: by 2002:aa7:d155:0:b0:516:2aaa:9bdd with SMTP id
 r21-20020aa7d155000000b005162aaa9bddmr5551992edo.7.1686138818083; Wed, 07 Jun
 2023 04:53:38 -0700 (PDT)
MIME-Version: 1.0
References: <20230525151411.826-1-owen.smith@cloud.com> <20230525151411.826-3-owen.smith@cloud.com>
 <2cef158d-ff39-50ed-df85-743a2544c28b@gmail.com>
In-Reply-To: <2cef158d-ff39-50ed-df85-743a2544c28b@gmail.com>
From: Owen Smith <owen.smith@cloud.com>
Date: Wed, 7 Jun 2023 12:53:26 +0100
Message-ID: <CAC_UY8-UBsc5zzPnbAkArsbaOuXkqkD5LngxiDEAQkP1sJ47CQ@mail.gmail.com>
Subject: Re: [PATCH 3/3] Allow removal of current Slab
To: paul@xen.org
Cc: win-pv-devel@lists.xenproject.org
Content-Type: multipart/alternative; boundary="0000000000004b52b905fd88c9fa"

--0000000000004b52b905fd88c9fa
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Then it looks like a minor reordering is needed. The check for
CacheMaskCount(Slab) =3D=3D CacheMaskSize(Slab) should be made before the
attempt to call CacheGetObjectFromSlab(Slab), as if Slab is full,
CacheGetObjectFromSlab will fail and return NULL, triggering the ASSERT
i.e.
if (Cache->Cursor !=3D &Cache->SlabList) {
  PLIST_ENTRY ListEntry =3D Cache->Cursor;
  PXENBUS_CACHE_SLAB Slab;
  Slab =3D CONTAINING_RECORD(ListEntry, XENBUS_CACHE_SLAB, ListEntry);
  if (CacheMaskCount(Slab->Allocated) =3D=3D CacheMaskSize(Slab->Allocated)=
) {
    // this slab is full, try next slab
    Cache->Cursor =3D Slab->ListEntry.Flink;
    goto again;
  }
  // there are free objects in this slab, this should always work
  Object =3D CacheGetObjectFromSlab(Slab);
  ASSERT(Object !=3D NULL);
}

Owen


On Wed, Jun 7, 2023 at 10:51=E2=80=AFAM Durrant, Paul <xadimgnik@gmail.com>=
 wrote:

> [CAUTION - EXTERNAL EMAIL] DO NOT reply, click links, or open attachments
> unless you have verified the sender and know the content is safe.
>
> On 25/05/2023 16:14, Owen Smith wrote:
> > From: Owen Smith <owen.smith@citrix.com>
> >
> > When all Objects in the current Slab have been freed, its possible
> > that the current Slab will be destroyed. Its not guaranteed that the
> > current Slab is the only Slab in the SlabList, as objects can be return=
ed
> > in a different order than allocated, especially after objects have been
> > reused.
> >
> > Walk the Cursor back to the previous Slab (or SlabList header)
>
> Yes, this looks like something that was missed when CacheSpill() was
> added. I'm happy to take this part.
>
> > and allow
> > for the possibility that the current Slab may be full during the CacheG=
et
> > call (which will require creation of another Slab)
> >
>
> There's an ASSERT to check that the cursor slab is not full so I don't
> think your modification to CacheGet() is correct.
> The code is:
>
>   610    if (Cache->Cursor !=3D &Cache->SlabList) {
>   611        PLIST_ENTRY ListEntry =3D Cache->Cursor;
>   612        PXENBUS_CACHE_SLAB  Slab;
>   613
>   614        Slab =3D CONTAINING_RECORD(ListEntry, XENBUS_CACHE_SLAB,
> ListEntry);
>   615
>   616        Object =3D CacheGetObjectFromSlab(Slab);
>   617        ASSERT(Object !=3D NULL);
>   618
>   619        if (CacheMaskCount(Slab->Allocated) =3D=3D
> CacheMaskSize(Slab->Allocated))
>   620            Cache->Cursor =3D Slab->ListEntry.Flink;
>   621    }
>
> So if the cursor slab is full it is walked forward, so if there are no
> more slabs it will end up pointing at Cache->SlabList, so the ASSERT you
> are removing *should* be valid. If you are hitting it then something
> else is wrong.
>
>    Paul
>
> > Signed-off-by: Owen Smith <owen.smith@citrix.com>
> > ---
> >   src/xenbus/cache.c | 17 +++++++----------
> >   1 file changed, 7 insertions(+), 10 deletions(-)
> >
> > diff --git a/src/xenbus/cache.c b/src/xenbus/cache.c
> > index 07dcd56..e2aa137 100644
> > --- a/src/xenbus/cache.c
> > +++ b/src/xenbus/cache.c
> > @@ -471,14 +471,11 @@ CacheDestroySlab(
> >       ASSERT3U(Cache->Count, >=3D, CacheMaskSize(Slab->Allocated));
> >       Cache->Count -=3D CacheMaskSize(Slab->Allocated);
> >
> > -    //
> > -    // The only reason the cursor should be pointing at this slab is
> > -    // if it is the only one in the list.
> > -    //
> >       if (Cache->Cursor =3D=3D &Slab->ListEntry)
> > -        Cache->Cursor =3D &Cache->SlabList;
> > +        Cache->Cursor =3D Slab->ListEntry.Blink;
> >
> > -    RemoveEntryList(&Slab->ListEntry);
> > +    if (RemoveEntryList(&Slab->ListEntry))
> > +        Cache->Cursor =3D &Cache->SlabList;
> >
> >       ASSERT(Cache->Cursor !=3D &Cache->SlabList ||
> >              IsListEmpty(&Cache->SlabList));
> > @@ -614,17 +611,17 @@ again:
> >           Slab =3D CONTAINING_RECORD(ListEntry, XENBUS_CACHE_SLAB,
> ListEntry);
> >
> >           Object =3D CacheGetObjectFromSlab(Slab);
> > -        ASSERT(Object !=3D NULL);
> >
> > -        if (CacheMaskCount(Slab->Allocated) =3D=3D
> CacheMaskSize(Slab->Allocated))
> > +        if (CacheMaskCount(Slab->Allocated) =3D=3D
> CacheMaskSize(Slab->Allocated)) {
> >               Cache->Cursor =3D Slab->ListEntry.Flink;
> > +            if (Object =3D=3D NULL)
> > +                goto again;
> > +        }
> >       }
> >
> >       if (Object =3D=3D NULL) {
> >           NTSTATUS status;
> >
> > -        ASSERT3P(Cache->Cursor, =3D=3D, &Cache->SlabList);
> > -
> >           status =3D CacheCreateSlab(Cache);
> >           if (NT_SUCCESS(status)) {
> >               ASSERT(Cache->Cursor !=3D &Cache->SlabList);
>
>
>

--0000000000004b52b905fd88c9fa
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div class=3D"gmail_default" style=3D"font-family:monospac=
e">Then it looks like a minor reordering is needed. The check for CacheMask=
Count(Slab) =3D=3D CacheMaskSize(Slab) should be made before the attempt to=
 call CacheGetObjectFromSlab(Slab), as if Slab is full, CacheGetObjectFromS=
lab will fail and return NULL, triggering the ASSERT</div><div class=3D"gma=
il_default" style=3D"font-family:monospace">i.e.</div><div class=3D"gmail_d=
efault" style=3D"font-family:monospace">if (Cache-&gt;Cursor !=3D &amp;Cach=
e-&gt;SlabList) {<br>=C2=A0 PLIST_ENTRY ListEntry =3D Cache-&gt;Cursor;</di=
v><div class=3D"gmail_default" style=3D"font-family:monospace">=C2=A0 PXENB=
US_CACHE_SLAB Slab;</div><div class=3D"gmail_default" style=3D"font-family:=
monospace">=C2=A0 Slab =3D CONTAINING_RECORD(ListEntry, XENBUS_CACHE_SLAB, =
ListEntry);</div><div class=3D"gmail_default" style=3D"font-family:monospac=
e">=C2=A0 if (CacheMaskCount(Slab-&gt;Allocated) =3D=3D CacheMaskSize(Slab-=
&gt;Allocated)) {</div><div class=3D"gmail_default" style=3D"font-family:mo=
nospace">=C2=A0 =C2=A0 // this slab is full, try next slab</div><div class=
=3D"gmail_default" style=3D"font-family:monospace">=C2=A0 =C2=A0 Cache-&gt;=
Cursor =3D Slab-&gt;ListEntry.Flink;</div><div class=3D"gmail_default" styl=
e=3D"font-family:monospace">=C2=A0 =C2=A0 goto again;</div><div class=3D"gm=
ail_default" style=3D"font-family:monospace">=C2=A0 }</div><div class=3D"gm=
ail_default" style=3D"font-family:monospace">=C2=A0 // there are=C2=A0free =
objects in this slab, this should always work</div><div class=3D"gmail_defa=
ult" style=3D"font-family:monospace">=C2=A0 Object =3D CacheGetObjectFromSl=
ab(Slab);</div><div class=3D"gmail_default" style=3D"font-family:monospace"=
>=C2=A0 ASSERT(Object !=3D NULL);</div><div class=3D"gmail_default" style=
=3D"font-family:monospace">}</div><div class=3D"gmail_default" style=3D"fon=
t-family:monospace"><br></div><div class=3D"gmail_default" style=3D"font-fa=
mily:monospace">Owen</div><div class=3D"gmail_default" style=3D"font-family=
:monospace"><br></div></div><br><div class=3D"gmail_quote"><div dir=3D"ltr"=
 class=3D"gmail_attr">On Wed, Jun 7, 2023 at 10:51=E2=80=AFAM Durrant, Paul=
 &lt;<a href=3D"mailto:xadimgnik@gmail.com">xadimgnik@gmail.com</a>&gt; wro=
te:<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px =
0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">[CAUTION - E=
XTERNAL EMAIL] DO NOT reply, click links, or open attachments unless you ha=
ve verified the sender and know the content is safe.<br>
<br>
On 25/05/2023 16:14, Owen Smith wrote:<br>
&gt; From: Owen Smith &lt;<a href=3D"mailto:owen.smith@citrix.com" target=
=3D"_blank">owen.smith@citrix.com</a>&gt;<br>
&gt; <br>
&gt; When all Objects in the current Slab have been freed, its possible<br>
&gt; that the current Slab will be destroyed. Its not guaranteed that the<b=
r>
&gt; current Slab is the only Slab in the SlabList, as objects can be retur=
ned<br>
&gt; in a different order than allocated, especially after objects have bee=
n<br>
&gt; reused.<br>
&gt; <br>
&gt; Walk the Cursor back to the previous Slab (or SlabList header)<br>
<br>
Yes, this looks like something that was missed when CacheSpill() was <br>
added. I&#39;m happy to take this part.<br>
<br>
&gt; and allow<br>
&gt; for the possibility that the current Slab may be full during the Cache=
Get<br>
&gt; call (which will require creation of another Slab)<br>
&gt; <br>
<br>
There&#39;s an ASSERT to check that the cursor slab is not full so I don&#3=
9;t <br>
think your modification to CacheGet() is correct.<br>
The code is:<br>
<br>
=C2=A0 610=C2=A0 =C2=A0 if (Cache-&gt;Cursor !=3D &amp;Cache-&gt;SlabList) =
{<br>
=C2=A0 611=C2=A0 =C2=A0 =C2=A0 =C2=A0 PLIST_ENTRY ListEntry =3D Cache-&gt;C=
ursor;<br>
=C2=A0 612=C2=A0 =C2=A0 =C2=A0 =C2=A0 PXENBUS_CACHE_SLAB=C2=A0 Slab;<br>
=C2=A0 613<br>
=C2=A0 614=C2=A0 =C2=A0 =C2=A0 =C2=A0 Slab =3D CONTAINING_RECORD(ListEntry,=
 XENBUS_CACHE_SLAB, <br>
ListEntry);<br>
=C2=A0 615<br>
=C2=A0 616=C2=A0 =C2=A0 =C2=A0 =C2=A0 Object =3D CacheGetObjectFromSlab(Sla=
b);<br>
=C2=A0 617=C2=A0 =C2=A0 =C2=A0 =C2=A0 ASSERT(Object !=3D NULL);<br>
=C2=A0 618<br>
=C2=A0 619=C2=A0 =C2=A0 =C2=A0 =C2=A0 if (CacheMaskCount(Slab-&gt;Allocated=
) =3D=3D <br>
CacheMaskSize(Slab-&gt;Allocated))<br>
=C2=A0 620=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 Cache-&gt;Cursor =3D Sl=
ab-&gt;ListEntry.Flink;<br>
=C2=A0 621=C2=A0 =C2=A0 }<br>
<br>
So if the cursor slab is full it is walked forward, so if there are no <br>
more slabs it will end up pointing at Cache-&gt;SlabList, so the ASSERT you=
 <br>
are removing *should* be valid. If you are hitting it then something <br>
else is wrong.<br>
<br>
=C2=A0 =C2=A0Paul<br>
<br>
&gt; Signed-off-by: Owen Smith &lt;<a href=3D"mailto:owen.smith@citrix.com"=
 target=3D"_blank">owen.smith@citrix.com</a>&gt;<br>
&gt; ---<br>
&gt;=C2=A0 =C2=A0src/xenbus/cache.c | 17 +++++++----------<br>
&gt;=C2=A0 =C2=A01 file changed, 7 insertions(+), 10 deletions(-)<br>
&gt; <br>
&gt; diff --git a/src/xenbus/cache.c b/src/xenbus/cache.c<br>
&gt; index 07dcd56..e2aa137 100644<br>
&gt; --- a/src/xenbus/cache.c<br>
&gt; +++ b/src/xenbus/cache.c<br>
&gt; @@ -471,14 +471,11 @@ CacheDestroySlab(<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0ASSERT3U(Cache-&gt;Count, &gt;=3D, CacheMask=
Size(Slab-&gt;Allocated));<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0Cache-&gt;Count -=3D CacheMaskSize(Slab-&gt;=
Allocated);<br>
&gt;=C2=A0 =C2=A0<br>
&gt; -=C2=A0 =C2=A0 //<br>
&gt; -=C2=A0 =C2=A0 // The only reason the cursor should be pointing at thi=
s slab is<br>
&gt; -=C2=A0 =C2=A0 // if it is the only one in the list.<br>
&gt; -=C2=A0 =C2=A0 //<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0if (Cache-&gt;Cursor =3D=3D &amp;Slab-&gt;Li=
stEntry)<br>
&gt; -=C2=A0 =C2=A0 =C2=A0 =C2=A0 Cache-&gt;Cursor =3D &amp;Cache-&gt;SlabL=
ist;<br>
&gt; +=C2=A0 =C2=A0 =C2=A0 =C2=A0 Cache-&gt;Cursor =3D Slab-&gt;ListEntry.B=
link;<br>
&gt;=C2=A0 =C2=A0<br>
&gt; -=C2=A0 =C2=A0 RemoveEntryList(&amp;Slab-&gt;ListEntry);<br>
&gt; +=C2=A0 =C2=A0 if (RemoveEntryList(&amp;Slab-&gt;ListEntry))<br>
&gt; +=C2=A0 =C2=A0 =C2=A0 =C2=A0 Cache-&gt;Cursor =3D &amp;Cache-&gt;SlabL=
ist;<br>
&gt;=C2=A0 =C2=A0<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0ASSERT(Cache-&gt;Cursor !=3D &amp;Cache-&gt;=
SlabList ||<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 IsListEmpty(&amp;Cache=
-&gt;SlabList));<br>
&gt; @@ -614,17 +611,17 @@ again:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Slab =3D CONTAINING_RECORD(Lis=
tEntry, XENBUS_CACHE_SLAB, ListEntry);<br>
&gt;=C2=A0 =C2=A0<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Object =3D CacheGetObjectFromS=
lab(Slab);<br>
&gt; -=C2=A0 =C2=A0 =C2=A0 =C2=A0 ASSERT(Object !=3D NULL);<br>
&gt;=C2=A0 =C2=A0<br>
&gt; -=C2=A0 =C2=A0 =C2=A0 =C2=A0 if (CacheMaskCount(Slab-&gt;Allocated) =
=3D=3D CacheMaskSize(Slab-&gt;Allocated))<br>
&gt; +=C2=A0 =C2=A0 =C2=A0 =C2=A0 if (CacheMaskCount(Slab-&gt;Allocated) =
=3D=3D CacheMaskSize(Slab-&gt;Allocated)) {<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Cache-&gt;Cursor=
 =3D Slab-&gt;ListEntry.Flink;<br>
&gt; +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 if (Object =3D=3D NULL)<br>
&gt; +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 goto again;<b=
r>
&gt; +=C2=A0 =C2=A0 =C2=A0 =C2=A0 }<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0}<br>
&gt;=C2=A0 =C2=A0<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0if (Object =3D=3D NULL) {<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0NTSTATUS status;<br>
&gt;=C2=A0 =C2=A0<br>
&gt; -=C2=A0 =C2=A0 =C2=A0 =C2=A0 ASSERT3P(Cache-&gt;Cursor, =3D=3D, &amp;C=
ache-&gt;SlabList);<br>
&gt; -<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0status =3D CacheCreateSlab(Cac=
he);<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0if (NT_SUCCESS(status)) {<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0ASSERT(Cache-&gt=
;Cursor !=3D &amp;Cache-&gt;SlabList);<br>
<br>
<br>
</blockquote></div>

--0000000000004b52b905fd88c9fa--


From win-pv-devel-bounces@lists.xenproject.org Wed Jun 07 12:02:56 2023
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 07 Jun 2023 12:02:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.544727.850690 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1q6rsO-0001he-3F; Wed, 07 Jun 2023 12:02:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 544727.850690; Wed, 07 Jun 2023 12:02:56 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1q6rsO-0001hX-0Z; Wed, 07 Jun 2023 12:02:56 +0000
Received: by outflank-mailman (input) for mailman id 544727;
 Wed, 07 Jun 2023 12:02:55 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=yVXw=B3=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1q6rsN-0001hR-Hb
 for win-pv-devel@lists.xenproject.org; Wed, 07 Jun 2023 12:02:55 +0000
Received: from mail-lf1-x129.google.com (mail-lf1-x129.google.com
 [2a00:1450:4864:20::129])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 3bd4e83e-052b-11ee-b232-6b7b168915f2;
 Wed, 07 Jun 2023 14:02:54 +0200 (CEST)
Received: by mail-lf1-x129.google.com with SMTP id
 2adb3069b0e04-4f62b512fe2so4220237e87.1
 for <win-pv-devel@lists.xenproject.org>; Wed, 07 Jun 2023 05:02:54 -0700 (PDT)
Received: from [192.168.13.162] (54-240-197-231.amazon.com. [54.240.197.231])
 by smtp.gmail.com with ESMTPSA id
 24-20020a05600c021800b003f7ea771b5dsm1960914wmi.1.2023.06.07.05.02.52
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 07 Jun 2023 05:02:52 -0700 (PDT)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3bd4e83e-052b-11ee-b232-6b7b168915f2
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1686139373; x=1688731373;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=aMBX1zPtt/+oV4E1AwGyCpFJWyo0W7bBEfYXw+CXJJA=;
        b=bGuWExaEHYjekp7r2v1bBpbn4FzUU5csJFLKZfF4Pmc2vw2rO6TzCau6LxsnoGDO8M
         5QA+h5ZHZVfN3+JgZcyNrIpSyCLLH1uiQ41ptcAWShXsxNRPcedGOh/m2sCrWRl29KrQ
         CKSS0XR3Kon27eK07Xg2bJmOgDR0Tg9/bhCBmfQHE0+0IFzrTqiaczT0XjOu7BOyMPBc
         RlzDfOFz2KUH4szHBGhNogBpWNh4Ed8qCaO06EMWC2GhBvAzFZGu3JadVaL/KSXXm2vF
         6xrNB4H6/Z/uU7xZjhJFS4lpTuk5dlBhDLBlHK1dKb6nimuFhkqXiQuZkXa8CNKBxtNm
         H6fA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1686139373; x=1688731373;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=aMBX1zPtt/+oV4E1AwGyCpFJWyo0W7bBEfYXw+CXJJA=;
        b=NXkLA2GD/wGEa8bG4XObKny5n1K4lncxVqm2hQfujpMceF8SV4e7n5Fzx8jGn71Y2E
         VWoqh1LMHluOoI+iQo/JD9sVyowfWpVt3Y6a7SG+eur2ebE5r9nZf7QpQ5G8kBPWXDFe
         kDCi/PxYLNHALY+vra0iuWxC56kbS0gt60U3Se6keq9LSygULhvETGG11AiSgNs8zzpr
         BhsbELoCcj/APc/zRFR+mSn2wlnms7tvUshKe3CVSPz7B7iminVJ0A7SI1m3/L8aSwiM
         R7NDuJ3j3rlZccCXBH4qDfHBk15SZ6XndzAgEeSWArv8m+b9MuXMyNrq0CZqTRxKoZBo
         VZ4A==
X-Gm-Message-State: AC+VfDwZQ5SqhimLFF2nY4a7OLHqK466UH3n3d2BUd2ZZdfea/5cPZjE
	lExcRCYFSphmfREPfl39VJg=
X-Google-Smtp-Source: ACHHUZ5hns2E/YSHmpzPHnRSSzUm20hwYiJldhfIK1GgiXKMHJnu9BE/snJwOL6j4Di5Ql1WbHjFSw==
X-Received: by 2002:ac2:4e71:0:b0:4f3:b883:fc4e with SMTP id y17-20020ac24e71000000b004f3b883fc4emr2139731lfs.43.1686139373264;
        Wed, 07 Jun 2023 05:02:53 -0700 (PDT)
Message-ID: <a32af5d2-e613-afce-c654-a4ab760a29d7@gmail.com>
Date: Wed, 7 Jun 2023 13:02:51 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.11.2
Reply-To: paul@xen.org
Subject: Re: [PATCH 3/3] Allow removal of current Slab
Content-Language: en-US
To: Owen Smith <owen.smith@cloud.com>, paul@xen.org
Cc: win-pv-devel@lists.xenproject.org
References: <20230525151411.826-1-owen.smith@cloud.com>
 <20230525151411.826-3-owen.smith@cloud.com>
 <2cef158d-ff39-50ed-df85-743a2544c28b@gmail.com>
 <CAC_UY8-UBsc5zzPnbAkArsbaOuXkqkD5LngxiDEAQkP1sJ47CQ@mail.gmail.com>
From: "Durrant, Paul" <xadimgnik@gmail.com>
In-Reply-To: <CAC_UY8-UBsc5zzPnbAkArsbaOuXkqkD5LngxiDEAQkP1sJ47CQ@mail.gmail.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 07/06/2023 12:53, Owen Smith wrote:
> Then it looks like a minor reordering is needed. The check for 
> CacheMaskCount(Slab) == CacheMaskSize(Slab) should be made before the 
> attempt to call CacheGetObjectFromSlab(Slab), as if Slab is full, 
> CacheGetObjectFromSlab will fail and return NULL, triggering the ASSERT
> i.e.
> if (Cache->Cursor != &Cache->SlabList) {
>    PLIST_ENTRY ListEntry = Cache->Cursor;
>    PXENBUS_CACHE_SLAB Slab;
>    Slab = CONTAINING_RECORD(ListEntry, XENBUS_CACHE_SLAB, ListEntry);
>    if (CacheMaskCount(Slab->Allocated) == CacheMaskSize(Slab->Allocated)) {
>      // this slab is full, try next slab
>      Cache->Cursor = Slab->ListEntry.Flink;
>      goto again;
>    }
>    // there are free objects in this slab, this should always work
>    Object = CacheGetObjectFromSlab(Slab);
>    ASSERT(Object != NULL);
> }
> 
[snip]

The question is why can we end up with Cache->Cursor != 
&Cache->SlabList, but yet the slab is full? This is not a valid state 
for the cache to be in.

   Paul




From win-pv-devel-bounces@lists.xenproject.org Wed Jun 07 20:37:55 2023
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 07 Jun 2023 20:37:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.545003.851170 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1q6zui-0006Ck-U4; Wed, 07 Jun 2023 20:37:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 545003.851170; Wed, 07 Jun 2023 20:37:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1q6zui-0006Cd-RS; Wed, 07 Jun 2023 20:37:52 +0000
Received: by outflank-mailman (input) for mailman id 545003;
 Wed, 07 Jun 2023 20:37:52 +0000
Received: from winpvdrvbuild.xenproject.org ([162.242.160.44])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <paul.durrant@xenproject.org>) id 1q6zui-0006CX-7q
 for win-pv-devel@lists.xenproject.org; Wed, 07 Jun 2023 20:37:52 +0000
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
Date: Wed, 7 Jun 2023 20:37:41 +0000 (UTC)
From: paul.durrant@xenproject.org
To: win-pv-devel@lists.xenproject.org
Message-ID: <13336623.19.1686170262888.JavaMail.WINPVDRVBUILD$@winpvdrvbuild>
Subject: XENVIF-master - Build #208 - Successful
MIME-Version: 1.0
Content-Type: multipart/mixed; 
	boundary="----=_Part_18_2075449.1686170261247"
X-Jenkins-Job: XENVIF-master
X-Jenkins-Result: SUCCESS


------=_Part_18_2075449.1686170261247
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

The build system has completed build #208.

Check console output at https://winpvdrvbuild.xenproject.org:8080/job/XENVIF-master/208/console to view the results.
------=_Part_18_2075449.1686170261247--


From win-pv-devel-bounces@lists.xenproject.org Thu Jun 08 07:10:26 2023
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 08 Jun 2023 07:10:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.545140.851412 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1q79mr-0000RI-1W; Thu, 08 Jun 2023 07:10:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 545140.851412; Thu, 08 Jun 2023 07:10:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1q79mq-0000R9-UZ; Thu, 08 Jun 2023 07:10:24 +0000
Received: by outflank-mailman (input) for mailman id 545140;
 Thu, 08 Jun 2023 07:10:24 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=t4JT=B4=tibco.com=osmith@srs-se1.protection.inumbo.net>)
 id 1q79mq-0000R3-Ce
 for win-pv-devel@lists.xenproject.org; Thu, 08 Jun 2023 07:10:24 +0000
Received: from mail-lj1-x231.google.com (mail-lj1-x231.google.com
 [2a00:1450:4864:20::231])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 886ca1b1-05cb-11ee-8611-37d641c3527e;
 Thu, 08 Jun 2023 09:10:22 +0200 (CEST)
Received: by mail-lj1-x231.google.com with SMTP id
 38308e7fff4ca-2b1af9ef7a9so2037291fa.1
 for <win-pv-devel@lists.xenproject.org>; Thu, 08 Jun 2023 00:10:22 -0700 (PDT)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 886ca1b1-05cb-11ee-8611-37d641c3527e
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1686208221; x=1688800221;
        h=cc:to:subject:message-id:date:from:in-reply-to:references
         :mime-version:from:to:cc:subject:date:message-id:reply-to;
        bh=2u7979plkUSdq+kRtoCL3G8tj7itG2Jn4iuw/51AjxM=;
        b=H9ZfPYdd7o72oiM8M8oeLdY85rMdg3rsdPa/Sic1ON9KNsAe8mQq7WmJEAX8nZeanv
         yOF6TGtcTY/mGIvMvBjkQSL1jOLsbl1FlAEzSSXL/ieuAE/Z5xFg4PEhME8E7PlnK+VR
         ADhz29Mg4JrxDAi1uoErHWAxq9FOsUWHMsTcY=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1686208221; x=1688800221;
        h=cc:to:subject:message-id:date:from:in-reply-to:references
         :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=2u7979plkUSdq+kRtoCL3G8tj7itG2Jn4iuw/51AjxM=;
        b=V1yWvlzfTTXc3tldkxn2mtMVJEQ6mpV6FIiFoJ8rtwLWrr97zRKkSW7Tzb7YwBogTh
         s0Nc1ITUHwc1ggj25FdVGjfWzVVGKuOGg6MtFdgp80lhGc3Nruq4/gYXcBUlL/v1+Ta4
         +IUZ4gOyooyA9i1wXUP3VsOZe9uL16rcR2+PXryE44tV8sGbRWqmbhF5AC6HTUEI4Bvr
         GlmuqrIc0Cns2ZmtJHU/ex+R/i+6KPmPWJVjvxo8E4vakWxF5VCLZpVWAYOohq00rtZ3
         gLQ7U9DZmBdR4Sbp0XDSYIcwItEIu4lufHoSaQZm3uTn3HLYj4q3iYCxWXdCGHTiPfSn
         MKJA==
X-Gm-Message-State: AC+VfDyA5Jw1781EQciaAUYqaNTt/3KGlN40uI8A0VWqqqUjl/YkJ+yJ
	X1A1vZQfXF72qzot9/YUoCE6h54ZOktnce+tt3lpN+GcitH4y8flAA==
X-Google-Smtp-Source: ACHHUZ786KVudNMy6sNVrHwdaO1ZKBIyU4RQ1Jz4zIXRHS6mpxS40jxFkroOk12KX81q0oq55Tt5cFpin/RpWTXdgzY=
X-Received: by 2002:a2e:7c01:0:b0:2b1:c5c5:192c with SMTP id
 x1-20020a2e7c01000000b002b1c5c5192cmr2941962ljc.44.1686208221607; Thu, 08 Jun
 2023 00:10:21 -0700 (PDT)
MIME-Version: 1.0
References: <20230525151411.826-1-owen.smith@cloud.com> <20230525151411.826-3-owen.smith@cloud.com>
 <2cef158d-ff39-50ed-df85-743a2544c28b@gmail.com> <CAC_UY8-UBsc5zzPnbAkArsbaOuXkqkD5LngxiDEAQkP1sJ47CQ@mail.gmail.com>
 <a32af5d2-e613-afce-c654-a4ab760a29d7@gmail.com>
In-Reply-To: <a32af5d2-e613-afce-c654-a4ab760a29d7@gmail.com>
From: Owen Smith <owen.smith@cloud.com>
Date: Thu, 8 Jun 2023 08:10:09 +0100
Message-ID: <CAC_UY89E4jVHPWNH3M-5a79tS0Y3XT5vprpf14wm0s+7wg0wFw@mail.gmail.com>
Subject: Re: [PATCH 3/3] Allow removal of current Slab
To: paul@xen.org
Cc: win-pv-devel@lists.xenproject.org
Content-Type: multipart/alternative; boundary="000000000000110de005fd98f269"

--000000000000110de005fd98f269
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

     if (Cache->Cursor =3D=3D &Slab->ListEntry)
-        Cache->Cursor =3D &Cache->SlabList;
+        Cache->Cursor =3D Slab->ListEntry.Blink;

Looks like this blind walk back could end up with Cursor pointing to a full
Slab.

Thinking about it, a more elegant solution could be to not remove the empty
Slab if its the current slab (removes the need to destroy an empty slab,
probably shortly followed by adding a new Slab when the nex CacheGet is
called). The teardown case where CacheSpill(Cache, 0), on the CacheCreate
fail path and CacheDestroy should NULL the Cursor, effectively ignoring the
Cursor =3D=3D &SlabList check

Let me try a patch that implements this method

Owen

On Wed, Jun 7, 2023 at 1:02=E2=80=AFPM Durrant, Paul <xadimgnik@gmail.com> =
wrote:

> On 07/06/2023 12:53, Owen Smith wrote:
> > Then it looks like a minor reordering is needed. The check for
> > CacheMaskCount(Slab) =3D=3D CacheMaskSize(Slab) should be made before t=
he
> > attempt to call CacheGetObjectFromSlab(Slab), as if Slab is full,
> > CacheGetObjectFromSlab will fail and return NULL, triggering the ASSERT
> > i.e.
> > if (Cache->Cursor !=3D &Cache->SlabList) {
> >    PLIST_ENTRY ListEntry =3D Cache->Cursor;
> >    PXENBUS_CACHE_SLAB Slab;
> >    Slab =3D CONTAINING_RECORD(ListEntry, XENBUS_CACHE_SLAB, ListEntry);
> >    if (CacheMaskCount(Slab->Allocated) =3D=3D
> CacheMaskSize(Slab->Allocated)) {
> >      // this slab is full, try next slab
> >      Cache->Cursor =3D Slab->ListEntry.Flink;
> >      goto again;
> >    }
> >    // there are free objects in this slab, this should always work
> >    Object =3D CacheGetObjectFromSlab(Slab);
> >    ASSERT(Object !=3D NULL);
> > }
> >
> [snip]
>
> The question is why can we end up with Cache->Cursor !=3D
> &Cache->SlabList, but yet the slab is full? This is not a valid state
> for the cache to be in.
>
>    Paul
>
>
>

--000000000000110de005fd98f269
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div class=3D"gmail_default" style=3D"font-family:monospac=
e"><span style=3D"font-family:Arial,Helvetica,sans-serif">=C2=A0 =C2=A0 =C2=
=A0if (Cache-&gt;Cursor =3D=3D &amp;Slab-&gt;ListEntry)</span><br style=3D"=
font-family:Arial,Helvetica,sans-serif"><span style=3D"font-family:Arial,He=
lvetica,sans-serif">-=C2=A0 =C2=A0 =C2=A0 =C2=A0 Cache-&gt;Cursor =3D &amp;=
Cache-&gt;SlabList;</span><br style=3D"font-family:Arial,Helvetica,sans-ser=
if"><span style=3D"font-family:Arial,Helvetica,sans-serif">+=C2=A0 =C2=A0 =
=C2=A0 =C2=A0 Cache-&gt;Cursor =3D Slab-&gt;ListEntry.Blink;</span><br></di=
v><div class=3D"gmail_default" style=3D"font-family:monospace"><span style=
=3D"font-family:Arial,Helvetica,sans-serif"><br></span></div><div class=3D"=
gmail_default" style=3D"font-family:monospace"><span style=3D"font-family:A=
rial,Helvetica,sans-serif">Looks like this blind walk back could end up wit=
h Cursor pointing to a full Slab.</span></div><div class=3D"gmail_default" =
style=3D"font-family:monospace"><span style=3D"font-family:Arial,Helvetica,=
sans-serif"><br></span></div><div class=3D"gmail_default" style=3D"font-fam=
ily:monospace">Thinking about it, a more elegant solution could be to not r=
emove the empty Slab if its the current slab (removes the need to destroy a=
n empty slab, probably shortly followed by adding a new Slab when the nex C=
acheGet is called). The teardown case where CacheSpill(Cache, 0), on the Ca=
cheCreate fail path and CacheDestroy should NULL the Cursor, effectively ig=
noring the Cursor =3D=3D &amp;SlabList check</div><div class=3D"gmail_defau=
lt" style=3D"font-family:monospace"><br></div><div class=3D"gmail_default" =
style=3D"font-family:monospace">Let me try a patch that implements this met=
hod</div><div class=3D"gmail_default" style=3D"font-family:monospace"><br><=
/div><div class=3D"gmail_default" style=3D"font-family:monospace">Owen</div=
></div><br><div class=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr"=
>On Wed, Jun 7, 2023 at 1:02=E2=80=AFPM Durrant, Paul &lt;<a href=3D"mailto=
:xadimgnik@gmail.com">xadimgnik@gmail.com</a>&gt; wrote:<br></div><blockquo=
te class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px =
solid rgb(204,204,204);padding-left:1ex">On 07/06/2023 12:53, Owen Smith wr=
ote:<br>
&gt; Then it looks like a minor reordering is needed. The check for <br>
&gt; CacheMaskCount(Slab) =3D=3D CacheMaskSize(Slab) should be made before =
the <br>
&gt; attempt to call CacheGetObjectFromSlab(Slab), as if Slab is full, <br>
&gt; CacheGetObjectFromSlab will fail and return NULL, triggering the ASSER=
T<br>
&gt; i.e.<br>
&gt; if (Cache-&gt;Cursor !=3D &amp;Cache-&gt;SlabList) {<br>
&gt;=C2=A0 =C2=A0 PLIST_ENTRY ListEntry =3D Cache-&gt;Cursor;<br>
&gt;=C2=A0 =C2=A0 PXENBUS_CACHE_SLAB Slab;<br>
&gt;=C2=A0 =C2=A0 Slab =3D CONTAINING_RECORD(ListEntry, XENBUS_CACHE_SLAB, =
ListEntry);<br>
&gt;=C2=A0 =C2=A0 if (CacheMaskCount(Slab-&gt;Allocated) =3D=3D CacheMaskSi=
ze(Slab-&gt;Allocated)) {<br>
&gt;=C2=A0 =C2=A0 =C2=A0 // this slab is full, try next slab<br>
&gt;=C2=A0 =C2=A0 =C2=A0 Cache-&gt;Cursor =3D Slab-&gt;ListEntry.Flink;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 goto again;<br>
&gt;=C2=A0 =C2=A0 }<br>
&gt;=C2=A0 =C2=A0 // there are=C2=A0free objects in this slab, this should =
always work<br>
&gt;=C2=A0 =C2=A0 Object =3D CacheGetObjectFromSlab(Slab);<br>
&gt;=C2=A0 =C2=A0 ASSERT(Object !=3D NULL);<br>
&gt; }<br>
&gt; <br>
[snip]<br>
<br>
The question is why can we end up with Cache-&gt;Cursor !=3D <br>
&amp;Cache-&gt;SlabList, but yet the slab is full? This is not a valid stat=
e <br>
for the cache to be in.<br>
<br>
=C2=A0 =C2=A0Paul<br>
<br>
<br>
</blockquote></div>

--000000000000110de005fd98f269--


From win-pv-devel-bounces@lists.xenproject.org Fri Jun 09 10:24:41 2023
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Fri, 09 Jun 2023 10:24:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.545850.852470 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1q7ZIN-0003bm-UY; Fri, 09 Jun 2023 10:24:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 545850.852470; Fri, 09 Jun 2023 10:24:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1q7ZIN-0003bf-Rv; Fri, 09 Jun 2023 10:24:39 +0000
Received: by outflank-mailman (input) for mailman id 545850;
 Fri, 09 Jun 2023 10:24:39 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=dq1e=B5=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1q7ZIN-0003bZ-FJ
 for win-pv-devel@lists.xenproject.org; Fri, 09 Jun 2023 10:24:39 +0000
Received: from mail-wm1-x331.google.com (mail-wm1-x331.google.com
 [2a00:1450:4864:20::331])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id d4e8ae08-06af-11ee-8611-37d641c3527e;
 Fri, 09 Jun 2023 12:24:36 +0200 (CEST)
Received: by mail-wm1-x331.google.com with SMTP id
 5b1f17b1804b1-3f6d7abe9a4so12095645e9.2
 for <win-pv-devel@lists.xenproject.org>; Fri, 09 Jun 2023 03:24:36 -0700 (PDT)
Received: from [10.95.146.251] (54-240-197-231.amazon.com. [54.240.197.231])
 by smtp.gmail.com with ESMTPSA id
 c6-20020adffb46000000b0030ae7bd1737sm4043128wrs.45.2023.06.09.03.24.34
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 09 Jun 2023 03:24:35 -0700 (PDT)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d4e8ae08-06af-11ee-8611-37d641c3527e
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1686306276; x=1688898276;
        h=content-transfer-encoding:in-reply-to:organization:content-language
         :references:cc:to:subject:reply-to:user-agent:mime-version:date
         :message-id:from:from:to:cc:subject:date:message-id:reply-to;
        bh=zH518qqt/vNqTpfhJCrGHFDhtBDylXHe7mS2uP1y50U=;
        b=s0B19AO7QzqxDcQfMT7YXVAWdvetca3EQoLOevJftYQPrhwz+g7bDlbVIREgwoIZfH
         rOzzFNWvaHFvP9tbnblDlTh4wd2naPndjVvzlVUlNv1Fl3DfzfGLRjSa3IzZf9Ao4aRc
         C+rBNBZDi5Pp38r9VSRVUGQEsMVpUW4vzHU+fIr21dBxXdltMWn0GaQcCUoWmxlfS8MP
         4o6SzoGcrg4Xz/G5Q9QlTNFf5/G9W9RRos7P5ojBtmT+0OglrgFWhUDYUB8gfhG1+osA
         r4JqJ7yIPhmdmJo+1O1E6Xb7hwAC5FIQneuUktKuQNZfZ4Ew5PU4Y44C6OyaR7+AhbrK
         12eg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1686306276; x=1688898276;
        h=content-transfer-encoding:in-reply-to:organization:content-language
         :references:cc:to:subject:reply-to:user-agent:mime-version:date
         :message-id:from:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=zH518qqt/vNqTpfhJCrGHFDhtBDylXHe7mS2uP1y50U=;
        b=ctLC/SJq/jzkzUP54XBKlVIEqaKk+2AxztTkvdxPKbL1gYEdbimTyqRcgfNsoTPfOZ
         3GktS3r3Qz/9/afGdFMXG5isQ4pXQ6SWQBM1M+covoTbFTb+qF/j0IlkMocbWRU24qyd
         tgzyP0GC5r6Lo9wDADY4/E7tGalYEwn+IjVbE3WJ51xjgLHiIIuR70ve/IN4pzxIQ8aN
         viKiKYcDoDP8xr1Zz/jie0qAJLC+qWhEr5gnFfjaj7Vmoe6zwEwmilIJ++Kq9uD+gmNL
         noVkgqyNrWa2E54eaGg2BLtc+Ak0xsfIYlbrMfEKMEB8Qdl32pToRqZxtSSHXwMeKQvq
         49QQ==
X-Gm-Message-State: AC+VfDwWZ6F+aN4hgwuCPOQo0etpnQ4eLqL7NJhip1zkq0+B/TwksdFN
	ZAn8clvG+N0ROxzawywYGw0=
X-Google-Smtp-Source: ACHHUZ4W5WF/MU9Icxc7BM9P7Ot/caxZsntRjQ4zxaV7AJkW/q4P+xfjQ7Zq1gQfb4s5TxQ37sanrg==
X-Received: by 2002:adf:dbc6:0:b0:30a:e65a:1b0d with SMTP id e6-20020adfdbc6000000b0030ae65a1b0dmr639780wrj.34.1686306275594;
        Fri, 09 Jun 2023 03:24:35 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Message-ID: <a9a500f2-8306-5115-d229-fbf4bda95dea@xen.org>
Date: Fri, 9 Jun 2023 11:24:34 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.10.1
Reply-To: paul@xen.org
Subject: Re: [PATCH 3/3] Allow removal of current Slab
To: Owen Smith <owen.smith@cloud.com>
Cc: win-pv-devel@lists.xenproject.org
References: <20230525151411.826-1-owen.smith@cloud.com>
 <20230525151411.826-3-owen.smith@cloud.com>
 <2cef158d-ff39-50ed-df85-743a2544c28b@gmail.com>
 <CAC_UY8-UBsc5zzPnbAkArsbaOuXkqkD5LngxiDEAQkP1sJ47CQ@mail.gmail.com>
 <a32af5d2-e613-afce-c654-a4ab760a29d7@gmail.com>
 <CAC_UY89E4jVHPWNH3M-5a79tS0Y3XT5vprpf14wm0s+7wg0wFw@mail.gmail.com>
Content-Language: en-US
Organization: Xen Project
In-Reply-To: <CAC_UY89E4jVHPWNH3M-5a79tS0Y3XT5vprpf14wm0s+7wg0wFw@mail.gmail.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 08/06/2023 08:10, Owen Smith wrote:
>       if (Cache->Cursor == &Slab->ListEntry)
> -        Cache->Cursor = &Cache->SlabList;
> +        Cache->Cursor = Slab->ListEntry.Blink;
> 
> Looks like this blind walk back could end up with Cursor pointing to a 
> full Slab.

Right. That makes sense.

> 
> Thinking about it, a more elegant solution could be to not remove the 
> empty Slab if its the current slab (removes the need to destroy an empty 
> slab, probably shortly followed by adding a new Slab when the nex 
> CacheGet is called). The teardown case where CacheSpill(Cache, 0), on 
> the CacheCreate fail path and CacheDestroy should NULL the Cursor, 
> effectively ignoring the Cursor == &SlabList check
> 
> Let me try a patch that implements this method
> 

Yes, that sounds much better.

   Paul


From win-pv-devel-bounces@lists.xenproject.org Fri Jun 09 13:52:29 2023
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Fri, 09 Jun 2023 13:52:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.546062.852666 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1q7cXS-0001OA-K4; Fri, 09 Jun 2023 13:52:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 546062.852666; Fri, 09 Jun 2023 13:52:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1q7cXS-0001O3-HK; Fri, 09 Jun 2023 13:52:26 +0000
Received: by outflank-mailman (input) for mailman id 546062;
 Fri, 09 Jun 2023 13:52:25 +0000
Received: from winpvdrvbuild.xenproject.org ([162.242.160.44])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <paul.durrant@xenproject.org>) id 1q7cXR-0001Nu-Dv
 for win-pv-devel@lists.xenproject.org; Fri, 09 Jun 2023 13:52:25 +0000
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
Date: Fri, 9 Jun 2023 13:52:11 +0000 (UTC)
From: paul.durrant@xenproject.org
To: win-pv-devel@lists.xenproject.org
Message-ID: <14414120.21.1686318732682.JavaMail.WINPVDRVBUILD$@winpvdrvbuild>
Subject: XENBUS-master - Build #244 - Successful
MIME-Version: 1.0
Content-Type: multipart/mixed; 
	boundary="----=_Part_20_10119003.1686318731886"
X-Jenkins-Job: XENBUS-master
X-Jenkins-Result: SUCCESS


------=_Part_20_10119003.1686318731886
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

The build system has completed build #244.

Check console output at https://winpvdrvbuild.xenproject.org:8080/job/XENBUS-master/244/console to view the results.
------=_Part_20_10119003.1686318731886--


From win-pv-devel-bounces@lists.xenproject.org Tue Jun 20 14:33:50 2023
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Tue, 20 Jun 2023 14:33:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.551907.861672 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1qBcQX-0008KU-Af; Tue, 20 Jun 2023 14:33:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 551907.861672; Tue, 20 Jun 2023 14:33:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1qBcQX-0008KN-88; Tue, 20 Jun 2023 14:33:49 +0000
Received: by outflank-mailman (input) for mailman id 551907;
 Tue, 20 Jun 2023 14:33:48 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=+o50=CI=tibco.com=osmith@srs-se1.protection.inumbo.net>)
 id 1qBcQW-0008KH-0H
 for win-pv-devel@lists.xenproject.org; Tue, 20 Jun 2023 14:33:48 +0000
Received: from mail-ej1-x62d.google.com (mail-ej1-x62d.google.com
 [2a00:1450:4864:20::62d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 76816d61-0f77-11ee-b234-6b7b168915f2;
 Tue, 20 Jun 2023 16:33:46 +0200 (CEST)
Received: by mail-ej1-x62d.google.com with SMTP id
 a640c23a62f3a-985b04c46caso714770866b.0
 for <win-pv-devel@lists.xenproject.org>; Tue, 20 Jun 2023 07:33:46 -0700 (PDT)
Received: from localhost.localdomain ([185.25.65.68])
 by smtp.gmail.com with ESMTPSA id
 p10-20020a170906a00a00b00987bc81506dsm1503855ejy.202.2023.06.20.07.33.44
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 20 Jun 2023 07:33:45 -0700 (PDT)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 76816d61-0f77-11ee-b234-6b7b168915f2
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1687271625; x=1689863625;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:from:to:cc:subject:date:message-id:reply-to;
        bh=4tK1K/vaccTCslMqoJskwo7aRRzXTCdgvlf7sX+zDt0=;
        b=BvKNVOW6FaZ8pqfwyAqOg7ViMT/XH7nQbszTYzmt413+W3jp9Nn7RYa7ZsoGHaWtyR
         zO8EQcpH13kamCYVJMJtufMn2WMes3E+wR0rdqx86CVGjoT7ikFhCDcOMnQC3+QVuHpu
         UsyKx9BgzAKvygDQFoC0ksRczsvWRR/2Yu0fM=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1687271625; x=1689863625;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=4tK1K/vaccTCslMqoJskwo7aRRzXTCdgvlf7sX+zDt0=;
        b=dV84S136kDGcNmTLEt+m6ho3rPOuhVAF9YdYNwhgzksBB3hG9yxkAUf7O+qeAFrduY
         GBN4MVVL309TyAiPKNHqruYo1dCbdcG0H5QtyiUYWpjFvrQAR9pnddCFZh01BiTovHWq
         5ii/JEYuPGLcwSY3BiQCEkC8MboadfEya9TP6KvhJ2LEiJU9jLlZC7njGFXjVi1Ur6gq
         TFV2dZcDAWt0dj8Z5voa9E5UAxXelgHQiv81eh/iOhp2pDEu5O3oRBxmu3PVv2cKQ9oH
         /CIEsNojyU84Kca9Oh9QkK5Xclluc0C3xvnSazRmevuCZBJfWNQCJWsbEqcr9LdHjlx5
         KsSg==
X-Gm-Message-State: AC+VfDxn874ua6a1Lh3RkdVi/n7mbEbtOyrUQ2W5KB2dbCOtsoNWCpz+
	wERvljAfm5uIWcxCQnw4QxoZrZdg61UjA4Sq5Q==
X-Google-Smtp-Source: ACHHUZ687e3vSO0bt1IKaXAnLXIoubEY4unsihHzGDb/8Z8cexOAr3PDPa4xhUUNi+axiTPBjR4ZCg==
X-Received: by 2002:a17:907:724a:b0:987:16c6:6ff3 with SMTP id ds10-20020a170907724a00b0098716c66ff3mr9938050ejc.38.1687271625318;
        Tue, 20 Jun 2023 07:33:45 -0700 (PDT)
From: Owen Smith <owen.smith@cloud.com>
To: win-pv-devel@lists.xenproject.org
Cc: Owen Smith <owen.smith@cloud.com>
Subject: [PATCH] Only call EvtchnFlush on valid Cpus
Date: Tue, 20 Jun 2023 15:33:19 +0100
Message-Id: <20230620143319.1305-1-owen.smith@cloud.com>
X-Mailer: git-send-email 2.39.0.windows.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The Evtchn processor array is created using KeQueryMaximumProcessorCountEx, which
can include processors that do not get initialized.
Skip cleanup and flushing uninitialized event channels

Signed-off-by: Owen Smith <owen.smith@cloud.com>
---
 src/xenbus/evtchn.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/src/xenbus/evtchn.c b/src/xenbus/evtchn.c
index 2e63edb..ec4ac28 100644
--- a/src/xenbus/evtchn.c
+++ b/src/xenbus/evtchn.c
@@ -1752,10 +1752,16 @@ EvtchnRelease(
 
     for (Cpu = 0; Cpu < Context->ProcessorCount; Cpu++) {
         PXENBUS_EVTCHN_PROCESSOR Processor;
+        unsigned int             vcpu_id;
+        NTSTATUS                 status;
 
         ASSERT(Context->Processor != NULL);
         Processor = &Context->Processor[Cpu];
 
+        status = SystemProcessorVcpuId(Cpu, &vcpu_id);
+        if (!NT_SUCCESS(status))
+            continue;
+
         EvtchnFlush(Context, Cpu);
 
         (VOID) KeRemoveQueueDpc(&Processor->Dpc);
-- 
2.39.0.windows.1



From win-pv-devel-bounces@lists.xenproject.org Fri Jun 23 15:37:39 2023
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Fri, 23 Jun 2023 15:37:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.554385.865545 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1qCiqu-0005P2-52; Fri, 23 Jun 2023 15:37:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 554385.865545; Fri, 23 Jun 2023 15:37:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1qCiqu-0005Ov-2D; Fri, 23 Jun 2023 15:37:36 +0000
Received: by outflank-mailman (input) for mailman id 554385;
 Fri, 23 Jun 2023 15:37:35 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=OApR=CL=invisiblethingslab.com=omeg@srs-se1.protection.inumbo.net>)
 id 1qCiqt-0005Op-5Z
 for win-pv-devel@lists.xenproject.org; Fri, 23 Jun 2023 15:37:35 +0000
Received: from out4-smtp.messagingengine.com (out4-smtp.messagingengine.com
 [66.111.4.28]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id dd29874b-11db-11ee-8611-37d641c3527e;
 Fri, 23 Jun 2023 17:37:31 +0200 (CEST)
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45])
 by mailout.nyi.internal (Postfix) with ESMTP id B8A515C0151
 for <win-pv-devel@lists.xenproject.org>; Fri, 23 Jun 2023 11:37:29 -0400 (EDT)
Received: from mailfrontend2 ([10.202.2.163])
 by compute5.internal (MEProxy); Fri, 23 Jun 2023 11:37:29 -0400
Received: by mail.messagingengine.com (Postfix) with ESMTPA for
 <win-pv-devel@lists.xenproject.org>; Fri,
 23 Jun 2023 11:37:28 -0400 (EDT)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: dd29874b-11db-11ee-8611-37d641c3527e
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	invisiblethingslab.com; h=cc:content-type:content-type:date:date
	:from:from:in-reply-to:message-id:mime-version:reply-to:sender
	:subject:subject:to:to; s=fm2; t=1687534649; x=1687621049; bh=gA
	HXrVgD049uPPfx4pZmmL/HQUVxDF0Ezes7uMlkKcU=; b=aHSxjPnrBtW8mCfeEm
	by5UEpmxYruKdFLhbPuIwF34nMGEkM0Oe550G93AcWHReYmTIgMfQmfRQJxVkFT6
	/k8deLAbsEz5xxx54687s9fRIGYYZSYw8k+UpHVoRIIuMDE8SdwqHRmWBccqfBp+
	8Y4O6JrGtudpUi6Uz5BVGtmDKiJH6hgpUexyEZ/t7ooToBPCpIFFBTquLvWGcwSt
	kzjyj8UAOH2cUa5mrKnQKUtZ5EVO/vlpScsOdFeLfyGKdmBE5uZcxwCV7sm4SXmh
	E2nkzAmm0irPmlqLjHdXQBH93Gp5YFO2eUS2J0s3ximkQJqEUHoHRRXnIyEGFeTd
	a2pQ==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	messagingengine.com; h=cc:content-type:content-type:date:date
	:feedback-id:feedback-id:from:from:in-reply-to:message-id
	:mime-version:reply-to:sender:subject:subject:to:to:x-me-proxy
	:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm2; t=
	1687534649; x=1687621049; bh=gAHXrVgD049uPPfx4pZmmL/HQUVxDF0Ezes
	7uMlkKcU=; b=ewATjy3wZkJ7efz+EMV16nhUVcHVjm7NHRGZIMeG839T2qlHPCf
	NUeRforyGD3VNmQPRTKj49+lk70rTnPonPVUwEacZJ9p4PgK+8ZNDv1vnMLJo2Bo
	D5lx8Um4sr1nCUNWX6u7Y3Kqi7lLwDkzjmjKr8ZZ6pMsYGlTMSGmFs97uvrCnouW
	bYuM1qJu8XGknOAKNr8Tb+kcXujvu5r0Sg0mtULN4evQsALNtLj3PIbKzQn9F0nM
	dn7idFinmwyAssXBz+IuoFtu/GIHgmZa4RVwP7gjH5V6PdeFp70AIncelzgCQyO3
	sEIWJmZk7cPpDNQL+Q6xuIQE21HZBkzDDdA==
X-ME-Sender: <xms:ObyVZB4qw5AdqjauHvTiJV0WZsqF-gfS8EaLoMKr1BZ_U45ytBej6w>
    <xme:ObyVZO7-jRrNt5oZftgMHO1WwooFPTlBTaZybm3lMuIpt7sjn7N7QTfgAFt7ZdKxf
    1ivtnHTk1yeOEg>
X-ME-Received: <xmr:ObyVZIe3R0Bu3W-aMub2wn2i2YQi5N1_7Ix7a1foEKq0llAJ3BDKflQ8E8I7UqAVZCbVimsWbeoqtCP_8M3avkT0PrDeLOMR0JI>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrgeeggedgledtucetufdoteggodetrfdotf
    fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
    uceurghilhhouhhtmecufedttdenucenucfjughrpefkffggfgfvhffutgesghdtreertd
    efjeenucfhrhhomheptfgrfhgrlhcuhghojhguhihlrgcuoehomhgvghesihhnvhhishhi
    sghlvghthhhinhhgshhlrggsrdgtohhmqeenucggtffrrghtthgvrhhnpeegvddvgeekje
    euvefffedvhfdvueevfeffgfejleevleekheefvedtvdetfefhfeenucevlhhushhtvghr
    ufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehomhgvghesihhnvhhishhisg
    hlvghthhhinhhgshhlrggsrdgtohhm
X-ME-Proxy: <xmx:ObyVZKLaw1Th3kRRp83LIKzhWAeki8GL4-_5ZIKvI_gpkqh0AnJqRg>
    <xmx:ObyVZFJnbVNH4eDauCg4z5ZWLZgLNr3deShezoxbRfyWBkRmI2G4qA>
    <xmx:ObyVZDxG56xadducgfizv5-2HUZ_dRekeREVl8OiKqFG4h01-AfBcg>
    <xmx:ObyVZKV69yRYRtPGqeuWM30Jv4XVuUu8L4Yujfnt346j_EJLSz1Y8Q>
Feedback-ID: i409c4082:Fastmail
Message-ID: <6ab4cae1-af89-bf2f-3a85-be437828788b@invisiblethingslab.com>
Date: Fri, 23 Jun 2023 17:37:26 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.12.0
Content-Language: en-US
To: win-pv-devel@lists.xenproject.org
From: =?UTF-8?B?UmFmYcWCIFdvamR5xYJh?= <omeg@invisiblethingslab.com>
Subject: Xenbus issues on Qubes OS / win10
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------8nSDyP198oPFGC0M0blhBfmF"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------8nSDyP198oPFGC0M0blhBfmF
Content-Type: multipart/mixed; boundary="------------ExeeXwSCpadzQB7gojS0MyTf";
 protected-headers="v1"
From: =?UTF-8?B?UmFmYcWCIFdvamR5xYJh?= <omeg@invisiblethingslab.com>
To: win-pv-devel@lists.xenproject.org
Message-ID: <6ab4cae1-af89-bf2f-3a85-be437828788b@invisiblethingslab.com>
Subject: Xenbus issues on Qubes OS / win10

--------------ExeeXwSCpadzQB7gojS0MyTf
Content-Type: multipart/mixed; boundary="------------keItyusMJnkvmVV20q38F4Uy"

--------------keItyusMJnkvmVV20q38F4Uy
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

SGVsbG8sDQoNCkknbSB0cnlpbmcgdGhlIGxhdGVzdCBQViBkcml2ZXJzIG9uIFF1YmVzIE9T
IChiYWNrZW5kIGlzIFhlbiA0LjE0LjUpIA0Kd2l0aCBXaW5kb3dzIDEwIHBybyBhbmQgaGF2
aW5nIHNvbWUgaXNzdWVzLiBNYWlubHksIHhlbmJ1cyBmYWlscyB0byANCmluaXRpYWxpemUg
cHJvcGVybHkuIEkndmUgYXR0YWNoZWQgYSBkZWJ1ZyBvdXRwdXQsIHRoZSBtYWluIGlzc3Vl
IHNlZW1zIA0KdG8gYmUgdGhpczoNCg0KeGVuYnVzfFN0b3JlQWNxdWlyZTogPT09PT4NCnhl
bmJ1c3xHbnR0YWJBY3F1aXJlOiA9PT09Pg0KeGVuYnVzfFJhbmdlU2V0UG9wOiBmYWlsMw0K
eGVuYnVzfFJhbmdlU2V0UG9wOiBmYWlsMg0KeGVuYnVzfFJhbmdlU2V0UG9wOiBmYWlsMSAo
YzAwMDAwOWEpDQp4ZW5idXN8RmRvQWxsb2NhdGVIb2xlOiBmYWlsMSAoYzAwMDAwOWEpDQp4
ZW5idXN8R250dGFiQWNxdWlyZTogZmFpbDINCnhlbmJ1c3xHbnR0YWJBY3F1aXJlOiBmYWls
MSAoYzAwMDAwOWEpDQp4ZW5idXN8U3RvcmVBY3F1aXJlOiBmYWlsMSAoYzAwMDAwOWEpDQp4
ZW5idXN8RmRvRDNUb0QwOiBmYWlsNg0KDQouLi53aGljaCBzZWVtcyBwcmV0dHkgc3VzcGlj
aW91cy4gSXQncyBiZWVuIHNvbWUgeWVhcnMgc2luY2UgSSBsb29rZWQgYXQgDQp0aGUgZHJp
dmVycycgY29kZSBzbyBhbnkgaWRlYXMgYXMgdG8gd2hhdCBtYXkgYmUgY2F1c2luZyB0aGlz
IGFyZSB3ZWxjb21lIDopDQoNCkkndmUgYnVpbHQgdGhlIGRyaXZlciBteXNlbGYgZnJvbSBj
b21taXQgYjAzYzljMC4NCg0KQnR3LCBpcyB0aGVyZSBhIHdheSB0byB0ZWxsIHRoZSBkcml2
ZXJzIHRvIGxlYXZlIHRoZSB4ZW4ncyBzZXJpYWwgDQpjb25zb2xlIGFsb25lPyBJJ20gdXNp
bmcgaXQgZm9yIGRlYnVnZ2luZyBiZWNhdXNlIGFkZGluZyBhIHNlY29uZCBzZXJpYWwgDQpk
ZXZpY2UgaXMgY3VycmVudGx5IHByb2JsZW1hdGljIGluIFF1YmVzLg0KDQotLSANClJhZmHF
giBXb2pkecWCYQ0KSW52aXNpYmxlIFRoaW5ncyBMYWINCg==
--------------keItyusMJnkvmVV20q38F4Uy
Content-Type: text/plain; charset=UTF-8; name="xenbus-fail.txt"
Content-Disposition: attachment; filename="xenbus-fail.txt"
Content-Transfer-Encoding: base64

DQpNaWNyb3NvZnQgKFIpIFdpbmRvd3MgRGVidWdnZXIgVmVyc2lvbiAxMC4wLjIyNjIxLjc1
NSBBTUQ2NA0KQ29weXJpZ2h0IChjKSBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuDQoNCk9wZW5lZCBcXC5cY29tMQ0KV2FpdGluZyB0byByZWNvbm5lY3Qu
Li4NCkNvbm5lY3RlZCB0byBXaW5kb3dzIDEwIDE5MDQxIHg2NCB0YXJnZXQgYXQgKEZyaSBK
dW4gMjMgMTQ6NDE6MjUuODk5IDIwMjMgKFVUQyArIDI6MDApKSwgcHRyNjQgVFJVRQ0KS2Vy
bmVsIERlYnVnZ2VyIGNvbm5lY3Rpb24gZXN0YWJsaXNoZWQuDQpTeW1ib2wgc2VhcmNoIHBh
dGggaXM6IHNydioNCkV4ZWN1dGFibGUgc2VhcmNoIHBhdGggaXM6IA0KV2luZG93cyAxMCBL
ZXJuZWwgVmVyc2lvbiAxOTA0MSBNUCAoMSBwcm9jcykgRnJlZSB4NjQNCkVkaXRpb24gYnVp
bGQgbGFiOiAxOTA0MS4xLmFtZDY0ZnJlLnZiX3JlbGVhc2UuMTkxMjA2LTE0MDYNCk1hY2hp
bmUgTmFtZToNCktlcm5lbCBiYXNlID0gMHhmZmZmZjgwMWA0NzQwMDAwMCBQc0xvYWRlZE1v
ZHVsZUxpc3QgPSAweGZmZmZmODAxYDQ4MDJhMmQwDQpTeXN0ZW0gVXB0aW1lOiAwIGRheXMg
MDowMDowMC4wMDANCldlIGFyZSBydW5uaW5nIGF0IG5vcm1hbCBtb2RlLg0KS0RUQVJHRVQ6
IFJlZnJlc2hpbmcgS0QgY29ubmVjdGlvbg0KeGVufERsbEluaXRpYWxpemU6ID09PT0+DQp4
ZW58TG9nUmVhZExvZ0xldmVsOiBmYWlsMSAoYzAwMDAwMzQpDQp4ZW58TG9nUmVhZExvZ0xl
dmVsOiBmYWlsMSAoYzAwMDAwMzQpDQp4ZW58RGxsSW5pdGlhbGl6ZTogOS4xLjAgKDEpICgy
My4wNi4yMDIzKQ0KeGVufEFjcGlGaW5kUnNkcDogPT09PT4NCnhlbnxBY3BpRmluZFJzZHA6
IDB4MDAwMDAwMDAwMDBGNTlCMA0KeGVufEFjcGlGaW5kUnNkcDogPD09PT0NCnhlbnxTeXN0
ZW1Jbml0aWFsaXplOiBDUFVzIDIgLyAyDQp4ZW58U3lzdGVtR2V0U3RhcnRPcHRpb25zOiAg
VEVTVFNJR05JTkcgIE5PRVhFQ1VURT1PUFRJTiAgREVCVUcgIERFQlVHUE9SVD1DT00xICBC
QVVEUkFURT0xMTUyMDANCnhlbnxTeXN0ZW1HZXRWZXJzaW9uSW5mb3JtYXRpb246IEtFUk5F
TDogMTAuMCAoQlVJTEQgMTkwNDUpIFBMQVRGT1JNIFdJTjMyX05UICh4NjQpDQp4ZW58U3lz
dGVtR2V0VmVyc2lvbkluZm9ybWF0aW9uOiBTVUlURVM6DQp4ZW58U3lzdGVtR2V0VmVyc2lv
bkluZm9ybWF0aW9uOiAtIFRFUk1JTkFMDQp4ZW58U3lzdGVtR2V0VmVyc2lvbkluZm9ybWF0
aW9uOiAtIFNJTkdMRVVTRVJUUw0KeGVufFN5c3RlbUdldFZlcnNpb25JbmZvcm1hdGlvbjog
VFlQRTogV09SS1NUQVRJT04NCnhlbnxTeXN0ZW1HZXRNZW1vcnlJbmZvcm1hdGlvbjogUkFO
R0VbMF0gMDAwMDAwMDAuMDAwMDEwMDAgLSAwMDAwMDAwMC4wMDA5ZWZmZg0KeGVufFN5c3Rl
bUdldE1lbW9yeUluZm9ybWF0aW9uOiBSQU5HRVsxXSAwMDAwMDAwMC4wMDEwMDAwMCAtIDAw
MDAwMDAwLjAwMTAxZmZmDQp4ZW58U3lzdGVtR2V0TWVtb3J5SW5mb3JtYXRpb246IFJBTkdF
WzJdIDAwMDAwMDAwLjAwMTAzMDAwIC0gMDAwMDAwMDAuZWZmZmVmZmYNCnhlbnxTeXN0ZW1H
ZXRNZW1vcnlJbmZvcm1hdGlvbjogUkFOR0VbM10gMDAwMDAwMDEuMDAwMDAwMDAgLSAwMDAw
MDAwMS4wZWZmZmZmZg0KeGVufFN5c3RlbUdldE1lbW9yeUluZm9ybWF0aW9uOiBNYXhpbXVt
UGh5c2ljYWxBZGRyZXNzID0gMDAwMDAwMDEuMGVmZmZmZmYNCnhlbnxBY3BpR2V0WHNkdDog
PT09PT4NCnhlbnxBY3BpR2V0WHNkdDogMHgwMDAwMDAwMEZDMDBBNjUwDQp4ZW58QWNwaUdl
dFhzZHQ6IDw9PT09DQp4ZW58QWNwaUdldFhzZHQ6ID09PT0+DQp4ZW58QWNwaUdldFhzZHQ6
IDw9PT09DQp4ZW58U3lzdGVtUHJvY2Vzc29yQ2hhbmdlQ2FsbGJhY2s6ID09PT0+ICgwOjA6
QWRkU3RhcnROb3RpZnkpDQp4ZW58U3lzdGVtUHJvY2Vzc29yQ2hhbmdlQ2FsbGJhY2s6IDw9
PT09ICgwOjA6QWRkU3RhcnROb3RpZnkpDQp4ZW58U3lzdGVtUHJvY2Vzc29yQ2hhbmdlQ2Fs
bGJhY2s6ID09PT0+ICgwOjE6QWRkU3RhcnROb3RpZnkpDQp4ZW58U3lzdGVtUHJvY2Vzc29y
Q2hhbmdlQ2FsbGJhY2s6IDw9PT09ICgwOjE6QWRkU3RhcnROb3RpZnkpDQp4ZW58U3lzdGVt
UHJvY2Vzc29yQ2hhbmdlQ2FsbGJhY2s6ID09PT0+ICgwOjA6QWRkQ29tcGxldGVOb3RpZnkp
DQp4ZW58U3lzdGVtUHJvY2Vzc29yRHBjOiA9PT09PiAoMDowKQ0KeGVufFN5c3RlbVByb2Nl
c3NvckluaXRpYWxpemU6IE1hbnVmYWN0dXJlcjogR2VudWluZUludGVsDQp4ZW58U3lzdGVt
UHJvY2Vzc29ySW5pdGlhbGl6ZTogQVBJQyBJRDogMDANCnhlbnxTeXN0ZW1Qcm9jZXNzb3JJ
bml0aWFsaXplOiBQUk9DRVNTT1IgSUQ6IDAwDQp4ZW58U3lzdGVtUHJvY2Vzc29yRHBjOiA8
PT09PSAoMDowKQ0KeGVufFN5c3RlbVByb2Nlc3NvckNoYW5nZUNhbGxiYWNrOiA8PT09PSAo
MDowOkFkZENvbXBsZXRlTm90aWZ5KQ0KeGVufFN5c3RlbVByb2Nlc3NvckNoYW5nZUNhbGxi
YWNrOiA9PT09PiAoMDoxOkFkZENvbXBsZXRlTm90aWZ5KQ0KeGVufFN5c3RlbVByb2Nlc3Nv
ckRwYzogPT09PT4gKDA6MSkNCnhlbnxTeXN0ZW1Qcm9jZXNzb3JJbml0aWFsaXplOiBNYW51
ZmFjdHVyZXI6IEdlbnVpbmVJbnRlbA0KeGVufFN5c3RlbVByb2Nlc3NvckluaXRpYWxpemU6
IEFQSUMgSUQ6IDAyDQp4ZW58U3lzdGVtUHJvY2Vzc29ySW5pdGlhbGl6ZTogUFJPQ0VTU09S
IElEOiAwMQ0KeGVufFN5c3RlbVByb2Nlc3NvckRwYzogPD09PT0gKDA6MSkNCnhlbnxTeXN0
ZW1Qcm9jZXNzb3JDaGFuZ2VDYWxsYmFjazogPD09PT0gKDA6MTpBZGRDb21wbGV0ZU5vdGlm
eSkNCnhlbnxTeXN0ZW1HZXRUaW1lSW5mb3JtYXRpb246IEZBTFNFDQp4ZW58TW9kdWxlQWRk
OiBGRkZGRjgwMTQ3NDAwMDAwIC0gRkZGRkY4MDE0ODQ0NUZGRiBbbnRvc2tybmwuZXhlXQ0K
eGVufE1vZHVsZUFkZDogRkZGRkY4MDE0NDBEMDAwMCAtIEZGRkZGODAxNDQwRDVGRkYgW2hh
bC5kbGxdDQp4ZW58TW9kdWxlQWRkOiBGRkZGRjgwMTQ0MEUwMDAwIC0gRkZGRkY4MDE0NDBF
REZGRiBba2Rjb20uZGxsXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0M0U0MDAwMCAtIEZG
RkZGODAxNDQwQ0VGRkYgW21jdXBkYXRlX0dlbnVpbmVJbnRlbC5kbGxdDQp4ZW58TW9kdWxl
QWRkOiBGRkZGRjgwMTQ0MTIwMDAwIC0gRkZGRkY4MDE0NDE4QkZGRiBbQ0xGUy5TWVNdDQp4
ZW58TW9kdWxlQWRkOiBGRkZGRjgwMTQ0MEYwMDAwIC0gRkZGRkY4MDE0NDExNkZGRiBbdG0u
c3lzXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0NDE5MDAwMCAtIEZGRkZGODAxNDQxQTlG
RkYgW1BTSEVELmRsbF0NCnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAxNDQxQjAwMDAgLSBGRkZG
RjgwMTQ0MUJBRkZGIFtCT09UVklELmRsbF0NCnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAxNDQx
QzAwMDAgLSBGRkZGRjgwMTQ0MjJDRkZGIFtGTFRNR1IuU1lTXQ0KeGVufE1vZHVsZUFkZDog
RkZGRkY4MDE0OTk1MDAwMCAtIEZGRkZGODAxNDk5QjJGRkYgW21zcnBjLnN5c10NCnhlbnxN
b2R1bGVBZGQ6IEZGRkZGODAxNDk5MjAwMDAgLSBGRkZGRjgwMTQ5OTQ4RkZGIFtrc2VjZGQu
c3lzXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0OTgwMDAwMCAtIEZGRkZGODAxNDk5MTZG
RkYgW2NsaXBzcC5zeXNdDQp4ZW58TW9kdWxlQWRkOiBGRkZGRjgwMTQ0MjMwMDAwIC0gRkZG
RkY4MDE0NDIzREZGRiBbY21pbWNleHQuc3lzXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0
OTlDMDAwMCAtIEZGRkZGODAxNDk5RDBGRkYgW3dlcmtlcm5lbC5zeXNdDQp4ZW58TW9kdWxl
QWRkOiBGRkZGRjgwMTQ5OUUwMDAwIC0gRkZGRkY4MDE0OTlFQkZGRiBbbnRvc2V4dC5zeXNd
DQp4ZW58TW9kdWxlQWRkOiBGRkZGRjgwMTQ5OUYwMDAwIC0gRkZGRkY4MDE0OUFEN0ZGRiBb
Q0kuZGxsXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0OUFFMDAwMCAtIEZGRkZGODAxNDlC
OUFGRkYgW2NuZy5zeXNdDQp4ZW58TW9kdWxlQWRkOiBGRkZGRjgwMTQ5QkEwMDAwIC0gRkZG
RkY4MDE0OUM3MEZGRiBbV2RmMDEwMDAuc3lzXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0
OUM4MDAwMCAtIEZGRkZGODAxNDlDOTJGRkYgW1dERkxEUi5TWVNdDQp4ZW58TW9kdWxlQWRk
OiBGRkZGRjgwMTQ5Q0IwMDAwIC0gRkZGRkY4MDE0OUNDMEZGRiBbV3BwUmVjb3JkZXIuc3lz
XQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0OUNBMDAwMCAtIEZGRkZGODAxNDlDQUVGRkYg
W1NsZWVwU3R1ZHlIZWxwZXIuc3lzXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0OUNEMDAw
MCAtIEZGRkZGODAxNDlDRjVGRkYgW2FjcGlleC5zeXNdDQp4ZW58TW9kdWxlQWRkOiBGRkZG
RjgwMTQ5RDAwMDAwIC0gRkZGRkY4MDE0OUQwQ0ZGRiBbbXNzZWNjb3JlLnN5c10NCnhlbnxN
b2R1bGVBZGQ6IEZGRkZGODAxNDlEMTAwMDAgLSBGRkZGRjgwMTQ5RDI5RkZGIFtTZ3JtQWdl
bnQuc3lzXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0OUQzMDAwMCAtIEZGRkZGODAxNDlE
RkJGRkYgW0FDUEkuc3lzXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0OUUwMDAwMCAtIEZG
RkZGODAxNDlFMEJGRkYgW1dNSUxJQi5TWVNdDQp4ZW58TW9kdWxlQWRkOiBGRkZGRjgwMTQ5
RTMwMDAwIC0gRkZGRkY4MDE0OUU5QUZGRiBbaW50ZWxwZXAuc3lzXQ0KeGVufE1vZHVsZUFk
ZDogRkZGRkY4MDE0OUVBMDAwMCAtIEZGRkZGODAxNDlFQjZGRkYgW1dpbmRvd3NUcnVzdGVk
UlQuc3lzXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0OUVDMDAwMCAtIEZGRkZGODAxNDlF
Q0FGRkYgW0ludGVsVEEuc3lzXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0OUVEMDAwMCAt
IEZGRkZGODAxNDlFREFGRkYgW1dpbmRvd3NUcnVzdGVkUlRQcm94eS5zeXNdDQp4ZW58TW9k
dWxlQWRkOiBGRkZGRjgwMTQ5RUUwMDAwIC0gRkZGRkY4MDE0OUVGM0ZGRiBbcGN3LnN5c10N
CnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAxNDlGMDAwMDAgLSBGRkZGRjgwMTQ5RjBBRkZGIFtt
c2lzYWRydi5zeXNdDQp4ZW58TW9kdWxlQWRkOiBGRkZGRjgwMTQ5RjEwMDAwIC0gRkZGRkY4
MDE0OUYxQUZGRiBbaXNhcG5wLnN5c10NCnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAxNDlGMjAw
MDAgLSBGRkZGRjgwMTQ5Rjk2RkZGIFtwY2kuc3lzXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4
MDE0OUZBMDAwMCAtIEZGRkZGODAxNDlGQjRGRkYgW3ZkcnZyb290LnN5c10NCnhlbnxNb2R1
bGVBZGQ6IEZGRkZGODAxNEEwMDAwMDAgLSBGRkZGRjgwMTRBMDQzRkZGIFt1Y3gwMTAwMC5z
eXNdDQp4ZW58TW9kdWxlQWRkOiBGRkZGRjgwMTQ5RkMwMDAwIC0gRkZGRkY4MDE0OUZFRUZG
RiBbcGRjLnN5c10NCnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAxNEEwNTAwMDAgLSBGRkZGRjgw
MTRBMDY4RkZGIFtDRUEuc3lzXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0QTA3MDAwMCAt
IEZGRkZGODAxNEEwQTBGRkYgW3BhcnRtZ3Iuc3lzXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4
MDE0QTBCMDAwMCAtIEZGRkZGODAxNEE0MURGRkYgW2V2YmRhLnN5c10NCnhlbnxNb2R1bGVB
ZGQ6IEZGRkZGODAxNEE0MjAwMDAgLSBGRkZGRjgwMTRBNDQxRkZGIFtwY21jaWEuc3lzXQ0K
eGVufE1vZHVsZUFkZDogRkZGRkY4MDE0OUZGMDAwMCAtIEZGRkZGODAxNDlGRjlGRkYgW3Bj
aWlkZS5zeXNdDQp4ZW58TW9kdWxlQWRkOiBGRkZGRjgwMTRBNDUwMDAwIC0gRkZGRkY4MDE0
QTQ2MkZGRiBbUENJSURFWC5TWVNdDQp4ZW58TW9kdWxlQWRkOiBGRkZGRjgwMTRBNDcwMDAw
IC0gRkZGRkY4MDE0QTUxQkZGRiBbc3BhY2Vwb3J0LnN5c10NCnhlbnxNb2R1bGVBZGQ6IEZG
RkZGODAxNEE1MjAwMDAgLSBGRkZGRjgwMTRBNTJBRkZGIFtpbnRlbGlkZS5zeXNdDQp4ZW58
TW9kdWxlQWRkOiBGRkZGRjgwMTRBNTMwMDAwIC0gRkZGRkY4MDE0QTU0OEZGRiBbdm9sbWdy
LnN5c10NCnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAxNEE1NTAwMDAgLSBGRkZGRjgwMTRBNTlF
RkZGIFtzZGJ1cy5zeXNdDQp4ZW58TW9kdWxlQWRkOiBGRkZGRjgwMTRBNUEwMDAwIC0gRkZG
RkY4MDE0QTYwMkZGRiBbdm9sbWdyeC5zeXNdDQp4ZW58TW9kdWxlQWRkOiBGRkZGRjgwMTRB
NjEwMDAwIC0gRkZGRkY4MDE0QTYzRkZGRiBbdm1idXMuc3lzXQ0KeGVufE1vZHVsZUFkZDog
RkZGRkY4MDE0QTcyMDAwMCAtIEZGRkZGODAxNEE4OEVGRkYgW05ESVMuU1lTXQ0KeGVufE1v
ZHVsZUFkZDogRkZGRkY4MDE0QTY4MDAwMCAtIEZGRkZGODAxNEE3MUJGRkYgW05FVElPLlNZ
U10NCnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAxNEE2NTAwMDAgLSBGRkZGRjgwMTRBNjc5RkZG
IFtodnNvY2tldC5zeXNdDQp4ZW58TW9kdWxlQWRkOiBGRkZGRjgwMTRBODkwMDAwIC0gRkZG
RkY4MDE0QThCMEZGRiBbdm1ia21jbC5zeXNdDQp4ZW58TW9kdWxlQWRkOiBGRkZGRjgwMTRB
OEMwMDAwIC0gRkZGRkY4MDE0QThEMUZGRiBbd2luaHYuc3lzXQ0KeGVufE1vZHVsZUFkZDog
RkZGRkY4MDE0QThFMDAwMCAtIEZGRkZGODAxNEE4RjlGRkYgW3ZwY2kuc3lzXQ0KeGVufE1v
ZHVsZUFkZDogRkZGRkY4MDE0QTkwMDAwMCAtIEZGRkZGODAxNEE5ODhGRkYgW2J4dmJkYS5z
eXNdDQp4ZW58TW9kdWxlQWRkOiBGRkZGRjgwMTRBOTkwMDAwIC0gRkZGRkY4MDE0QTlCN0ZG
RiBbbnZyYWlkLnN5c10NCnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAxNEE5QzAwMDAgLSBGRkZG
RjgwMTRBQTMyRkZGIFtDTEFTU1BOUC5TWVNdDQp4ZW58TW9kdWxlQWRkOiBGRkZGRjgwMTRB
QTQwMDAwIC0gRkZGRkY4MDE0QUE1N0ZGRiBbdXJzY3gwMTAwMC5zeXNdDQp4ZW58TW9kdWxl
QWRkOiBGRkZGRjgwMTRBQTYwMDAwIC0gRkZGRkY4MDE0QUE3REZGRiBbbW91bnRtZ3Iuc3lz
XQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0QUE4MDAwMCAtIEZGRkZGODAxNEFCOURGRkYg
W2lhU3RvclYuc3lzXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0QUJBMDAwMCAtIEZGRkZG
ODAxNEFCQ0FGRkYgW3ZzbXJhaWQuc3lzXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0QUJE
MDAwMCAtIEZGRkZGODAxNEFDODRGRkYgW3N0b3Jwb3J0LnN5c10NCnhlbnxNb2R1bGVBZGQ6
IEZGRkZGODAxNEFDOTAwMDAgLSBGRkZGRjgwMTRBQ0FERkZGIFszd2FyZS5zeXNdDQp4ZW58
TW9kdWxlQWRkOiBGRkZGRjgwMTRBQ0IwMDAwIC0gRkZGRkY4MDE0QUNDRUZGRiBbYW1kc2F0
YS5zeXNdDQp4ZW58TW9kdWxlQWRkOiBGRkZGRjgwMTRBQ0QwMDAwIC0gRkZGRkY4MDE0QUNE
QkZGRiBbYW1keGF0YS5zeXNdDQp4ZW58TW9kdWxlQWRkOiBGRkZGRjgwMTRBQ0UwMDAwIC0g
RkZGRkY4MDE0QUQ0NkZGRiBbYW1kc2JzLnN5c10NCnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAx
NEFENTAwMDAgLSBGRkZGRjgwMTRBRDc0RkZGIFthcmNzYXMuc3lzXQ0KeGVufE1vZHVsZUFk
ZDogRkZGRkY4MDE0QUQ4MDAwMCAtIEZGRkZGODAxNEFEQURGRkYgW0l0U2FzMzVpLnN5c10N
CnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAxNEFEQjAwMDAgLSBGRkZGRjgwMTRBRENFRkZGIFts
c2lfc2FzLnN5c10NCnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAxNEFERDAwMDAgLSBGRkZGRjgw
MTRBREYwRkZGIFtsc2lfc2FzMmkuc3lzXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0QUUw
MDAwMCAtIEZGRkZGODAxNEFFMjJGRkYgW2xzaV9zYXMzaS5zeXNdDQp4ZW58TW9kdWxlQWRk
OiBGRkZGRjgwMTRBRTMwMDAwIC0gRkZGRkY4MDE0QUU0NkZGRiBbbHNpX3Nzcy5zeXNdDQp4
ZW58TW9kdWxlQWRkOiBGRkZGRjgwMTRBRTUwMDAwIC0gRkZGRkY4MDE0QUU2MkZGRiBbbWVn
YXNhcy5zeXNdDQp4ZW58TW9kdWxlQWRkOiBGRkZGRjgwMTRBRTcwMDAwIC0gRkZGRkY4MDE0
QUU4NkZGRiBbTWVnYVNhczJpLnN5c10NCnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAxNEFFOTAw
MDAgLSBGRkZGRjgwMTRBRUFCRkZGIFttZWdhc2FzMzVpLnN5c10NCnhlbnxNb2R1bGVBZGQ6
IEZGRkZGODAxNEFFQjAwMDAgLSBGRkZGRjgwMTRBRjlFRkZGIFttZWdhc3Iuc3lzXQ0KeGVu
fE1vZHVsZUFkZDogRkZGRkY4MDE0QUZBMDAwMCAtIEZGRkZGODAxNEFGQjJGRkYgW212dW1p
cy5zeXNdDQp4ZW58TW9kdWxlQWRkOiBGRkZGRjgwMTRBRkMwMDAwIC0gRkZGRkY4MDE0QUZF
OUZGRiBbbnZzdG9yLnN5c10NCnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAxNEFGRjAwMDAgLSBG
RkZGRjgwMTRCMDAxRkZGIFtwZXJjc2FzMmkuc3lzXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4
MDE0QjAxMDAwMCAtIEZGRkZGODAxNEIwMjRGRkYgW3BlcmNzYXMzaS5zeXNdDQp4ZW58TW9k
dWxlQWRkOiBGRkZGRjgwMTRCMDMwMDAwIC0gRkZGRkY4MDE0QjAzREZGRiBbU2lTUmFpZDIu
c3lzXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0QjA0MDAwMCAtIEZGRkZGODAxNEIwNTdG
RkYgW3Npc3JhaWQ0LnN5c10NCnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAxNEIwNjAwMDAgLSBG
RkZGRjgwMTRCMEFERkZGIFt2c3R4cmFpZC5zeXNdDQp4ZW58TW9kdWxlQWRkOiBGRkZGRjgw
MTRCMEIwMDAwIC0gRkZGRkY4MDE0QjBCQUZGRiBbc3RleHN0b3Iuc3lzXQ0KeGVufE1vZHVs
ZUFkZDogRkZGRkY4MDE0QjBDMDAwMCAtIEZGRkZGODAxNEIxMUJGRkYgW2NodDRzeDY0LnN5
c10NCnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAxNEIxMjAwMDAgLSBGRkZGRjgwMTRCMjM0RkZG
IFtpYVN0b3JBVkMuc3lzXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0QjI0MDAwMCAtIEZG
RkZGODAxNEIyNENGRkYgW2F0YXBpLnN5c10NCnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAxNEIy
NTAwMDAgLSBGRkZGRjgwMTRCMjhCRkZGIFthdGFwb3J0LlNZU10NCnhlbnxNb2R1bGVBZGQ6
IEZGRkZGODAxNEIyOTAwMDAgLSBGRkZGRjgwMTRCMkMxRkZGIFtzdG9yYWhjaS5zeXNdDQp4
ZW58TW9kdWxlQWRkOiBGRkZGRjgwMTRCMkQwMDAwIC0gRkZGRkY4MDE0QjJGRkZGRiBbc3Rv
cm52bWUuc3lzXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0QjMxMDAwMCAtIEZGRkZGODAx
NEI1NkJGRkYgW0FEUDgwWFguU1lTXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0QjU3MDAw
MCAtIEZGRkZGODAxNEI1ODJGRkYgW0hwU0FNRC5zeXNdDQp4ZW58TW9kdWxlQWRkOiBGRkZG
RjgwMTRCNTkwMDAwIC0gRkZGRkY4MDE0QjVDNUZGRiBbU21hcnRTQU1ELnN5c10NCnhlbnxN
b2R1bGVBZGQ6IEZGRkZGODAxNEI1RDAwMDAgLSBGRkZGRjgwMTRCNUZDRkZGIFtudmRpbW0u
c3lzXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0QjYwMDAwMCAtIEZGRkZGODAxNEI2MjNG
RkYgW0VoU3RvclRjZ0Rydi5zeXNdDQp4ZW58TW9kdWxlQWRkOiBGRkZGRjgwMTRCNjMwMDAw
IC0gRkZGRkY4MDE0QjY0QkZGRiBbRWhTdG9yQ2xhc3Muc3lzXQ0KeGVufE1vZHVsZUFkZDog
RkZGRkY4MDE0QjY1MDAwMCAtIEZGRkZGODAxNEI2NjlGRkYgW2ZpbGVpbmZvLnN5c10NCnhl
bnxNb2R1bGVBZGQ6IEZGRkZGODAxNEI2NzAwMDAgLSBGRkZGRjgwMTRCNkFGRkZGIFtXb2Yu
c3lzXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0QjZDMDAwMCAtIEZGRkZGODAxNEI3M0RG
RkYgW1dkRmlsdGVyLnN5c10NCnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAxNEI3NDAwMDAgLSBG
RkZGRjgwMTRCQTE1RkZGIFtOdGZzLnN5c10NCnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAxNEJB
MjAwMDAgLSBGRkZGRjgwMTRCQTUzRkZGIFt1c2JjY2dwLnN5c10NCnhlbnxNb2R1bGVBZGQ6
IEZGRkZGODAxNEJBNjAwMDAgLSBGRkZGRjgwMTRCQTZERkZGIFtVU0JELlNZU10NCnhlbnxN
b2R1bGVBZGQ6IEZGRkZGODAxNEJBNzAwMDAgLSBGRkZGRjgwMTRCQTdDRkZGIFt1cnNjaGlw
aWRlYS5zeXNdDQp4ZW58TW9kdWxlQWRkOiBGRkZGRjgwMTRCQTgwMDAwIC0gRkZGRkY4MDE0
QkE4RUZGRiBbc3RvcnZzYy5zeXNdDQp4ZW58TW9kdWxlQWRkOiBGRkZGRjgwMTRCQTkwMDAw
IC0gRkZGRkY4MDE0QkFBOUZGRiBbdXNiZWhjaS5zeXNdDQp4ZW58TW9kdWxlQWRkOiBGRkZG
RjgwMTRCQUIwMDAwIC0gRkZGRkY4MDE0QkIyOEZGRiBbVVNCUE9SVC5TWVNdDQp4ZW58TW9k
dWxlQWRkOiBGRkZGRjgwMTRCQjMwMDAwIC0gRkZGRkY4MDE0QkJCNEZGRiBbdXNiaHViLnN5
c10NCnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAxNEJCQzAwMDAgLSBGRkZGRjgwMTRCQzYyRkZG
IFtVc2JIdWIzLnN5c10NCnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAxNEJDNzAwMDAgLSBGRkZG
RjgwMTRCQzdDRkZGIFtGc19SZWMuc3lzXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0QkM4
MDAwMCAtIEZGRkZGODAxNEJDQjFGRkYgW2tzZWNwa2cuc3lzXQ0KeGVufE1vZHVsZUFkZDog
RkZGRkY4MDE0QkNDMDAwMCAtIEZGRkZGODAxNEJGQURGRkYgW3RjcGlwLnN5c10NCnhlbnxN
b2R1bGVBZGQ6IEZGRkZGODAxNEJGQjAwMDAgLSBGRkZGRjgwMTRDMDJFRkZGIFtmd3BrY2xu
dC5zeXNdDQp4ZW58TW9kdWxlQWRkOiBGRkZGRjgwMTRDMDMwMDAwIC0gRkZGRkY4MDE0QzA1
RkZGRiBbd2ZwbHdmcy5zeXNdDQp4ZW58TW9kdWxlQWRkOiBGRkZGRjgwMTRDMDcwMDAwIC0g
RkZGRkY4MDE0QzA4MEZGRiBbdm1zdG9yZmwuc3lzXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4
MDE0QzA5MDAwMCAtIEZGRkZGODAxNEMxNTdGRkYgW2Z2ZXZvbC5zeXNdDQp4ZW58TW9kdWxl
QWRkOiBGRkZGRjgwMTRDMTYwMDAwIC0gRkZGRkY4MDE0QzE2RkZGRiBbYnR0Zmx0LnN5c10N
CnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAxNEMxODAwMDAgLSBGRkZGRjgwMTRDMThBRkZGIFt2
b2x1bWUuc3lzXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0QzE5MDAwMCAtIEZGRkZGODAx
NEMxRkNGRkYgW3ZvbHNuYXAuc3lzXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0QzIwMDAw
MCAtIEZGRkZGODAxNEMyOUNGRkYgW1VTQlhIQ0kuU1lTXQ0KeGVufE1vZHVsZUFkZDogRkZG
RkY4MDE0QzJBMDAwMCAtIEZGRkZGODAxNEMyQzVGRkYgW1VTQlNUT1IuU1lTXQ0KeGVufE1v
ZHVsZUFkZDogRkZGRkY4MDE0QzJEMDAwMCAtIEZGRkZGODAxNEMyRThGRkYgW3Vhc3BzdG9y
LnN5c10NCnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAxNEMyRjAwMDAgLSBGRkZGRjgwMTRDMzA3
RkZGIFtzdG9ydWZzLnN5c10NCnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAxNEMzMTAwMDAgLSBG
RkZGRjgwMTRDMzJERkZGIFtzZHN0b3Iuc3lzXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0
QzMzMDAwMCAtIEZGRkZGODAxNEMzNUFGRkYgW3NjbWJ1cy5zeXNdDQp4ZW58TW9kdWxlQWRk
OiBGRkZGRjgwMTRDMzYwMDAwIC0gRkZGRkY4MDE0QzM4MEZGRiBbc2JwMnBvcnQuc3lzXQ0K
eGVufE1vZHVsZUFkZDogRkZGRkY4MDE0QzM5MDAwMCAtIEZGRkZGODAxNEMzREZGRkYgW3Jk
eWJvb3N0LnN5c10NCnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAxNEMzRjAwMDAgLSBGRkZGRjgw
MTRDM0ZFRkZGIFtyYW1kaXNrLnN5c10NCnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAxNEM0MDAw
MDAgLSBGRkZGRjgwMTRDNDI2RkZGIFtwbWVtLnN5c10NCnhlbnxNb2R1bGVBZGQ6IEZGRkZG
ODAxNEM0MzAwMDAgLSBGRkZGRjgwMTRDNDU1RkZGIFttdXAuc3lzXQ0KeGVufE1vZHVsZUFk
ZDogRkZGRkY4MDE0QzQ2MDAwMCAtIEZGRkZGODAxNEM0NzFGRkYgW2lvcmF0ZS5zeXNdDQp4
ZW58TW9kdWxlQWRkOiBGRkZGRjgwMTRDNEEwMDAwIC0gRkZGRkY4MDE0QzRCRUZGRiBbZGlz
ay5zeXNdDQp4ZW58TW9kdWxlQWRkOiBGRkZGRjgwMTRDQTAwMDAwIC0gRkZGRkY4MDE0Q0Ex
REZGRiBbY3Jhc2hkbXAuc3lzXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0Q0FBMDAwMCAt
IEZGRkZGODAxNENBQjFGRkYgW2hpZHVzYi5zeXNdDQp4ZW58TW9kdWxlQWRkOiBGRkZGRjgw
MTRDQUMwMDAwIC0gRkZGRkY4MDE0Q0IwMEZGRiBbSElEQ0xBU1MuU1lTXQ0KeGVufE1vZHVs
ZUFkZDogRkZGRkY4MDE0Q0IxMDAwMCAtIEZGRkZGODAxNENCMjJGRkYgW0hJRFBBUlNFLlNZ
U10NCnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAxNENCMzAwMDAgLSBGRkZGRjgwMTRDQjNGRkZG
IFttb3VoaWQuc3lzXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0Q0I1MDAwMCAtIEZGRkZG
ODAxNENCNjJGRkYgW21vdWNsYXNzLnN5c10NCnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAxNENC
NzAwMDAgLSBGRkZGRjgwMTRDQjlGRkZGIFtjZHJvbS5zeXNdDQp4ZW58TW9kdWxlQWRkOiBG
RkZGRjgwMTRDQkIwMDAwIC0gRkZGRkY4MDE0Q0JDNEZGRiBbZmlsZWNyeXB0LnN5c10NCnhl
bnxNb2R1bGVBZGQ6IEZGRkZGODAxNENCRDAwMDAgLSBGRkZGRjgwMTRDQkRERkZGIFt0YnMu
c3lzXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0Q0JFMDAwMCAtIEZGRkZGODAxNENCRTlG
RkYgW051bGwuU1lTXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0Q0JGMDAwMCAtIEZGRkZG
ODAxNENCRjlGRkYgW0JlZXAuU1lTXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0Q0MwMDAw
MCAtIEZGRkZGODAxNENGQTlGRkYgW2R4Z2tybmwuc3lzXQ0KeGVufE1vZHVsZUFkZDogRkZG
RkY4MDE0Q0ZCMDAwMCAtIEZGRkZGODAxNENGQzdGRkYgW3dhdGNoZG9nLnN5c10NCnhlbnxN
b2R1bGVBZGQ6IEZGRkZGODAxNEVFQjAwMDAgLSBGRkZGRjgwMTRFRUM1RkZGIFtCYXNpY0Rp
c3BsYXkuc3lzXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0RUVEMDAwMCAtIEZGRkZGODAx
NEVFRTBGRkYgW0Jhc2ljUmVuZGVyLnN5c10NCnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAxNEVF
RjAwMDAgLSBGRkZGRjgwMTRFRjBCRkZGIFtOcGZzLlNZU10NCnhlbnxNb2R1bGVBZGQ6IEZG
RkZGODAxNEVGMTAwMDAgLSBGRkZGRjgwMTRFRjIwRkZGIFtNc2ZzLlNZU10NCnhlbnxNb2R1
bGVBZGQ6IEZGRkZGODAxNEVGMzAwMDAgLSBGRkZGRjgwMTRFRjRERkZGIFtDaW1GUy5TWVNd
DQp4ZW58TW9kdWxlQWRkOiBGRkZGRjgwMTRFRjUwMDAwIC0gRkZGRkY4MDE0RUY3MUZGRiBb
dGR4LnN5c10NCnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAxNEVGODAwMDAgLSBGRkZGRjgwMTRF
RjhGRkZGIFtUREkuU1lTXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0RUZBMDAwMCAtIEZG
RkZGODAxNEVGRkJGRkYgW25ldGJ0LnN5c10NCnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAxNEUw
MDAwMDAgLSBGRkZGRjgwMTRFMDEzRkZGIFthZnVuaXguc3lzXQ0KeGVufE1vZHVsZUFkZDog
RkZGRkY4MDE0RTAyMDAwMCAtIEZGRkZGODAxNEUwQzZGRkYgW2FmZC5zeXNdDQp4ZW58TW9k
dWxlQWRkOiBGRkZGRjgwMTRFMEQwMDAwIC0gRkZGRkY4MDE0RTBFOUZGRiBbdndpZmlmbHQu
c3lzXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0RTBGMDAwMCAtIEZGRkZGODAxNEUxMUFG
RkYgW3BhY2VyLnN5c10NCnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAxNEUxMjAwMDAgLSBGRkZG
RjgwMTRFMTMzRkZGIFtuZGlzY2FwLnN5c10NCnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAxNEUx
NDAwMDAgLSBGRkZGRjgwMTRFMTUzRkZGIFtuZXRiaW9zLnN5c10NCnhlbnxNb2R1bGVBZGQ6
IEZGRkZGODAxNEUxNjAwMDAgLSBGRkZGRjgwMTRFMjAwRkZGIFtWaWQuc3lzXQ0KeGVufE1v
ZHVsZUFkZDogRkZGRkY4MDE0RTIxMDAwMCAtIEZGRkZGODAxNEUyMzBGRkYgW3dpbmh2ci5z
eXNdDQp4ZW58TW9kdWxlQWRkOiBGRkZGRjgwMTRFMjQwMDAwIC0gRkZGRkY4MDE0RTJCQUZG
RiBbcmRic3Muc3lzXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0RTJDMDAwMCAtIEZGRkZG
ODAxNEUzNTRGRkYgW2NzYy5zeXNdDQp4ZW58TW9kdWxlQWRkOiBGRkZGRjgwMTRFMzYwMDAw
IC0gRkZGRkY4MDE0RTM3MUZGRiBbbnNpcHJveHkuc3lzXQ0KeGVufE1vZHVsZUFkZDogRkZG
RkY4MDE0RTM4MDAwMCAtIEZGRkZGODAxNEUzOERGRkYgW25wc3ZjdHJpZy5zeXNdDQp4ZW58
TW9kdWxlQWRkOiBGRkZGRjgwMTRFMzkwMDAwIC0gRkZGRkY4MDE0RTM5RkZGRiBbbXNzbWJp
b3Muc3lzXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0RTNCMDAwMCAtIEZGRkZGODAxNEUz
QjlGRkYgW2dwdWVuZXJneWRydi5zeXNdDQp4ZW58TW9kdWxlQWRkOiBGRkZGRjgwMTRFM0Mw
MDAwIC0gRkZGRkY4MDE0RTNFQkZGRiBbZGZzYy5zeXNdDQp4ZW58TW9kdWxlQWRkOiBGRkZG
RjgwMTRFNDEwMDAwIC0gRkZGRkY4MDE0RTQyNkZGRiBbYmFtLnN5c10NCnhlbnxNb2R1bGVB
ZGQ6IEZGRkZGODAxNEU0MzAwMDAgLSBGRkZGRjgwMTRFNDdERkZGIFthaGNhY2hlLnN5c10N
CnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAxNEU0ODAwMDAgLSBGRkZGRjgwMTRFNDkxRkZGIFtD
b21wb3NpdGVCdXMuc3lzXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0RTRBMDAwMCAtIEZG
RkZGODAxNEU0QUNGRkYgW2tkbmljLnN5c10NCnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAxNEU0
QjAwMDAgLSBGRkZGRjgwMTRFNEM0RkZGIFt1bWJ1cy5zeXNdDQp4ZW58TW9kdWxlQWRkOiBG
RkZGRjgwMTRFNEQwMDAwIC0gRkZGRkY4MDE0RTRGMEZGRiBbaTgwNDJwcnQuc3lzXQ0KeGVu
fE1vZHVsZUFkZDogRkZGRkY4MDE0RTUwMDAwMCAtIEZGRkZGODAxNEU1MTNGRkYgW2tiZGNs
YXNzLnN5c10NCnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAxNEU1MjAwMDAgLSBGRkZGRjgwMTRF
NTJFRkZGIFtmZGMuc3lzXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0RTUzMDAwMCAtIEZG
RkZGODAxNEU1NDFGRkYgW1J0bmljNjQuc3lzXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0
RTU1MDAwMCAtIEZGRkZGODAxNEU1OTBGRkYgW2ludGVscHBtLnN5c10NCnhlbnxNb2R1bGVB
ZGQ6IEZGRkZGODAxNEU1QTAwMDAgLSBGRkZGRjgwMTRFNUFDRkZGIFtOZGlzVmlydHVhbEJ1
cy5zeXNdDQp4ZW58TW9kdWxlQWRkOiBGRkZGRjgwMTRFNUIwMDAwIC0gRkZGRkY4MDE0RTVC
QkZGRiBbc3dlbnVtLnN5c10NCnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAxNEU1QzAwMDAgLSBG
RkZGRjgwMTRFNjM1RkZGIFtrcy5zeXNdDQp4ZW58TW9kdWxlQWRkOiBGRkZGRjgwMTRFNjQw
MDAwIC0gRkZGRkY4MDE0RTY0REZGRiBbcmRwYnVzLnN5c10NCnhlbnxNb2R1bGVBZGQ6IEZG
RkZGODAxNEU2NjAwMDAgLSBGRkZGRjgwMTRFNjZFRkZGIFtkdW1wX2R1bXBhdGEuc3lzXQ0K
eGVufE1vZHVsZUFkZDogRkZGRkY4MDE0RTY4MDAwMCAtIEZGRkZGODAxNEU2OENGRkYgW2R1
bXBfYXRhcGkuc3lzXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0RTZCMDAwMCAtIEZGRkZG
ODAxNEU2Q0NGRkYgW2R1bXBfZHVtcGZ2ZS5zeXNdDQp4ZW58TW9kdWxlQWRkOiBGRkZGOTMx
MjFCNTAwMDAwIC0gRkZGRjkzMTIxQjU5QUZGRiBbd2luMzJrLnN5c10NCnhlbnxNb2R1bGVB
ZGQ6IEZGRkY5MzEyMUIwMDAwMDAgLSBGRkZGOTMxMjFCMkQwRkZGIFt3aW4zMmtiYXNlLnN5
c10NCnhlbnxNb2R1bGVBZGQ6IEZGRkY5MzEyMUJENDAwMDAgLSBGRkZGOTMxMjFDMEY0RkZG
IFt3aW4zMmtmdWxsLnN5c10NCnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAxNEU2RDAwMDAgLSBG
RkZGRjgwMTRFNkVBRkZGIFttb25pdG9yLnN5c10NCnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAx
NEU2RjAwMDAgLSBGRkZGRjgwMTRFN0QwRkZGIFtkeGdtbXMyLnN5c10NCnhlbnxNb2R1bGVB
ZGQ6IEZGRkY5MzEyMUMxMDAwMDAgLSBGRkZGOTMxMjFDMTQ4RkZGIFtjZGQuZGxsXQ0KeGVu
fE1vZHVsZUFkZDogRkZGRkY4MDE0RTdFMDAwMCAtIEZGRkZGODAxNEU4MEFGRkYgW2x1YWZ2
LnN5c10NCnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAxNEU4MTAwMDAgLSBGRkZGRjgwMTRFODQ2
RkZGIFt3Y2lmcy5zeXNdDQp4ZW58TW9kdWxlQWRkOiBGRkZGRjgwMTRFODUwMDAwIC0gRkZG
RkY4MDE0RThDRkZGRiBbY2xkZmx0LnN5c10NCnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAxNEU4
RTAwMDAgLSBGRkZGRjgwMTRFOEY5RkZGIFtzdG9ycW9zZmx0LnN5c10NCnhlbnxNb2R1bGVB
ZGQ6IEZGRkZGODAxNEU5MDAwMDAgLSBGRkZGRjgwMTRFOTI2RkZGIFtiaW5kZmx0LnN5c10N
CnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAxNEU5MzAwMDAgLSBGRkZGRjgwMTRFOTQ3RkZGIFts
bHRkaW8uc3lzXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0RTk1MDAwMCAtIEZGRkZGODAx
NEU5NjdGRkYgW21zbGxkcC5zeXNdDQp4ZW58TW9kdWxlQWRkOiBGRkZGRjgwMTRFOTcwMDAw
IC0gRkZGRkY4MDE0RTk4QUZGRiBbcnNwbmRyLnN5c10NCnhlbnxNb2R1bGVBZGQ6IEZGRkZG
ODAxNEU5OTAwMDAgLSBGRkZGRjgwMTRFOUU1RkZGIFttc3F1aWMuc3lzXQ0KeGVufE1vZHVs
ZUFkZDogRkZGRkY4MDE0RTlGMDAwMCAtIEZGRkZGODAxNEVCNzZGRkYgW0hUVFAuc3lzXQ0K
eGVufE1vZHVsZUFkZDogRkZGRkY4MDE0RUI4MDAwMCAtIEZGRkZGODAxNEVCQTRGRkYgW2Jv
d3Nlci5zeXNdDQp4ZW58TW9kdWxlQWRkOiBGRkZGRjgwMTRFQkIwMDAwIC0gRkZGRkY4MDE0
RUJDOUZGRiBbbXBzZHJ2LnN5c10NCnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAxNEVCRDAwMDAg
LSBGRkZGRjgwMTRFQzYzRkZGIFttcnhzbWIuc3lzXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4
MDE0RUM3MDAwMCAtIEZGRkZGODAxNEVDQjVGRkYgW21yeHNtYjIwLnN5c10NCnhlbnxNb2R1
bGVBZGQ6IEZGRkZGODAxNEVDQzAwMDAgLSBGRkZGRjgwMTRFRDE2RkZGIFtzcnZuZXQuc3lz
XQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE0RUQyMDAwMCAtIEZGRkZGODAxNEVEMzNGRkYg
W21tY3NzLnN5c10NCnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAxNEVENDAwMDAgLSBGRkZGRjgw
MTRFRTA2RkZGIFtzcnYyLnN5c10NCnhlbnxNb2R1bGVBZGQ6IEZGRkZGODAxNEVFMTAwMDAg
LSBGRkZGRjgwMTRFRTM2RkZGIFtOZHUuc3lzXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE1
QzAzMDAwMCAtIEZGRkZGODAxNUMxMDZGRkYgW3BlYXV0aC5zeXNdDQp4ZW58TW9kdWxlQWRk
OiBGRkZGRjgwMTVDMTEwMDAwIC0gRkZGRkY4MDE1QzEyNEZGRiBbdGNwaXByZWcuc3lzXQ0K
eGVufE1vZHVsZUFkZDogRkZGRkY4MDE1QzEzMDAwMCAtIEZGRkZGODAxNUMxNDFGRkYgW2Nv
bmRydi5zeXNdDQp4ZW58TW9kdWxlQWRkOiBGRkZGRjgwMTVDMTUwMDAwIC0gRkZGRkY4MDE1
QzE2QkZGRiBbV2ROaXNEcnYuc3lzXQ0KeGVufE1vZHVsZUFkZDogRkZGRkY4MDE1QzE3MDAw
MCAtIEZGRkZGODAxNUMxRDVGRkYgW3hlbmJ1cy5zeXNdDQp4ZW58TW9kdWxlQWRkOiBGRkZG
RjgwMTVCNDAwMDAwIC0gRkZGRkY4MDE1QjQyM0ZGRiBbeGVuLnN5c10NCnhlbnxVbnBsdWdT
ZXRSZXF1ZXN0OiA9PT09Pg0KeGVufFVucGx1Z1NldFJlcXVlc3Q6IDw9PT09DQp4ZW58VW5w
bHVnU2V0UmVxdWVzdDogPT09PT4NCnhlbnxVbnBsdWdTZXRSZXF1ZXN0OiA8PT09PQ0KeGVu
fERsbEluaXRpYWxpemU6IDw9PT09DQp4ZW58TW9kdWxlQWRkOiBGRkZGRjgwMTVDMTcwMDAw
IC0gRkZGRkY4MDE1QzFENUZGRiBbeGVuYnVzLnN5c10NCnhlbmJ1c3xEcml2ZXJFbnRyeTog
PT09PT4NCnhlbmJ1c3xEcml2ZXJFbnRyeTogOS4xLjAgKDEpICgyMy4wNi4yMDIzKQ0KeGVu
fExvZ1JlYWRMb2dMZXZlbDogZmFpbDEgKGMwMDAwMDM0KQ0KeGVuYnVzfERyaXZlckVudHJ5
OiA8PT09PQ0KeGVuYnVzfERyaXZlckFkZERldmljZTogPT09PT4NCnhlbmJ1c3xEcml2ZXJH
ZXRBY3RpdmU6ID09PT0+DQp4ZW5idXN8RHJpdmVyU2V0QWN0aXZlOiA9PT09Pg0KeGVuYnVz
fERyaXZlclNldEFjdGl2ZTogUENJXFZFTl81ODUzJkRFVl8wMDAxJlNVQlNZU18wMDAxNTg1
MyZSRVZfMDFcMTA6IFxSZWdpc3RyeVxNYWNoaW5lXFN5c3RlbVxDdXJyZW50Q29udHJvbFNl
dFxTZXJ2aWNlc1xwY2ksNjU1MzYsMCwyLDANCnhlbmJ1c3xEcml2ZXJTZXRBY3RpdmU6IDw9
PT09DQp4ZW5idXN8RGVidWdJbml0aWFsaXplOiA9PT09Pg0KeGVuYnVzfERlYnVnSW5pdGlh
bGl6ZTogPD09PT0NCnhlbmJ1c3xTdXNwZW5kSW5pdGlhbGl6ZTogPT09PT4NCnhlbmJ1c3xT
dXNwZW5kSW5pdGlhbGl6ZTogPD09PT0NCnhlbmJ1c3xTaGFyZWRJbmZvSW5pdGlhbGl6ZTog
PT09PT4NCnhlbmJ1c3xTaGFyZWRJbmZvSW5pdGlhbGl6ZTogPD09PT0NCnhlbmJ1c3xFdnRj
aG5Jbml0aWFsaXplOiA9PT09Pg0KeGVuYnVzfEV2dGNoblR3b0xldmVsSW5pdGlhbGl6ZTog
PT09PT4NCnhlbmJ1c3xFdnRjaG5Ud29MZXZlbEluaXRpYWxpemU6IDw9PT09DQp4ZW5idXN8
RXZ0Y2huRmlmb0luaXRpYWxpemU6ID09PT0+DQp4ZW5idXN8RXZ0Y2huRmlmb0luaXRpYWxp
emU6IDw9PT09DQp4ZW5idXN8RXZ0Y2huSW5pdGlhbGl6ZTogPD09PT0NCnhlbmJ1c3xSYW5n
ZVNldEluaXRpYWxpemU6ID09PT0+DQp4ZW5idXN8UmFuZ2VTZXRJbml0aWFsaXplOiA8PT09
PQ0KeGVuYnVzfENhY2hlSW5pdGlhbGl6ZTogPT09PT4NCnhlbmJ1c3xDYWNoZUluaXRpYWxp
emU6IDw9PT09DQp4ZW5idXN8R250dGFiSW5pdGlhbGl6ZTogPT09PT4NCnhlbmJ1c3xHbnR0
YWJJbml0aWFsaXplOiA8PT09PQ0KeGVuYnVzfFN0b3JlSW5pdGlhbGl6ZTogPT09PT4NCnhl
bmJ1c3xTdG9yZUluaXRpYWxpemU6IDw9PT09DQp4ZW5idXN8Q29uc29sZUluaXRpYWxpemU6
ID09PT0+DQp4ZW5idXN8Q29uc29sZUluaXRpYWxpemU6IDw9PT09DQp4ZW5idXN8VW5wbHVn
SW5pdGlhbGl6ZTogPT09PT4NCnhlbmJ1c3xVbnBsdWdJbml0aWFsaXplOiA8PT09PQ0KeGVu
YnVzfEJhbGxvb25Jbml0aWFsaXplOiA9PT09Pg0KeGVuYnVzfEJhbGxvb25Jbml0aWFsaXpl
OiA8PT09PQ0KeGVuYnVzfEZkb1NldEZyaWVuZGx5TmFtZTogWGVuIFBWIEJ1cyAoMDAwMSkN
CnhlbmJ1c3xGZG9DcmVhdGU6IEZGRkZFNzhGN0QwRTFCRjAgKFhQMDAwMSBYRU5CVVMpIFtB
Q1RJVkVdDQp4ZW5idXN8RmlsdGVyc0luc3RhbGxDbGFzczogPT09PT4NCnhlbmJ1c3xGaWx0
ZXJzSW5zdGFsbENsYXNzOiBERVZDTEFTU19TWVNURU0gWEVORklMVA0KeGVuYnVzfEZpbHRl
cnNJbnN0YWxsQ2xhc3M6IDw9PT09DQp4ZW5idXN8RmlsdGVyc0luc3RhbGxDbGFzczogPT09
PT4NCnhlbmJ1c3xGaWx0ZXJzSW5zdGFsbENsYXNzOiBERVZDTEFTU19IREMgWEVORklMVA0K
eGVuYnVzfEZpbHRlcnNJbnN0YWxsQ2xhc3M6IDw9PT09DQp4ZW5idXN8RHJpdmVyQWRkRGV2
aWNlOiA8PT09PQ0KeGVuYnVzfEZkb0Rpc3BhdGNoUG5wOiA9PT09PiAoMTg6UVVFUllfTEVH
QUNZX0JVU19JTkZPUk1BVElPTikNCnhlbmJ1c3xGZG9EaXNwYXRjaFBucDogPD09PT0gKDE4
OlFVRVJZX0xFR0FDWV9CVVNfSU5GT1JNQVRJT04pKGMwMDAwMGJiKQ0KeGVuYnVzfEZkb0Rp
c3BhdGNoUG5wOiA9PT09PiAoMGQ6RklMVEVSX1JFU09VUkNFX1JFUVVJUkVNRU5UUykNCnhl
bmJ1c3xGZG9EdW1wSW9SZXNvdXJjZUxpc3Q6IFhQMDAwMSBYRU5CVVM6IDANCnhlbmJ1c3xG
ZG9EdW1wSW9SZXNvdXJjZURlc2NyaXB0b3I6IFhQMDAwMSBYRU5CVVM6IFBvcnQNCnhlbmJ1
c3xGZG9EdW1wSW9SZXNvdXJjZURlc2NyaXB0b3I6IFByZWZlcnJlZA0KeGVuYnVzfEZkb0R1
bXBJb1Jlc291cmNlRGVzY3JpcHRvcjogU2hhcmVEaXNwb3NpdGlvbiA9IERldmljZUV4Y2x1
c2l2ZSBGbGFncyA9IDAxMzENCnhlbmJ1c3xGZG9EdW1wSW9SZXNvdXJjZUxpc3Q6IFhQMDAw
MSBYRU5CVVM6IDENCnhlbmJ1c3xGZG9EdW1wSW9SZXNvdXJjZURlc2NyaXB0b3I6IFhQMDAw
MSBYRU5CVVM6IFBvcnQNCnhlbmJ1c3xGZG9EdW1wSW9SZXNvdXJjZURlc2NyaXB0b3I6IEFs
dGVybmF0aXZlDQp4ZW5idXN8RmRvRHVtcElvUmVzb3VyY2VEZXNjcmlwdG9yOiBTaGFyZURp
c3Bvc2l0aW9uID0gRGV2aWNlRXhjbHVzaXZlIEZsYWdzID0gMDEzMQ0KeGVuYnVzfEZkb0R1
bXBJb1Jlc291cmNlTGlzdDogWFAwMDAxIFhFTkJVUzogMg0KeGVuYnVzfEZkb0R1bXBJb1Jl
c291cmNlRGVzY3JpcHRvcjogWFAwMDAxIFhFTkJVUzogRGV2aWNlUHJpdmF0ZQ0KeGVuYnVz
fEZkb0R1bXBJb1Jlc291cmNlRGVzY3JpcHRvcjogUmVxdWlyZWQNCnhlbmJ1c3xGZG9EdW1w
SW9SZXNvdXJjZURlc2NyaXB0b3I6IFNoYXJlRGlzcG9zaXRpb24gPSBEZXZpY2VFeGNsdXNp
dmUgRmxhZ3MgPSAwMDAwDQp4ZW5idXN8RmRvRHVtcElvUmVzb3VyY2VMaXN0OiBYUDAwMDEg
WEVOQlVTOiAzDQp4ZW5idXN8RmRvRHVtcElvUmVzb3VyY2VEZXNjcmlwdG9yOiBYUDAwMDEg
WEVOQlVTOiBNZW1vcnkNCnhlbmJ1c3xGZG9EdW1wSW9SZXNvdXJjZURlc2NyaXB0b3I6IFBy
ZWZlcnJlZA0KeGVuYnVzfEZkb0R1bXBJb1Jlc291cmNlRGVzY3JpcHRvcjogU2hhcmVEaXNw
b3NpdGlvbiA9IERldmljZUV4Y2x1c2l2ZSBGbGFncyA9IDAwODQNCnhlbmJ1c3xGZG9EdW1w
SW9SZXNvdXJjZURlc2NyaXB0b3I6IExlbmd0aCA9IDAxMDAwMDAwIEFsaWdubWVudCA9IDAw
MDAwMDAxDQogTWluaW11bUFkZHJlc3MgPSAwMDAwMDAwMC5mMDAwMDAwMCBNYXhpbXVtQWRk
cmVzcyA9IDAwMDAwMDAwLmYwZmZmZmZmDQp4ZW5idXN8RmRvRHVtcElvUmVzb3VyY2VMaXN0
OiBYUDAwMDEgWEVOQlVTOiA0DQp4ZW5idXN8RmRvRHVtcElvUmVzb3VyY2VEZXNjcmlwdG9y
OiBYUDAwMDEgWEVOQlVTOiBNZW1vcnkNCnhlbmJ1c3xGZG9EdW1wSW9SZXNvdXJjZURlc2Ny
aXB0b3I6IEFsdGVybmF0aXZlDQp4ZW5idXN8RmRvRHVtcElvUmVzb3VyY2VEZXNjcmlwdG9y
OiBTaGFyZURpc3Bvc2l0aW9uID0gRGV2aWNlRXhjbHVzaXZlIEZsYWdzID0gMDA4NA0KeGVu
YnVzfEZkb0R1bXBJb1Jlc291cmNlRGVzY3JpcHRvcjogTGVuZ3RoID0gMDEwMDAwMDAgQWxp
Z25tZW50ID0gMDEwMDAwMDANCiBNaW5pbXVtQWRkcmVzcyA9IDAwMDAwMDAwLjAwMDAwMDAw
IE1heGltdW1BZGRyZXNzID0gMDAwMDAwMDAuZmZmZmZmZmYNCnhlbmJ1c3xGZG9EdW1wSW9S
ZXNvdXJjZUxpc3Q6IFhQMDAwMSBYRU5CVVM6IDUNCnhlbmJ1c3xGZG9EdW1wSW9SZXNvdXJj
ZURlc2NyaXB0b3I6IFhQMDAwMSBYRU5CVVM6IERldmljZVByaXZhdGUNCnhlbmJ1c3xGZG9E
dW1wSW9SZXNvdXJjZURlc2NyaXB0b3I6IFJlcXVpcmVkDQp4ZW5idXN8RmRvRHVtcElvUmVz
b3VyY2VEZXNjcmlwdG9yOiBTaGFyZURpc3Bvc2l0aW9uID0gRGV2aWNlRXhjbHVzaXZlIEZs
YWdzID0gMDAwMA0KeGVuYnVzfEZkb0R1bXBJb1Jlc291cmNlTGlzdDogWFAwMDAxIFhFTkJV
UzogNg0KeGVuYnVzfEZkb0R1bXBJb1Jlc291cmNlRGVzY3JpcHRvcjogWFAwMDAxIFhFTkJV
UzogSW50ZXJydXB0DQp4ZW5idXN8RmRvRHVtcElvUmVzb3VyY2VEZXNjcmlwdG9yOiBSZXF1
aXJlZA0KeGVuYnVzfEZkb0R1bXBJb1Jlc291cmNlRGVzY3JpcHRvcjogU2hhcmVEaXNwb3Np
dGlvbiA9IFNoYXJlZCBGbGFncyA9IDAwMDQNCnhlbmJ1c3xGZG9EdW1wSW9SZXNvdXJjZURl
c2NyaXB0b3I6IE1pbmltdW1WZWN0b3IgPSAwMDAwMDAwMCBNYXhpbXVtVmVjdG9yID0gZmZm
ZmZmZmYgQWZmaW5pdHlQb2xpY3kgPSBTcGVjaWZpZWRQcm9jZXNzb3JzIFByaW9yaXR5UG9s
aWN5ID0gVW5kZWZpbmVkIEdyb3VwID0gMCBUYXJnZXR0ZWRQcm9jZXNzb3JzID0gMDAwMDAw
MDAwMDAwMDAwMQ0KeGVuYnVzfEZkb0R1bXBJb1Jlc291cmNlTGlzdDogWFAwMDAxIFhFTkJV
UzogNw0KeGVuYnVzfEZkb0R1bXBJb1Jlc291cmNlRGVzY3JpcHRvcjogWFAwMDAxIFhFTkJV
UzogSW50ZXJydXB0DQp4ZW5idXN8RmRvRHVtcElvUmVzb3VyY2VEZXNjcmlwdG9yOiBSZXF1
aXJlZA0KeGVuYnVzfEZkb0R1bXBJb1Jlc291cmNlRGVzY3JpcHRvcjogU2hhcmVEaXNwb3Np
dGlvbiA9IERldmljZUV4Y2x1c2l2ZSBGbGFncyA9IDAwMDcNCnhlbmJ1c3xGZG9EdW1wSW9S
ZXNvdXJjZURlc2NyaXB0b3I6IE1pbmltdW1WZWN0b3IgPSBmZmZmZmZmZSBNYXhpbXVtVmVj
dG9yID0gZmZmZmZmZmUgQWZmaW5pdHlQb2xpY3kgPSBTcGVjaWZpZWRQcm9jZXNzb3JzIFBy
aW9yaXR5UG9saWN5ID0gVW5kZWZpbmVkIEdyb3VwID0gMCBUYXJnZXR0ZWRQcm9jZXNzb3Jz
ID0gMDAwMDAwMDAwMDAwMDAwMQ0KeGVuYnVzfEZkb0R1bXBJb1Jlc291cmNlTGlzdDogWFAw
MDAxIFhFTkJVUzogOA0KeGVuYnVzfEZkb0R1bXBJb1Jlc291cmNlRGVzY3JpcHRvcjogWFAw
MDAxIFhFTkJVUzogSW50ZXJydXB0DQp4ZW5idXN8RmRvRHVtcElvUmVzb3VyY2VEZXNjcmlw
dG9yOiBSZXF1aXJlZA0KeGVuYnVzfEZkb0R1bXBJb1Jlc291cmNlRGVzY3JpcHRvcjogU2hh
cmVEaXNwb3NpdGlvbiA9IERldmljZUV4Y2x1c2l2ZSBGbGFncyA9IDAwMDcNCnhlbmJ1c3xG
ZG9EdW1wSW9SZXNvdXJjZURlc2NyaXB0b3I6IE1pbmltdW1WZWN0b3IgPSBmZmZmZmZmZSBN
YXhpbXVtVmVjdG9yID0gZmZmZmZmZmUgQWZmaW5pdHlQb2xpY3kgPSBTcGVjaWZpZWRQcm9j
ZXNzb3JzIFByaW9yaXR5UG9saWN5ID0gVW5kZWZpbmVkIEdyb3VwID0gMCBUYXJnZXR0ZWRQ
cm9jZXNzb3JzID0gMDAwMDAwMDAwMDAwMDAwMg0KeGVuYnVzfEZkb0Rpc3BhdGNoUG5wOiA8
PT09PSAoMGQ6RklMVEVSX1JFU09VUkNFX1JFUVVJUkVNRU5UUykoMDAwMDAwMDApDQp4ZW58
TW9kdWxlQWRkOiBGRkZGRjgwMTVCNDMwMDAwIC0gRkZGRkY4MDE1QjQ2N0ZGRiBbTXBLc2xE
cnYuc3lzXQ0KeGVuYnVzfEZkb0Rpc3BhdGNoUG5wOiA9PT09PiAoMDA6U1RBUlRfREVWSUNF
KQ0KeGVuYnVzfEZkb0R1bXBDbUZ1bGxSZXNvdXJjZURlc2NyaXB0b3I6IFhQMDAwMSBYRU5C
VVM6IFJBVzogSW50ZXJmYWNlVHlwZSA9IFBDSUJ1cyBCdXNOdW1iZXIgPSAwDQp4ZW5idXN8
RmRvRHVtcENtUGFydGlhbFJlc291cmNlTGlzdDogWFAwMDAxIFhFTkJVUzogUkFXOiBWZXJz
aW9uID0gMSBSZXZpc2lvbiA9IDEgQ291bnQgPSA3DQp4ZW5idXN8RmRvRHVtcENtUGFydGlh
bFJlc291cmNlTGlzdDogWFAwMDAxIFhFTkJVUzogUkFXOiAwDQp4ZW5idXN8RmRvRHVtcENt
UGFydGlhbFJlc291cmNlRGVzY3JpcHRvcjogWFAwMDAxIFhFTkJVUzogUkFXOiBQb3J0IFNo
YXJlZERpc3Bvc2l0aW9uPURldmljZUV4Y2x1c2l2ZSBGbGFncz0wMTMxDQp4ZW5idXN8RmRv
RHVtcENtUGFydGlhbFJlc291cmNlTGlzdDogWFAwMDAxIFhFTkJVUzogUkFXOiAxDQp4ZW5i
dXN8RmRvRHVtcENtUGFydGlhbFJlc291cmNlRGVzY3JpcHRvcjogWFAwMDAxIFhFTkJVUzog
UkFXOiBEZXZpY2VQcml2YXRlIFNoYXJlZERpc3Bvc2l0aW9uPURldmljZUV4Y2x1c2l2ZSBG
bGFncz0wMDAwDQp4ZW5idXN8RmRvRHVtcENtUGFydGlhbFJlc291cmNlTGlzdDogWFAwMDAx
IFhFTkJVUzogUkFXOiAyDQp4ZW5idXN8RmRvRHVtcENtUGFydGlhbFJlc291cmNlRGVzY3Jp
cHRvcjogWFAwMDAxIFhFTkJVUzogUkFXOiBNZW1vcnkgU2hhcmVkRGlzcG9zaXRpb249RGV2
aWNlRXhjbHVzaXZlIEZsYWdzPTAwODQNCnhlbmJ1c3xGZG9EdW1wQ21QYXJ0aWFsUmVzb3Vy
Y2VEZXNjcmlwdG9yOiBYUDAwMDEgWEVOQlVTOiBSQVc6IFN0YXJ0ID0gMDAwMDAwMDAuZjAw
MDAwMDAgTGVuZ3RoID0gMDEwMDAwMDANCnhlbmJ1c3xGZG9EdW1wQ21QYXJ0aWFsUmVzb3Vy
Y2VMaXN0OiBYUDAwMDEgWEVOQlVTOiBSQVc6IDMNCnhlbmJ1c3xGZG9EdW1wQ21QYXJ0aWFs
UmVzb3VyY2VEZXNjcmlwdG9yOiBYUDAwMDEgWEVOQlVTOiBSQVc6IERldmljZVByaXZhdGUg
U2hhcmVkRGlzcG9zaXRpb249RGV2aWNlRXhjbHVzaXZlIEZsYWdzPTAwMDANCnhlbmJ1c3xG
ZG9EdW1wQ21QYXJ0aWFsUmVzb3VyY2VMaXN0OiBYUDAwMDEgWEVOQlVTOiBSQVc6IDQNCnhl
bmJ1c3xGZG9EdW1wQ21QYXJ0aWFsUmVzb3VyY2VEZXNjcmlwdG9yOiBYUDAwMDEgWEVOQlVT
OiBSQVc6IEludGVycnVwdCBTaGFyZWREaXNwb3NpdGlvbj1TaGFyZWQgRmxhZ3M9MDAwNA0K
eGVuYnVzfEZkb0R1bXBDbVBhcnRpYWxSZXNvdXJjZURlc2NyaXB0b3I6IFhQMDAwMSBYRU5C
VVM6IFJBVzogTGV2ZWwgPSAwMDAwMDAxOCBWZWN0b3IgPSAwMDAwMDAxOCBBZmZpbml0eSA9
IDAwMDAwMDAwRkZGRkZGRkYNCnhlbmJ1c3xGZG9EdW1wQ21QYXJ0aWFsUmVzb3VyY2VMaXN0
OiBYUDAwMDEgWEVOQlVTOiBSQVc6IDUNCnhlbmJ1c3xGZG9EdW1wQ21QYXJ0aWFsUmVzb3Vy
Y2VEZXNjcmlwdG9yOiBYUDAwMDEgWEVOQlVTOiBSQVc6IEludGVycnVwdCBTaGFyZWREaXNw
b3NpdGlvbj1EZXZpY2VFeGNsdXNpdmUgRmxhZ3M9MDAwNw0KeGVuYnVzfEZkb0R1bXBDbVBh
cnRpYWxSZXNvdXJjZURlc2NyaXB0b3I6IFhQMDAwMSBYRU5CVVM6IFJBVzogTWVzc2FnZUNv
dW50ID0gMDAwMDAwMDEgVmVjdG9yID0gZmZmZmZmZmUgQWZmaW5pdHkgPSAwMDAwMDAwMDAw
MDAwMDAxDQp4ZW5idXN8RmRvRHVtcENtUGFydGlhbFJlc291cmNlTGlzdDogWFAwMDAxIFhF
TkJVUzogUkFXOiA2DQp4ZW5idXN8RmRvRHVtcENtUGFydGlhbFJlc291cmNlRGVzY3JpcHRv
cjogWFAwMDAxIFhFTkJVUzogUkFXOiBJbnRlcnJ1cHQgU2hhcmVkRGlzcG9zaXRpb249RGV2
aWNlRXhjbHVzaXZlIEZsYWdzPTAwMDcNCnhlbmJ1c3xGZG9EdW1wQ21QYXJ0aWFsUmVzb3Vy
Y2VEZXNjcmlwdG9yOiBYUDAwMDEgWEVOQlVTOiBSQVc6IE1lc3NhZ2VDb3VudCA9IDAwMDAw
MDAxIFZlY3RvciA9IGZmZmZmZmZkIEFmZmluaXR5ID0gMDAwMDAwMDAwMDAwMDAwMg0KeGVu
YnVzfEZkb0R1bXBDbUZ1bGxSZXNvdXJjZURlc2NyaXB0b3I6IFhQMDAwMSBYRU5CVVM6IFRS
QU5TTEFURUQ6IEludGVyZmFjZVR5cGUgPSBQQ0lCdXMgQnVzTnVtYmVyID0gMA0KeGVuYnVz
fEZkb0R1bXBDbVBhcnRpYWxSZXNvdXJjZUxpc3Q6IFhQMDAwMSBYRU5CVVM6IFRSQU5TTEFU
RUQ6IFZlcnNpb24gPSAxIFJldmlzaW9uID0gMSBDb3VudCA9IDcNCnhlbmJ1c3xGZG9EdW1w
Q21QYXJ0aWFsUmVzb3VyY2VMaXN0OiBYUDAwMDEgWEVOQlVTOiBUUkFOU0xBVEVEOiAwDQp4
ZW5idXN8RmRvRHVtcENtUGFydGlhbFJlc291cmNlRGVzY3JpcHRvcjogWFAwMDAxIFhFTkJV
UzogVFJBTlNMQVRFRDogUG9ydCBTaGFyZWREaXNwb3NpdGlvbj1EZXZpY2VFeGNsdXNpdmUg
RmxhZ3M9MDEzMQ0KeGVuYnVzfEZkb0R1bXBDbVBhcnRpYWxSZXNvdXJjZUxpc3Q6IFhQMDAw
MSBYRU5CVVM6IFRSQU5TTEFURUQ6IDENCnhlbmJ1c3xGZG9EdW1wQ21QYXJ0aWFsUmVzb3Vy
Y2VEZXNjcmlwdG9yOiBYUDAwMDEgWEVOQlVTOiBUUkFOU0xBVEVEOiBEZXZpY2VQcml2YXRl
IFNoYXJlZERpc3Bvc2l0aW9uPURldmljZUV4Y2x1c2l2ZSBGbGFncz0wMDAwDQp4ZW5idXN8
RmRvRHVtcENtUGFydGlhbFJlc291cmNlTGlzdDogWFAwMDAxIFhFTkJVUzogVFJBTlNMQVRF
RDogMg0KeGVuYnVzfEZkb0R1bXBDbVBhcnRpYWxSZXNvdXJjZURlc2NyaXB0b3I6IFhQMDAw
MSBYRU5CVVM6IFRSQU5TTEFURUQ6IE1lbW9yeSBTaGFyZWREaXNwb3NpdGlvbj1EZXZpY2VF
eGNsdXNpdmUgRmxhZ3M9MDA4NA0KeGVuYnVzfEZkb0R1bXBDbVBhcnRpYWxSZXNvdXJjZURl
c2NyaXB0b3I6IFhQMDAwMSBYRU5CVVM6IFRSQU5TTEFURUQ6IFN0YXJ0ID0gMDAwMDAwMDAu
ZjAwMDAwMDAgTGVuZ3RoID0gMDEwMDAwMDANCnhlbmJ1c3xGZG9EdW1wQ21QYXJ0aWFsUmVz
b3VyY2VMaXN0OiBYUDAwMDEgWEVOQlVTOiBUUkFOU0xBVEVEOiAzDQp4ZW5idXN8RmRvRHVt
cENtUGFydGlhbFJlc291cmNlRGVzY3JpcHRvcjogWFAwMDAxIFhFTkJVUzogVFJBTlNMQVRF
RDogRGV2aWNlUHJpdmF0ZSBTaGFyZWREaXNwb3NpdGlvbj1EZXZpY2VFeGNsdXNpdmUgRmxh
Z3M9MDAwMA0KeGVuYnVzfEZkb0R1bXBDbVBhcnRpYWxSZXNvdXJjZUxpc3Q6IFhQMDAwMSBY
RU5CVVM6IFRSQU5TTEFURUQ6IDQNCnhlbmJ1c3xGZG9EdW1wQ21QYXJ0aWFsUmVzb3VyY2VE
ZXNjcmlwdG9yOiBYUDAwMDEgWEVOQlVTOiBUUkFOU0xBVEVEOiBJbnRlcnJ1cHQgU2hhcmVk
RGlzcG9zaXRpb249U2hhcmVkIEZsYWdzPTAwMDQNCnhlbmJ1c3xGZG9EdW1wQ21QYXJ0aWFs
UmVzb3VyY2VEZXNjcmlwdG9yOiBYUDAwMDEgWEVOQlVTOiBUUkFOU0xBVEVEOiBMZXZlbCA9
IDAwMDAwMDA3IFZlY3RvciA9IDAwMDAwMDcxIEFmZmluaXR5ID0gMDAwMDAwMDAwMDAwMDAw
MQ0KeGVuYnVzfEZkb0R1bXBDbVBhcnRpYWxSZXNvdXJjZUxpc3Q6IFhQMDAwMSBYRU5CVVM6
IFRSQU5TTEFURUQ6IDUNCnhlbmJ1c3xGZG9EdW1wQ21QYXJ0aWFsUmVzb3VyY2VEZXNjcmlw
dG9yOiBYUDAwMDEgWEVOQlVTOiBUUkFOU0xBVEVEOiBJbnRlcnJ1cHQgU2hhcmVkRGlzcG9z
aXRpb249RGV2aWNlRXhjbHVzaXZlIEZsYWdzPTAwMDcNCnhlbmJ1c3xGZG9EdW1wQ21QYXJ0
aWFsUmVzb3VyY2VEZXNjcmlwdG9yOiBYUDAwMDEgWEVOQlVTOiBUUkFOU0xBVEVEOiBMZXZl
bCA9IDAwMDAwMDA4IFZlY3RvciA9IDAwMDAwMDgxIEFmZmluaXR5ID0gMDAwMDAwMDAwMDAw
MDAwMQ0KeGVuYnVzfEZkb0R1bXBDbVBhcnRpYWxSZXNvdXJjZUxpc3Q6IFhQMDAwMSBYRU5C
VVM6IFRSQU5TTEFURUQ6IDYNCnhlbmJ1c3xGZG9EdW1wQ21QYXJ0aWFsUmVzb3VyY2VEZXNj
cmlwdG9yOiBYUDAwMDEgWEVOQlVTOiBUUkFOU0xBVEVEOiBJbnRlcnJ1cHQgU2hhcmVkRGlz
cG9zaXRpb249RGV2aWNlRXhjbHVzaXZlIEZsYWdzPTAwMDcNCnhlbmJ1c3xGZG9EdW1wQ21Q
YXJ0aWFsUmVzb3VyY2VEZXNjcmlwdG9yOiBYUDAwMDEgWEVOQlVTOiBUUkFOU0xBVEVEOiBM
ZXZlbCA9IDAwMDAwMDA4IFZlY3RvciA9IDAwMDAwMDgxIEFmZmluaXR5ID0gMDAwMDAwMDAw
MDAwMDAwMg0KeGVuYnVzfENhY2hlTW9uaXRvcjogPT09PT4NCnhlbmJ1c3xTdG9yZVdhdGNo
ZG9nOiA9PT09Pg0KeGVuYnVzfEZkb0Nvbm5lY3RJbnRlcnJ1cHQ6ID09PT0+DQp4ZW5idXN8
RmRvQ29ubmVjdEludGVycnVwdDogRkZGRkU3OEY3OUY5RUJGMDogU2hhcmVkIExldmVsU2Vu
c2l0aXZlIENQVSAwOjAgVkVDVE9SIDcxDQp4ZW5idXN8RmRvQ29ubmVjdEludGVycnVwdDog
PD09PT0NCnhlbmJ1c3xGZG9Db25uZWN0SW50ZXJydXB0OiA9PT09Pg0KeGVuYnVzfEZkb0Nv
bm5lY3RJbnRlcnJ1cHQ6IEZGRkZFNzhGNzlGOUVFMTA6IERldmljZUV4Y2x1c2l2ZSBMYXRj
aGVkIENQVSAwOjAgVkVDVE9SIDgxDQp4ZW5idXN8RmRvQ29ubmVjdEludGVycnVwdDogPD09
PT0NCnhlbmJ1c3xGZG9Db25uZWN0SW50ZXJydXB0OiA9PT09Pg0KeGVuYnVzfEZkb0Nvbm5l
Y3RJbnRlcnJ1cHQ6IEZGRkZFNzhGN0U5QzU5MTA6IERldmljZUV4Y2x1c2l2ZSBMYXRjaGVk
IENQVSAwOjEgVkVDVE9SIDgxDQp4ZW5idXN8RmRvQ29ubmVjdEludGVycnVwdDogPD09PT0N
CnhlbmJ1c3xGZG9EM1RvRDA6ID09PT0+DQp4ZW5idXN8RGVidWdBY3F1aXJlOiA9PT09Pg0K
eGVuYnVzfERlYnVnQWNxdWlyZTogPD09PT0NCnhlbmJ1c3xTdXNwZW5kQWNxdWlyZTogPT09
PT4NCnhlbmJ1c3xTdXNwZW5kQWNxdWlyZTogPD09PT0NCnhlbmJ1c3xSYW5nZVNldEFjcXVp
cmU6ID09PT0+DQp4ZW5idXN8UmFuZ2VTZXRBY3F1aXJlOiA8PT09PQ0KeGVuYnVzfFJhbmdl
U2V0Q3JlYXRlOiA9PT09PiAoaG9sZSkNCnhlbmJ1c3xSYW5nZVNldENyZWF0ZTogPD09PT0N
CnhlbmJ1c3xGZG9TY2FuOiA9PT09Pg0KeGVuYnVzfEZkb0NyZWF0ZUhvbGU6IChNRU1PUlkp
IDAwMTBhODAwIC0gMDAxMGE5ZmYNCnhlbmJ1c3xFdnRjaG5BY3F1aXJlOiA9PT09Pg0KeGVu
YnVzfFNoYXJlZEluZm9BY3F1aXJlOiA9PT09Pg0KeGVuYnVzfFNoYXJlZEluZm9BY3F1aXJl
OiA8PT09PQ0KeGVuYnVzfEV2dGNobkZpZm9BY3F1aXJlOiA9PT09Pg0KeGVuYnVzfEV2dGNo
bkZpZm9BY3F1aXJlOiA8PT09PQ0KeGVuYnVzfEV2dGNobkFiaUFjcXVpcmU6IEZJRk8NCnhl
bmJ1c3xFdnRjaG5JbnRlcnJ1cHRFbmFibGU6ID09PT0+DQp4ZW5idXN8RXZ0Y2huSW50ZXJy
dXB0RW5hYmxlOiBDUFUgMDowIChWZWN0b3IgPSAxMjkpDQp4ZW5idXN8RXZ0Y2huSW50ZXJy
dXB0RW5hYmxlOiBDUFUgMDoxIChWZWN0b3IgPSAxMjkpDQp4ZW5idXN8RXZ0Y2huSW50ZXJy
dXB0RW5hYmxlOiBDQUxMQkFDSyBWSUEgKFZlY3RvciA9IDI0KQ0KeGVuYnVzfEV2dGNobklu
dGVycnVwdEVuYWJsZTogPD09PT0NCnhlbmJ1c3xFdnRjaG5BY3F1aXJlOiA8PT09PQ0KeGVu
YnVzfFN0b3JlQWNxdWlyZTogPT09PT4NCnhlbmJ1c3xHbnR0YWJBY3F1aXJlOiA9PT09Pg0K
eGVuYnVzfFJhbmdlU2V0UG9wOiBmYWlsMw0KeGVuYnVzfFJhbmdlU2V0UG9wOiBmYWlsMg0K
eGVuYnVzfFJhbmdlU2V0UG9wOiBmYWlsMSAoYzAwMDAwOWEpDQp4ZW5idXN8RmRvQWxsb2Nh
dGVIb2xlOiBmYWlsMSAoYzAwMDAwOWEpDQp4ZW5idXN8R250dGFiQWNxdWlyZTogZmFpbDIN
CnhlbmJ1c3xHbnR0YWJBY3F1aXJlOiBmYWlsMSAoYzAwMDAwOWEpDQp4ZW5idXN8U3RvcmVB
Y3F1aXJlOiBmYWlsMSAoYzAwMDAwOWEpDQp4ZW5idXN8RmRvRDNUb0QwOiBmYWlsNg0KeGVu
YnVzfEV2dGNoblJlbGVhc2U6ID09PT0+DQp4ZW5idXN8RXZ0Y2huSW50ZXJydXB0RGlzYWJs
ZTogPT09PT4NCnhlbmJ1c3xFdnRjaG5JbnRlcnJ1cHREaXNhYmxlOiA8PT09PQ0KeGVuYnVz
fEV2dGNobkZpZm9SZWxlYXNlOiA9PT09Pg0KeGVuYnVzfEZkb1NjYW46IHdhaXRpbmcuLi4N
CnhlbmJ1c3xGZG9TdXNwZW5kOiA9PT09Pg0KeGVuYnVzfEZkb0JhbGxvb246ID09PT0+DQp4
ZW5idXN8RmRvQmFsbG9vbjogd2FpdGluZy4uLg0KeGVuYnVzfEV2dGNobkZpZm9SZWxlYXNl
OiA8PT09PQ0KeGVuYnVzfFNoYXJlZEluZm9SZWxlYXNlOiA9PT09Pg0KeGVuYnVzfFNoYXJl
ZEluZm9SZWxlYXNlOiA8PT09PQ0KeGVuYnVzfEV2dGNoblJlbGVhc2U6IDw9PT09DQp4ZW5i
dXN8RmRvRDNUb0QwOiBmYWlsNQ0KeGVuYnVzfFJhbmdlU2V0RGVzdHJveTogPT09PT4gKGhv
bGUpDQp4ZW5idXN8UmFuZ2VTZXREZXN0cm95OiA8PT09PQ0KeGVuYnVzfEZkb0QzVG9EMDog
ZmFpbDQNCnhlbmJ1c3xSYW5nZVNldFJlbGVhc2U6ID09PT0+DQp4ZW5idXN8UmFuZ2VTZXRS
ZWxlYXNlOiA8PT09PQ0KeGVuYnVzfEZkb0QzVG9EMDogZmFpbDMNCnhlbmJ1c3xTdXNwZW5k
UmVsZWFzZTogPT09PT4NCnhlbmJ1c3xTdXNwZW5kUmVsZWFzZTogPD09PT0NCnhlbmJ1c3xG
ZG9EM1RvRDA6IGZhaWwyDQp4ZW5idXN8RGVidWdSZWxlYXNlOiA9PT09Pg0KeGVuYnVzfERl
YnVnUmVsZWFzZTogPD09PT0NCnhlbmJ1c3xGZG9EM1RvRDA6IGZhaWwxIChjMDAwMDA5YSkN
CnhlbmJ1c3xGZG9TdGFydERldmljZTogZmFpbDgNCnhlbmJ1c3xGZG9CYWxsb29uOiBhd2Fr
ZQ0KeGVuYnVzfEZkb0JhbGxvb246IDw9PT09DQp4ZW5idXN8RmRvU3RhcnREZXZpY2U6IGZh
aWw3DQp4ZW5idXN8RmRvU3VzcGVuZDogd2FpdGluZy4uLg0KeGVuYnVzfEZkb1N1c3BlbmQ6
IGF3YWtlDQp4ZW5idXN8RmRvU3VzcGVuZDogPD09PT0NCnhlbmJ1c3xGZG9TdGFydERldmlj
ZTogZmFpbDYNCnhlbmJ1c3xGZG9TY2FuOiBhd2FrZQ0KeGVuYnVzfEZkb1NjYW46IDw9PT09
DQp4ZW5idXN8RmRvU3RhcnREZXZpY2U6IGZhaWw1DQp4ZW5idXN8RmRvRGlzY29ubmVjdElu
dGVycnVwdDogPT09PT4NCnhlbmJ1c3xGZG9EaXNjb25uZWN0SW50ZXJydXB0OiBGRkZGRTc4
Rjc5RjlFQkYwOiBDUFUgMDowIFZFQ1RPUiA3MQ0KeGVuYnVzfEZkb0Rpc2Nvbm5lY3RJbnRl
cnJ1cHQ6IDw9PT09DQp4ZW5idXN8RmRvRGlzY29ubmVjdEludGVycnVwdDogPT09PT4NCnhl
bmJ1c3xGZG9EaXNjb25uZWN0SW50ZXJydXB0OiBGRkZGRTc4Rjc5RjlFRTEwOiBDUFUgMDow
IFZFQ1RPUiA4MQ0KeGVuYnVzfEZkb0Rpc2Nvbm5lY3RJbnRlcnJ1cHQ6IDw9PT09DQp4ZW5i
dXN8RmRvRGlzY29ubmVjdEludGVycnVwdDogPT09PT4NCnhlbmJ1c3xGZG9EaXNjb25uZWN0
SW50ZXJydXB0OiBGRkZGRTc4RjdFOUM1OTEwOiBDUFUgMDoxIFZFQ1RPUiA4MQ0KeGVuYnVz
fEZkb0Rpc2Nvbm5lY3RJbnRlcnJ1cHQ6IDw9PT09DQp4ZW5idXN8RmRvU3RhcnREZXZpY2U6
IGZhaWw0DQp4ZW5idXN8RmRvU3RhcnREZXZpY2U6IGZhaWwzDQp4ZW5idXN8RmRvU3RhcnRE
ZXZpY2U6IGZhaWwyDQp4ZW5idXN8RmRvU3RhcnREZXZpY2U6IGZhaWwxIChjMDAwMDA5YSkN
CnhlbmJ1c3xGZG9EaXNwYXRjaFBucDogPD09PT0gKDAwOlNUQVJUX0RFVklDRSkoYzAwMDAw
OWEpDQp4ZW5idXN8RmRvRGlzcGF0Y2hQbnA6ID09PT0+ICgwMjpSRU1PVkVfREVWSUNFKQ0K
eGVuYnVzfEZpbHRlcnNVbmluc3RhbGxDbGFzczogPT09PT4NCnhlbmJ1c3xGaWx0ZXJzVW5p
bnN0YWxsQ2xhc3M6IERFVkNMQVNTX0hEQyBYRU5GSUxUDQp4ZW5idXN8RmlsdGVyc1VuaW5z
dGFsbENsYXNzOiA8PT09PQ0KeGVuYnVzfEZpbHRlcnNVbmluc3RhbGxDbGFzczogPT09PT4N
CnhlbmJ1c3xGaWx0ZXJzVW5pbnN0YWxsQ2xhc3M6IERFVkNMQVNTX1NZU1RFTSBYRU5GSUxU
DQp4ZW5idXN8RmlsdGVyc1VuaW5zdGFsbENsYXNzOiA8PT09PQ0KeGVuYnVzfEZkb0Rlc3Ry
b3k6IEZGRkZFNzhGN0QwRTFCRjAgKFhQMDAwMSBYRU5CVVMpDQp4ZW5idXN8QmFsbG9vblRl
YXJkb3duOiA9PT09Pg0KeGVuYnVzfEJhbGxvb25UZWFyZG93bjogPD09PT0NCnhlbmJ1c3xV
bnBsdWdUZWFyZG93bjogPT09PT4NCnhlbmJ1c3xVbnBsdWdUZWFyZG93bjogPD09PT0NCnhl
bmJ1c3xDb25zb2xlVGVhcmRvd246ID09PT0+DQp4ZW5idXN8Q29uc29sZVRlYXJkb3duOiA8
PT09PQ0KeGVuYnVzfFN0b3JlVGVhcmRvd246ID09PT0+DQp4ZW5idXN8U3RvcmVXYXRjaGRv
ZzogPD09PT0NCnhlbmJ1c3xTdG9yZVRlYXJkb3duOiA8PT09PQ0KeGVuYnVzfEdudHRhYlRl
YXJkb3duOiA9PT09Pg0KeGVuYnVzfEdudHRhYlRlYXJkb3duOiA8PT09PQ0KeGVuYnVzfENh
Y2hlVGVhcmRvd246ID09PT0+DQp4ZW5idXN8Q2FjaGVNb25pdG9yOiA9PT09Pg0KeGVuYnVz
fENhY2hlVGVhcmRvd246IDw9PT09DQp4ZW5idXN8UmFuZ2VTZXRUZWFyZG93bjogPT09PT4N
CnhlbmJ1c3xSYW5nZVNldFRlYXJkb3duOiA8PT09PQ0KeGVuYnVzfEV2dGNoblRlYXJkb3du
OiA9PT09Pg0KeGVuYnVzfEV2dGNobkZpZm9UZWFyZG93bjogPT09PT4NCnhlbmJ1c3xFdnRj
aG5GaWZvVGVhcmRvd246IDw9PT09DQp4ZW5idXN8RXZ0Y2huVHdvTGV2ZWxUZWFyZG93bjog
PT09PT4NCnhlbmJ1c3xFdnRjaG5Ud29MZXZlbFRlYXJkb3duOiA8PT09PQ0KeGVuYnVzfEV2
dGNoblRlYXJkb3duOiA8PT09PQ0KeGVuYnVzfFNoYXJlZEluZm9UZWFyZG93bjogPT09PT4N
CnhlbmJ1c3xTaGFyZWRJbmZvVGVhcmRvd246IDw9PT09DQp4ZW5idXN8U3VzcGVuZFRlYXJk
b3duOiA9PT09Pg0KeGVuYnVzfFN1c3BlbmRUZWFyZG93bjogPD09PT0NCnhlbmJ1c3xEZWJ1
Z1RlYXJkb3duOiA9PT09Pg0KeGVuYnVzfERlYnVnVGVhcmRvd246IDw9PT09DQp4ZW5idXN8
RHJpdmVyQ2xlYXJBY3RpdmU6ID09PT0+DQp4ZW5idXN8RHJpdmVyQ2xlYXJBY3RpdmU6IERP
TkUNCnhlbmJ1c3xEcml2ZXJDbGVhckFjdGl2ZTogPD09PT0NCnhlbmJ1c3xGZG9EaXNwYXRj
aFBucDogPD09PT0gKDAyOlJFTU9WRV9ERVZJQ0UpKDAwMDAwMDAwKQ0KeGVuYnVzfERyaXZl
clVubG9hZDogPT09PT4NCnhlbmJ1c3xEcml2ZXJVbmxvYWQ6IFhFTkJVUyA5LjEuMCAoMSkg
KDIzLjA2LjIwMjMpDQp4ZW5idXN8RHJpdmVyVW5sb2FkOiA8PT09PQ0KeGVufERsbFVubG9h
ZDogPT09PT4NCnhlbnxEbGxVbmxvYWQ6IFhFTiA5LjEuMCAoMSkgKDIzLjA2LjIwMjMpDQp4
ZW58RGxsVW5sb2FkOiA8PT09PQ0K

--------------keItyusMJnkvmVV20q38F4Uy--

--------------ExeeXwSCpadzQB7gojS0MyTf--

--------------8nSDyP198oPFGC0M0blhBfmF
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature"

-----BEGIN PGP SIGNATURE-----

wsB5BAABCAAjFiEEVwOm02mHaIsSbeWChaL2sHYatbsFAmSVvDYFAwAAAAAACgkQhaL2sHYatbtU
8gf/VWNogX4x6a178bLfGfhg9KW/SawEtv0eUK0pmekGC9RpKCzhBH2kprAJ52J1hbkfyX4sYvUZ
G3/Eb2v89ciT5QRrsDiP33q4C3JnqtePhmMwR3XxcpHiCCkBqi9T0yTwubrdX1uWbr0wFfh/AiMu
3Ow9CGArgrDhPI60EnGtrRcP6YHD3iK04SsF9Pt6/7KKyg6qQVM53FhNBGmz1c3zOMYtgzLOUGih
bJZCA6e6Ngi8PkbA8mq9Nw7EoCe6jMtIicWZy+r0ttdKhSzu/EjdUZYRxB4NaWselNTIwJZwOpZq
xyK/41/kSBFJri6+RZ1n9ApuObQxQOdSriqZbr8L7A==
=N33z
-----END PGP SIGNATURE-----

--------------8nSDyP198oPFGC0M0blhBfmF--


From win-pv-devel-bounces@lists.xenproject.org Fri Jun 23 18:50:58 2023
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Fri, 23 Jun 2023 18:50:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.554419.865590 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1qClrw-0002Ba-Md; Fri, 23 Jun 2023 18:50:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 554419.865590; Fri, 23 Jun 2023 18:50:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1qClrw-0002BT-JY; Fri, 23 Jun 2023 18:50:52 +0000
Received: by outflank-mailman (input) for mailman id 554419;
 Fri, 23 Jun 2023 18:50:51 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=OApR=CL=invisiblethingslab.com=omeg@srs-se1.protection.inumbo.net>)
 id 1qClru-0002BM-WF
 for win-pv-devel@lists.xenproject.org; Fri, 23 Jun 2023 18:50:51 +0000
Received: from out2-smtp.messagingengine.com (out2-smtp.messagingengine.com
 [66.111.4.26]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id daea04b5-11f6-11ee-8611-37d641c3527e;
 Fri, 23 Jun 2023 20:50:46 +0200 (CEST)
Received: from compute1.internal (compute1.nyi.internal [10.202.2.41])
 by mailout.nyi.internal (Postfix) with ESMTP id 667DF5C020A
 for <win-pv-devel@lists.xenproject.org>; Fri, 23 Jun 2023 14:50:42 -0400 (EDT)
Received: from mailfrontend2 ([10.202.2.163])
 by compute1.internal (MEProxy); Fri, 23 Jun 2023 14:50:42 -0400
Received: by mail.messagingengine.com (Postfix) with ESMTPA for
 <win-pv-devel@lists.xenproject.org>; Fri,
 23 Jun 2023 14:50:41 -0400 (EDT)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: daea04b5-11f6-11ee-8611-37d641c3527e
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	invisiblethingslab.com; h=cc:content-type:content-type:date:date
	:from:from:in-reply-to:in-reply-to:message-id:mime-version
	:references:reply-to:sender:subject:subject:to:to; s=fm2; t=
	1687546242; x=1687632642; bh=2cErrnMvIoxS5ZfPF+MgSpoKvNqu7/IAK8t
	nECCEyBY=; b=EB2Sk1+UZjJvC/0F9bupkfzvEg6P8fvc6IBbnuxVONaALXQ4S2h
	c/BtfHr5Q5jgqgw9+K0q3cAW+IN8mYZD0MtM4PERMEMqnszb3ACATB48vX91G+mc
	AJ7UPaADyjedmzd8nYb0IzG0Tma4DErVgvlZ2zu7p3AzMoQUyTAWK3LhLXgQG2aB
	Y5uZClW8VspHVoCKT7BU+QE9vzb8NsvB4NBrZgSEVZ6RGsl/rVwtgga+PjEqdmho
	+we+kljO6HTnU+wTdtuD79R1B8Ov014pnmBZ9Gg3CzsTZXOS+uJyUUyGyKQScScm
	/glbjD+9xSa0dfsFockL2owCzW5sgSVkGyA==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	messagingengine.com; h=cc:content-type:content-type:date:date
	:feedback-id:feedback-id:from:from:in-reply-to:in-reply-to
	:message-id:mime-version:references:reply-to:sender:subject
	:subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender
	:x-sasl-enc; s=fm2; t=1687546242; x=1687632642; bh=2cErrnMvIoxS5
	ZfPF+MgSpoKvNqu7/IAK8tnECCEyBY=; b=YmldvNKgfKqxDikWbK21hhHvFHJAE
	HJqYxl8ns4ti+51qPESvm394J9AQRGShtcSL2OLOhwWtanWdw0frxGF7W2GVUWi2
	+7ETB3jjfMI2/3amY4ft1DnW8Zz7wKkslCO2PPiaeX9zqaCZ/B70Ioq9+Jzw0zYi
	PKihmFJ5J7919pR5TmPcVZ6VNtaAaY3zHvdyMFFZ50XR1n9DmbjMiJifpbSRKMjZ
	1v93uMxy5rGZcdG77z/JMffNoN/SZ0Sq6YI5UFiTb3HPZt29clsMm5hgdYJzYLph
	UPNvHrxYB3aCo8eXqf+KNyMZA6E/VnjRiDWliGhUn3f9Wi0gdSe8LzlFg==
X-ME-Sender: <xms:gumVZAqeWJ-Me8HjXor8Z5Q6JRz0eQ353uBzD2hNhjw2ZRkkaTyShA>
    <xme:gumVZGpi5hsPRfXo2a2O5xbwKfpOCpShwYjniOaK1gGDwQY5p2EU4O3b3YLdvdY_D
    v7ksHhumw77-p4>
X-ME-Received: <xmr:gumVZFN7m3qQQjYxuGXV-SlKw7ZbInjJagI7aubd1jCUgojyJLl1b-Ms9B-qWsv9pkB8NhiTbIVwpuGYi2kJHphkKUxpjTHGylI>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrgeeggedguddvlecutefuodetggdotefrod
    ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh
    necuuegrihhlohhuthemuceftddtnecunecujfgurhepkfffgggfvfhfhffujggtsehgtd
    erredtfeejnecuhfhrohhmpeftrghfrghlucghohhjugihlhgruceoohhmvghgsehinhhv
    ihhsihgslhgvthhhihhnghhslhgrsgdrtghomheqnecuggftrfgrthhtvghrnhepkeduff
    efgefgiedvveffkeehjefhffevueegheejuedtfeehgfetjefgveefhfdvnecuvehluhhs
    thgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepohhmvghgsehinhhvih
    hsihgslhgvthhhihhnghhslhgrsgdrtghomh
X-ME-Proxy: <xmx:gumVZH6AZ9QIdR87CujGdZMe7wXJDyrl18Pk2oWwbzedGoM19tkPQg>
    <xmx:gumVZP6t7mE6bsor0miEvXelQ3pbIsYzq_7yh-xvpa1c1CgIS7xLYg>
    <xmx:gumVZHjlAE6iQjiT_uTlYefmKRmQzFSK70u1pBhshwmKRA7_lsmcUA>
    <xmx:gumVZBEAVy7d8K_MlP-O7wwa7B5L6jftKq9s6QsFnGTiUhcuvX3qhw>
Feedback-ID: i409c4082:Fastmail
Message-ID: <7797fe6b-efdf-805f-33f8-3e41d4779d7d@invisiblethingslab.com>
Date: Fri, 23 Jun 2023 20:50:38 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.12.0
Content-Language: en-US
To: win-pv-devel@lists.xenproject.org
References: <6ab4cae1-af89-bf2f-3a85-be437828788b@invisiblethingslab.com>
From: =?UTF-8?B?UmFmYcWCIFdvamR5xYJh?= <omeg@invisiblethingslab.com>
Subject: Re: Xenbus issues on Qubes OS / win10
In-Reply-To: <6ab4cae1-af89-bf2f-3a85-be437828788b@invisiblethingslab.com>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------nBOl400ZMujxLR0Czepz8svA"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------nBOl400ZMujxLR0Czepz8svA
Content-Type: multipart/mixed; boundary="------------bVmvgI6gEgt25CT0oHW0nld4";
 protected-headers="v1"
From: =?UTF-8?B?UmFmYcWCIFdvamR5xYJh?= <omeg@invisiblethingslab.com>
To: win-pv-devel@lists.xenproject.org
Message-ID: <7797fe6b-efdf-805f-33f8-3e41d4779d7d@invisiblethingslab.com>
Subject: Re: Xenbus issues on Qubes OS / win10
References: <6ab4cae1-af89-bf2f-3a85-be437828788b@invisiblethingslab.com>
In-Reply-To: <6ab4cae1-af89-bf2f-3a85-be437828788b@invisiblethingslab.com>

--------------bVmvgI6gEgt25CT0oHW0nld4
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMjMgY3plIDIwMjMgMTc6MzcsIFJhZmHFgiBXb2pkecWCYSB3cm90ZToNCj4gSGVsbG8s
DQo+IA0KPiBJJ20gdHJ5aW5nIHRoZSBsYXRlc3QgUFYgZHJpdmVycyBvbiBRdWJlcyBPUyAo
YmFja2VuZCBpcyBYZW4gNC4xNC41KSANCj4gd2l0aCBXaW5kb3dzIDEwIHBybyBhbmQgaGF2
aW5nIHNvbWUgaXNzdWVzLiBNYWlubHksIHhlbmJ1cyBmYWlscyB0byANCj4gaW5pdGlhbGl6
ZSBwcm9wZXJseS4gSSd2ZSBhdHRhY2hlZCBhIGRlYnVnIG91dHB1dCwgdGhlIG1haW4gaXNz
dWUgc2VlbXMgDQo+IHRvIGJlIHRoaXM6DQo+IA0KPiB4ZW5idXN8U3RvcmVBY3F1aXJlOiA9
PT09Pg0KPiB4ZW5idXN8R250dGFiQWNxdWlyZTogPT09PT4NCj4geGVuYnVzfFJhbmdlU2V0
UG9wOiBmYWlsMw0KPiB4ZW5idXN8UmFuZ2VTZXRQb3A6IGZhaWwyDQo+IHhlbmJ1c3xSYW5n
ZVNldFBvcDogZmFpbDEgKGMwMDAwMDlhKQ0KPiB4ZW5idXN8RmRvQWxsb2NhdGVIb2xlOiBm
YWlsMSAoYzAwMDAwOWEpDQo+IHhlbmJ1c3xHbnR0YWJBY3F1aXJlOiBmYWlsMg0KPiB4ZW5i
dXN8R250dGFiQWNxdWlyZTogZmFpbDEgKGMwMDAwMDlhKQ0KPiB4ZW5idXN8U3RvcmVBY3F1
aXJlOiBmYWlsMSAoYzAwMDAwOWEpDQo+IHhlbmJ1c3xGZG9EM1RvRDA6IGZhaWw2DQo+IA0K
PiAuLi53aGljaCBzZWVtcyBwcmV0dHkgc3VzcGljaW91cy4gSXQncyBiZWVuIHNvbWUgeWVh
cnMgc2luY2UgSSBsb29rZWQgYXQgDQo+IHRoZSBkcml2ZXJzJyBjb2RlIHNvIGFueSBpZGVh
cyBhcyB0byB3aGF0IG1heSBiZSBjYXVzaW5nIHRoaXMgYXJlIA0KPiB3ZWxjb21lIDopDQo+
IA0KRm9sbG93dXA6IGluIHhlbmJ1cy9nbnR0YWIvR250dGFiQWNxdWlyZSgpDQoNCnN0YXR1
cyA9IEdyYW50VGFibGVRdWVyeVNpemUoTlVMTCwgJkNvbnRleHQtPk1heGltdW1GcmFtZUNv
dW50KTsNCg0KQ29udGV4dC0+TWF4aW11bUZyYW1lQ291bnQgaXMgMjA0OCBmb3IgbWUsIHdo
aWNoIGlzIGJpZ2dlciB0aGFuIDEgPDwgDQpQQUdFX09SREVSXzJNLCB3aGljaCBzZWVtcyB0
byBiZSB0aGUgbGltaXQgZm9yIEZETyBtZW1vcnkgaG9sZSBzaXplLg0KDQotLSANClJhZmHF
giBXb2pkecWCYQ0KSW52aXNpYmxlIFRoaW5ncyBMYWINCg0K

--------------bVmvgI6gEgt25CT0oHW0nld4--

--------------nBOl400ZMujxLR0Czepz8svA
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature"

-----BEGIN PGP SIGNATURE-----

wsB5BAABCAAjFiEEVwOm02mHaIsSbeWChaL2sHYatbsFAmSV6X4FAwAAAAAACgkQhaL2sHYatbvu
mQf/Zky539aw215O3xzWy5/cOyfGn+DESrn3RrIVCdIloKjswKE2f6fooFKbXpKtAYZFTQNyAwTz
Mp7AeLXVkLMO4manr75S+X7T4WB9565T1qzo3J6Kgq52dOAMpUXGNzDBra5r8/BN9d3OO8FKD03e
iM8Dyze/akQpADBdoXVXzMCpI2PjSv9EWQda+d7akZ+SdG3SHyVYUHu3DXuh9cWf+MJ6oZcJQg9e
DuWE4SaCNPz8k56v5nPZ9Q/UD2gjMg+VN4FWuiWoQfA9f3CCwhhW5jIIgahGLj14RWzRnLvn5YeX
Yn4HVM0sBM/Jg7JWRxJr/LzdEAzSS8Tkwj7ZXZCqoA==
=hsoS
-----END PGP SIGNATURE-----

--------------nBOl400ZMujxLR0Czepz8svA--


From win-pv-devel-bounces@lists.xenproject.org Tue Jun 27 10:38:04 2023
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Tue, 27 Jun 2023 10:38:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.556025.868260 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1qE659-0001Mn-Fn; Tue, 27 Jun 2023 10:37:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 556025.868260; Tue, 27 Jun 2023 10:37:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1qE659-0001Mg-D6; Tue, 27 Jun 2023 10:37:59 +0000
Received: by outflank-mailman (input) for mailman id 556025;
 Tue, 27 Jun 2023 10:37:58 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3tMu=CP=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qE658-0001Ma-Jg
 for win-pv-devel@lists.xenproject.org; Tue, 27 Jun 2023 10:37:58 +0000
Received: from mail-wm1-x334.google.com (mail-wm1-x334.google.com
 [2a00:1450:4864:20::334])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id adcbc50f-14d6-11ee-b237-6b7b168915f2;
 Tue, 27 Jun 2023 12:37:57 +0200 (CEST)
Received: by mail-wm1-x334.google.com with SMTP id
 5b1f17b1804b1-3fba5a8af2cso4506655e9.3
 for <win-pv-devel@lists.xenproject.org>; Tue, 27 Jun 2023 03:37:56 -0700 (PDT)
Received: from [192.168.2.145] (54-240-197-232.amazon.com. [54.240.197.232])
 by smtp.gmail.com with ESMTPSA id
 t15-20020a0560001a4f00b00313f676832bsm3823621wry.93.2023.06.27.03.37.55
 for <win-pv-devel@lists.xenproject.org>
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 27 Jun 2023 03:37:55 -0700 (PDT)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: adcbc50f-14d6-11ee-b237-6b7b168915f2
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1687862276; x=1690454276;
        h=content-transfer-encoding:in-reply-to:organization:reply-to
         :content-language:references:to:subject:user-agent:mime-version:date
         :message-id:from:from:to:cc:subject:date:message-id:reply-to;
        bh=AryAlU89SYeu1udLV4hrlRKw+IUjUr8/aHPcT3yli5k=;
        b=McPnozIAD55JQM77TLgV5DB0XtlWZ10XKzHvN4KRWVRfPFLpQOIl7xgkPU4Eo/m4HL
         gfLh2kSB7UTi2aPVHdyLoWR4fr/4UOhAyoezO1aKWgchQ+YsQ7c5Yp2YQyj6SGf4uKEY
         0t1SKCwDDE9ZvJo+dSRmMEDY81CVK4qPhWcIlSoPHmo+fYRsPD0YpM61Lo2NAjcsC+fY
         2T8BfB+62JapkdlG559KBnICmdnUQl0LtQ9KwkI/zTOD6hJ6WupzJPZfKZbDZlycWIor
         yYqqJoaGoo+1YGMeL9UmQ6VwFS8GDr2AzBHuaK2oi54dBOUMjft4xCJdrByGF4hMjab4
         a0jQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1687862276; x=1690454276;
        h=content-transfer-encoding:in-reply-to:organization:reply-to
         :content-language:references:to:subject:user-agent:mime-version:date
         :message-id:from:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=AryAlU89SYeu1udLV4hrlRKw+IUjUr8/aHPcT3yli5k=;
        b=Yn1FLkUFEXWyGZqedKEPT577sopUFmAbGpE6BlhtODQPEkrv7aFIe4QbTpUzdxhRFn
         l3KcwkJfm4/pSc1UlBV3LzfG3RokiXupNOgpU+qygVx+zR/uWXwlG8eqSQfEgzT9En1v
         QNJjMqsm7QkixTaYhGioDbjwZUuW9s4gRR9Fsw2L0Ibi/S3MnhyHVUVxxx4uAx/g1uZp
         92+fnomk/TaCjMi/qzZrAYLwFsqoSi2Dn1C3MfbHoCriW5e6OqD/bk6g2FSbRDCcqfV/
         O1lcxB8burkWsSd0TjOSdWoO4lT90r2PriM1vdcSB246AD0OS6KxqG9mYuHTJTlQgMTh
         pi3g==
X-Gm-Message-State: AC+VfDwsbR4Mk/+DKjNWpfftaQLwGN35+LLVR9nmUbPBrk1oBoG+/8yY
	HNjGhf6EcIN2OjZDdiWCg+cenuJvNMsyGw==
X-Google-Smtp-Source: ACHHUZ6gyOAc6Xizfw3dlL2RZ4XmYGq9Ks6ppWw8jQ5jdvokB6FG2wN69xU70rUhIAS4VxFhzgRK7Q==
X-Received: by 2002:a5d:508b:0:b0:313:ef57:5bde with SMTP id a11-20020a5d508b000000b00313ef575bdemr4814618wrt.42.1687862276025;
        Tue, 27 Jun 2023 03:37:56 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Message-ID: <e7bad11f-de8d-995c-7142-a3dcf5634485@xen.org>
Date: Tue, 27 Jun 2023 11:37:54 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.12.0
Subject: Re: Xenbus issues on Qubes OS / win10
To: win-pv-devel@lists.xenproject.org
References: <6ab4cae1-af89-bf2f-3a85-be437828788b@invisiblethingslab.com>
 <7797fe6b-efdf-805f-33f8-3e41d4779d7d@invisiblethingslab.com>
Content-Language: en-US
Reply-To: paul@xen.org
Organization: Xen Project
In-Reply-To: <7797fe6b-efdf-805f-33f8-3e41d4779d7d@invisiblethingslab.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 23/06/2023 19:50, Rafał Wojdyła wrote:
> On 23 cze 2023 17:37, Rafał Wojdyła wrote:
>> Hello,
>>
>> I'm trying the latest PV drivers on Qubes OS (backend is Xen 4.14.5) 
>> with Windows 10 pro and having some issues. Mainly, xenbus fails to 
>> initialize properly. I've attached a debug output, the main issue 
>> seems to be this:
>>
>> xenbus|StoreAcquire: ====>
>> xenbus|GnttabAcquire: ====>
>> xenbus|RangeSetPop: fail3
>> xenbus|RangeSetPop: fail2
>> xenbus|RangeSetPop: fail1 (c000009a)
>> xenbus|FdoAllocateHole: fail1 (c000009a)
>> xenbus|GnttabAcquire: fail2
>> xenbus|GnttabAcquire: fail1 (c000009a)
>> xenbus|StoreAcquire: fail1 (c000009a)
>> xenbus|FdoD3ToD0: fail6
>>
>> ...which seems pretty suspicious. It's been some years since I looked 
>> at the drivers' code so any ideas as to what may be causing this are 
>> welcome :)
>>
> Followup: in xenbus/gnttab/GnttabAcquire()
> 
> status = GrantTableQuerySize(NULL, &Context->MaximumFrameCount);
> 
> Context->MaximumFrameCount is 2048 for me, which is bigger than 1 << 
> PAGE_ORDER_2M, which seems to be the limit for FDO memory hole size.
> 

Hmm. Ok - we should probably put something in there to either expand the 
hole, use another one or - probably simpler - query the grant table size 
up-front to correctly size the hole.

   Paul



From win-pv-devel-bounces@lists.xenproject.org Tue Jun 27 10:42:04 2023
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Tue, 27 Jun 2023 10:42:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.556032.868265 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1qE695-0002KA-Pd; Tue, 27 Jun 2023 10:42:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 556032.868265; Tue, 27 Jun 2023 10:42:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1qE695-0002K2-Mr; Tue, 27 Jun 2023 10:42:03 +0000
Received: by outflank-mailman (input) for mailman id 556032;
 Tue, 27 Jun 2023 10:42:02 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Ih4C=CP=invisiblethingslab.com=marmarek@srs-se1.protection.inumbo.net>)
 id 1qE694-0002Jw-5r
 for win-pv-devel@lists.xenproject.org; Tue, 27 Jun 2023 10:42:02 +0000
Received: from out4-smtp.messagingengine.com (out4-smtp.messagingengine.com
 [66.111.4.28]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3d5d65d3-14d7-11ee-8611-37d641c3527e;
 Tue, 27 Jun 2023 12:41:58 +0200 (CEST)
Received: from compute2.internal (compute2.nyi.internal [10.202.2.46])
 by mailout.nyi.internal (Postfix) with ESMTP id 4EA6C5C013C;
 Tue, 27 Jun 2023 06:41:57 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute2.internal (MEProxy); Tue, 27 Jun 2023 06:41:57 -0400
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue,
 27 Jun 2023 06:41:56 -0400 (EDT)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3d5d65d3-14d7-11ee-8611-37d641c3527e
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	invisiblethingslab.com; h=cc:cc:content-type:content-type:date
	:date:from:from:in-reply-to:in-reply-to:message-id:mime-version
	:references:reply-to:sender:subject:subject:to:to; s=fm2; t=
	1687862517; x=1687948917; bh=rry6gPUExsPfTaolcKUxw2i9VEPd0tTdZUo
	8koVPQSE=; b=k4zUYS22ICytUfG742vcsenmhtUtv1Lm12cPnObKM8GmoKID9Cg
	j4swmpMK3gRLW3ykUfzEzQHYMkwQKAJHaIAhOY7+zFYIv96IZI1aH4vopXUYvg5u
	ke1fjj0QAcFPifnBHww0LXlHE2fWkFTNPrtKmXsvw6Zsic0zN7hfQJ+ZipMeJUnx
	EQPLebf0L+FcvMhoankJpp1nQieCjuCT4r6VT7HfKHm7TW+1uIT/EXyWYgBwF6aM
	YZ/W8KoEFcdBCsRGiMBLVdY3RN6+zigfEwXlUyDY/DV7ljmpZ7OjULPtsF2pWdeG
	11vy5K1JTRs6sOHWzaWFfRwDLBXfI4SE7rw==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	messagingengine.com; h=cc:cc:content-type:content-type:date:date
	:feedback-id:feedback-id:from:from:in-reply-to:in-reply-to
	:message-id:mime-version:references:reply-to:sender:subject
	:subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender
	:x-sasl-enc; s=fm2; t=1687862517; x=1687948917; bh=rry6gPUExsPfT
	aolcKUxw2i9VEPd0tTdZUo8koVPQSE=; b=l4gVnd3aV/qqA7R4ObObMaRwsbaOy
	TMeNwQWazMRnvRg14kovsdljk1rchTRd3fbsspZnlXmitUU1EPMhCWcMWemWYNHF
	4cXI8pnioDMtuDCcx+IFQj2sRB4KlbBuzcxXKVTUDGGupE3eIQIfF4aOHshGyjsE
	CF2Y9G621x+BMLMVP/IAVtZsT4KkVTwqjlvpsi9pxxAY3YK0wjEacsUO/lRXn9ce
	ielLGaHnD4I3fOtBOV2hdUFPjQLoXyL3ycZ77rVXW7pekvI44JZV57WfDPHXLSp4
	vghs+Vg3Sy+01WL4D1jZ70cJpF22isKt9YT8C8jBto3TQHaBfD9QuNnZA==
X-ME-Sender: <xms:9byaZI5o9VsL3WsToeP0yVz3ho7u6IwOPN8UP7LddUOms0xOJXGsZQ>
    <xme:9byaZJ40S3IFKgOY9XcMH5eeyvLomJFoubc2lPzdGnYUs0R7E3kpgX8Ulpl90lJEY
    vkP6mlJ6YqZMw>
X-ME-Received: <xmr:9byaZHezU7iKGZvJaoI1rsMaVdOn1fWrK6wJneSdIIjdQ3WEsFqz_ia22l1kApXRXQSt9vw0Fo8V7-6WEqRdr8YzzUUPp90F1qQ>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrgeehhedgfedtucetufdoteggodetrfdotf
    fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
    uceurghilhhouhhtmecufedttdenucenucfjughrpeffhffvvefukfhfgggtuggjsehgtd
    erredttdejnecuhfhrohhmpeforghrvghkucforghrtgiihihkohifshhkihdqifpkrhgv
    tghkihcuoehmrghrmhgrrhgvkhesihhnvhhishhisghlvghthhhinhhgshhlrggsrdgtoh
    hmqeenucggtffrrghtthgvrhhnpefgudelteefvefhfeehieetleeihfejhfeludevteet
    keevtedtvdegueetfeejudenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmh
    grihhlfhhrohhmpehmrghrmhgrrhgvkhesihhnvhhishhisghlvghthhhinhhgshhlrggs
    rdgtohhm
X-ME-Proxy: <xmx:9byaZNK_d5dziLqY90Y1MgKtfV6TMlE8MOAXKQJ9Lp-dr0lKwEKouQ>
    <xmx:9byaZMIcL0Lbi1irms6WOZOfljMPur8l92F792buIhKRn7JQNQODkA>
    <xmx:9byaZOwmpMEe0PwzMgQa6YmwbwoTdxc31pRN2Wjv-PHfbxYPSYwhyQ>
    <xmx:9byaZDkd-p2jl7ELrmfHTfgwghkPBoasB8q46G0yUvp_f_n4mlkc-w>
Feedback-ID: i1568416f:Fastmail
Date: Tue, 27 Jun 2023 12:41:53 +0200
From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
To: paul@xen.org
Cc: win-pv-devel@lists.xenproject.org
Subject: Re: Xenbus issues on Qubes OS / win10
Message-ID: <ZJq88V01uLgsOsEe@mail-itl>
References: <6ab4cae1-af89-bf2f-3a85-be437828788b@invisiblethingslab.com>
 <7797fe6b-efdf-805f-33f8-3e41d4779d7d@invisiblethingslab.com>
 <e7bad11f-de8d-995c-7142-a3dcf5634485@xen.org>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha256;
	protocol="application/pgp-signature"; boundary="3FfizueHIzB76B5H"
Content-Disposition: inline
In-Reply-To: <e7bad11f-de8d-995c-7142-a3dcf5634485@xen.org>


--3FfizueHIzB76B5H
Content-Type: text/plain; protected-headers=v1; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
Date: Tue, 27 Jun 2023 12:41:53 +0200
From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
To: paul@xen.org
Cc: win-pv-devel@lists.xenproject.org
Subject: Re: Xenbus issues on Qubes OS / win10

On Tue, Jun 27, 2023 at 11:37:54AM +0100, Paul Durrant wrote:
> On 23/06/2023 19:50, Rafa=C5=82 Wojdy=C5=82a wrote:
> > On 23 cze 2023 17:37, Rafa=C5=82 Wojdy=C5=82a wrote:
> > > Hello,
> > >=20
> > > I'm trying the latest PV drivers on Qubes OS (backend is Xen 4.14.5)
> > > with Windows 10 pro and having some issues. Mainly, xenbus fails to
> > > initialize properly. I've attached a debug output, the main issue
> > > seems to be this:
> > >=20
> > > xenbus|StoreAcquire: =3D=3D=3D=3D>
> > > xenbus|GnttabAcquire: =3D=3D=3D=3D>
> > > xenbus|RangeSetPop: fail3
> > > xenbus|RangeSetPop: fail2
> > > xenbus|RangeSetPop: fail1 (c000009a)
> > > xenbus|FdoAllocateHole: fail1 (c000009a)
> > > xenbus|GnttabAcquire: fail2
> > > xenbus|GnttabAcquire: fail1 (c000009a)
> > > xenbus|StoreAcquire: fail1 (c000009a)
> > > xenbus|FdoD3ToD0: fail6
> > >=20
> > > ...which seems pretty suspicious. It's been some years since I
> > > looked at the drivers' code so any ideas as to what may be causing
> > > this are welcome :)
> > >=20
> > Followup: in xenbus/gnttab/GnttabAcquire()
> >=20
> > status =3D GrantTableQuerySize(NULL, &Context->MaximumFrameCount);
> >=20
> > Context->MaximumFrameCount is 2048 for me, which is bigger than 1 <<
> > PAGE_ORDER_2M, which seems to be the limit for FDO memory hole size.
> >=20
>=20
> Hmm. Ok - we should probably put something in there to either expand the
> hole, use another one or - probably simpler - query the grant table size
> up-front to correctly size the hole.

For context - in Qubes we indeed raise the max grant table frames to the
value Rafa=C5=82 got.

--=20
Best Regards,
Marek Marczykowski-G=C3=B3recki
Invisible Things Lab

--3FfizueHIzB76B5H
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQEzBAEBCAAdFiEEhrpukzGPukRmQqkK24/THMrX1ywFAmSavPEACgkQ24/THMrX
1yyTOQf/ccAgvAhuIxAWFahCqkuJxbSMKqjWiaG3oeq+43vuJRJOOEhodKtLnj+g
1SuEL0fDLSl6MCWdirMxU6JM0DQ9/1Khe+ntXOk/nsy/HgQEUEap/p2cHQClgZEX
TCUvjqPFmjY9VfazmCQG5HH7fKTh0Zw1qVtqOIw/GjzQwVC2Bgaxf5lhcBCbxO8O
BAYPE7naJDY1UpenPxJt9kJv4dvrW0zKi/BnAKIZkhCttbzFJMhrOf/egjHhpfIu
BhnHM7fLWNa7huDtFVRbMCj5fhBzdqd8pWMPiNYuL1KGxSVq7EQy/G+8+/NfyiHk
GjvFPhCjfb9fcgCVZ8PP82D5kYpbcA==
=2+tH
-----END PGP SIGNATURE-----

--3FfizueHIzB76B5H--


From win-pv-devel-bounces@lists.xenproject.org Tue Jun 27 10:42:57 2023
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Tue, 27 Jun 2023 10:42:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.556040.868269 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1qE69w-0002Os-TQ; Tue, 27 Jun 2023 10:42:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 556040.868269; Tue, 27 Jun 2023 10:42:56 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1qE69w-0002Ol-QC; Tue, 27 Jun 2023 10:42:56 +0000
Received: by outflank-mailman (input) for mailman id 556040;
 Tue, 27 Jun 2023 10:42:55 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3tMu=CP=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qE69v-0002NI-QZ
 for win-pv-devel@lists.xenproject.org; Tue, 27 Jun 2023 10:42:55 +0000
Received: from mail-lf1-x12c.google.com (mail-lf1-x12c.google.com
 [2a00:1450:4864:20::12c])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 5fdd8576-14d7-11ee-b237-6b7b168915f2;
 Tue, 27 Jun 2023 12:42:55 +0200 (CEST)
Received: by mail-lf1-x12c.google.com with SMTP id
 2adb3069b0e04-4f875b267d9so6162349e87.1
 for <win-pv-devel@lists.xenproject.org>; Tue, 27 Jun 2023 03:42:55 -0700 (PDT)
Received: from [192.168.2.145] (54-240-197-232.amazon.com. [54.240.197.232])
 by smtp.gmail.com with ESMTPSA id
 k22-20020a05600c0b5600b003fb40f5f553sm3301041wmr.31.2023.06.27.03.42.53
 for <win-pv-devel@lists.xenproject.org>
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 27 Jun 2023 03:42:54 -0700 (PDT)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 5fdd8576-14d7-11ee-b237-6b7b168915f2
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1687862575; x=1690454575;
        h=content-transfer-encoding:in-reply-to:organization:reply-to
         :references:to:content-language:subject:user-agent:mime-version:date
         :message-id:from:from:to:cc:subject:date:message-id:reply-to;
        bh=2nwwP7FeCiOfX/9xyTYbfJCrpAp2d4miBzpd+UUQ2ZU=;
        b=Tyx6bUGmoK7/ICfyBL5XGapv6FRsN1TOQvwLYXMqGdq7l6VKLdWAIY4aFJSO9t2s8U
         RFbc/s8NSvqrriGyljtzolZGZ47CRWyljYdExFkFoqS7x4PSdM8Sz6V52ZoucC7BeeDY
         p8+amEgqsJW+CIyM13S3pWBUY22JLVD3R/p3YsIRu3OV7lJfQmKeveehs6FZsA57ST8D
         P0IaB3/OcmDW30kOVptPoCqQH1bK3smWpxMIl5q2K7TdPXxMWCnFXFazSv+cWoGCFlPN
         anRvHqobx/m9dFGdJtmOjy2/nCDa/pqdzLANsVqT0qN5cyYLEHCuc12HXt8kav3RoPV7
         PUwA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1687862575; x=1690454575;
        h=content-transfer-encoding:in-reply-to:organization:reply-to
         :references:to:content-language:subject:user-agent:mime-version:date
         :message-id:from:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=2nwwP7FeCiOfX/9xyTYbfJCrpAp2d4miBzpd+UUQ2ZU=;
        b=QwM2e9cKvzCRgGYMjnTLcQTX1g5glH2i5Cknl8CYCT10oUwWRNXb6rFOPepaVErvCw
         Tk7NNesYVOMAXroanuG/2CEgVVpJF+IIEPLmAG32r0QZP1lpmHljBnTUqNxL/lInAiHw
         Manj+9aj0uoa6Kk6sF2vgDEIOTXdSa7kXUZE2jjny5yEJsVzQXbJtpAF7HUfnwi6Xvn9
         45uJhp1keR9fiCCHUOBmzfjOP1WmMKSzXgNjRCNeIkl0PrkmfTvtCi2dROH00Z3/gaAW
         Q976Y6coo8o/mhO5rZ75FJYTqMRCtjZQQVTwKkxe5V1JpzDWZj5d+2oIZMWc3RmxwT5k
         iwEw==
X-Gm-Message-State: AC+VfDwbmmAzp69DLz3ZRoCv30sok7+6MUtU3YNQG9kkl4hczqFJt1JC
	WwGDxwx4YGHuLd1aPAlmrNZzRs+Ir64gwg==
X-Google-Smtp-Source: ACHHUZ5vSz0X6FNd827PEUd6s6iC0Xrdw1buBc70gG3Kg1ympsP6QR2Gy/JiyuxgAHVzzT27qxFN9A==
X-Received: by 2002:a05:6512:3b8e:b0:4fb:744e:17db with SMTP id g14-20020a0565123b8e00b004fb744e17dbmr4761963lfv.1.1687862574602;
        Tue, 27 Jun 2023 03:42:54 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Message-ID: <6be66b21-303f-e0d2-4156-cef9428f2ab2@xen.org>
Date: Tue, 27 Jun 2023 11:42:53 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.12.0
Subject: Re: Xenbus issues on Qubes OS / win10
Content-Language: en-US
To: win-pv-devel@lists.xenproject.org
References: <6ab4cae1-af89-bf2f-3a85-be437828788b@invisiblethingslab.com>
Reply-To: paul@xen.org
Organization: Xen Project
In-Reply-To: <6ab4cae1-af89-bf2f-3a85-be437828788b@invisiblethingslab.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 23/06/2023 16:37, Rafał Wojdyła wrote:
> Hello,
> 
> I'm trying the latest PV drivers on Qubes OS (backend is Xen 4.14.5) 
> with Windows 10 pro and having some issues. Mainly, xenbus fails to 
> initialize properly. I've attached a debug output, the main issue seems 
> to be this:
> 
> xenbus|StoreAcquire: ====>
> xenbus|GnttabAcquire: ====>
> xenbus|RangeSetPop: fail3
> xenbus|RangeSetPop: fail2
> xenbus|RangeSetPop: fail1 (c000009a)
> xenbus|FdoAllocateHole: fail1 (c000009a)
> xenbus|GnttabAcquire: fail2
> xenbus|GnttabAcquire: fail1 (c000009a)
> xenbus|StoreAcquire: fail1 (c000009a)
> xenbus|FdoD3ToD0: fail6
> 
> ...which seems pretty suspicious. It's been some years since I looked at 
> the drivers' code so any ideas as to what may be causing this are 
> welcome :)
> 
> I've built the driver myself from commit b03c9c0.
> 
> Btw, is there a way to tell the drivers to leave the xen's serial 
> console alone? I'm using it for debugging because adding a second serial 
> device is currently problematic in Qubes.
> 

Logging will go via QEMU's and Xen's debug ports. You should be able to 
turn off logging to Xen's by nopping out the call to 
LogAddDisposition(...XEN_PORT...) in src/xen/driver.c.

   Paul



From win-pv-devel-bounces@lists.xenproject.org Tue Jun 27 10:54:03 2023
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Tue, 27 Jun 2023 10:54:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.556053.868283 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1qE6Kf-00043d-VL; Tue, 27 Jun 2023 10:54:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 556053.868283; Tue, 27 Jun 2023 10:54:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1qE6Kf-00043W-Sc; Tue, 27 Jun 2023 10:54:01 +0000
Received: by outflank-mailman (input) for mailman id 556053;
 Tue, 27 Jun 2023 10:54:00 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=9A7o=CP=tibco.com=osmith@srs-se1.protection.inumbo.net>)
 id 1qE6Ke-00043N-7J
 for win-pv-devel@lists.xenproject.org; Tue, 27 Jun 2023 10:54:00 +0000
Received: from mail-lf1-x135.google.com (mail-lf1-x135.google.com
 [2a00:1450:4864:20::135])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ea897612-14d8-11ee-8611-37d641c3527e;
 Tue, 27 Jun 2023 12:53:57 +0200 (CEST)
Received: by mail-lf1-x135.google.com with SMTP id
 2adb3069b0e04-4f957a45b10so5795062e87.0
 for <win-pv-devel@lists.xenproject.org>; Tue, 27 Jun 2023 03:53:57 -0700 (PDT)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ea897612-14d8-11ee-8611-37d641c3527e
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1687863237; x=1690455237;
        h=cc:to:subject:message-id:date:from:in-reply-to:references
         :mime-version:from:to:cc:subject:date:message-id:reply-to;
        bh=zAwH8pdoYIlAXYoO1QS7Aw2N0IO6quSE9mHkBpP1rk8=;
        b=Fp+ifqb72Nk5Ju1wY7AyV1nyPSwWDnCuNagK/8KNFEgw2lxz4G/xtiMZLcJfVDYwiy
         dVx6AzcRFHMePobNvNgna7FTZ/cbQevlXdwJoENON/zy+klfByWi1cLjjjhO0lBACztV
         guJbAKs1o6X9T20Pe+J2VgxC8fZ+cJOun2+EA=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1687863237; x=1690455237;
        h=cc:to:subject:message-id:date:from:in-reply-to:references
         :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=zAwH8pdoYIlAXYoO1QS7Aw2N0IO6quSE9mHkBpP1rk8=;
        b=eTyUi4c9tN5ijXZNouDDwKHsYyUJFO5lXK3zv2kh+IDNVDysDBLlbgMABCSORNuEFu
         nSdpe8XN/+FtbHota802hprbSP4+JZgcRzfJtIGTKzIFF/t6NCiIsVPRugT6tOSnA60q
         Io2MQ/k2xF3hHNnMU9AI8hMMTbuXpgLiL5oifNPbqlrcUQruqK0GSxJMUBdItNvJJ60W
         h79BSg/gsakZcWtFSl1aS64iN6gWkBtxMpoN5xGzkpEFPC9SwrVnsnA/31i7/YnYC7Rg
         HNmyRY3R9hfF0l4cuRQrCTQhUA2L933+6hGglVVF9fSUJO4bXG7B66NQS4LP2iKZe5ff
         oR5A==
X-Gm-Message-State: AC+VfDw+ONATKIZgc6XIg0JSnwmDp9u/YCCnhcwnxHauCW4pE2tlaiQO
	jWtnBNlRuoPR/ihB9OKN6uNe32ISqVYHf7JUlsxQcna8wqyA+x7Dtg==
X-Google-Smtp-Source: ACHHUZ5nRCbrGeHhkgGbd0lbWx28+xYpGDZMKtv8SK/eRyZrT87jVBYdvZ1zbP1/Wv/8hBuW473U3irpZ91WeMcAsWw=
X-Received: by 2002:a05:6512:234a:b0:4f9:607a:6508 with SMTP id
 p10-20020a056512234a00b004f9607a6508mr10744982lfu.50.1687863237183; Tue, 27
 Jun 2023 03:53:57 -0700 (PDT)
MIME-Version: 1.0
References: <6ab4cae1-af89-bf2f-3a85-be437828788b@invisiblethingslab.com> <6be66b21-303f-e0d2-4156-cef9428f2ab2@xen.org>
In-Reply-To: <6be66b21-303f-e0d2-4156-cef9428f2ab2@xen.org>
From: Owen Smith <owen.smith@cloud.com>
Date: Tue, 27 Jun 2023 11:53:45 +0100
Message-ID: <CAC_UY8-1pvnTQDnvAJ81AhfbkrED+m8srVkKrqGVbpCc8hHSRA@mail.gmail.com>
Subject: Re: Xenbus issues on Qubes OS / win10
To: paul@xen.org
Cc: win-pv-devel@lists.xenproject.org
Content-Type: multipart/alternative; boundary="000000000000aea0e105ff1a48b6"

--000000000000aea0e105ff1a48b6
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Theres also registry overrides
HKLM\System\CCS\Service\Xen\Parameters XenLogLevel that can be set to 0 to
disable logging via the Xen debug port, and QemuLogLevel for the QEMU debug
port.

Owen

On Tue, Jun 27, 2023 at 11:43=E2=80=AFAM Paul Durrant <xadimgnik@gmail.com>=
 wrote:

> [CAUTION - EXTERNAL EMAIL] DO NOT reply, click links, or open attachments
> unless you have verified the sender and know the content is safe.
>
> On 23/06/2023 16:37, Rafa=C5=82 Wojdy=C5=82a wrote:
> > Hello,
> >
> > I'm trying the latest PV drivers on Qubes OS (backend is Xen 4.14.5)
> > with Windows 10 pro and having some issues. Mainly, xenbus fails to
> > initialize properly. I've attached a debug output, the main issue seems
> > to be this:
> >
> > xenbus|StoreAcquire: =3D=3D=3D=3D>
> > xenbus|GnttabAcquire: =3D=3D=3D=3D>
> > xenbus|RangeSetPop: fail3
> > xenbus|RangeSetPop: fail2
> > xenbus|RangeSetPop: fail1 (c000009a)
> > xenbus|FdoAllocateHole: fail1 (c000009a)
> > xenbus|GnttabAcquire: fail2
> > xenbus|GnttabAcquire: fail1 (c000009a)
> > xenbus|StoreAcquire: fail1 (c000009a)
> > xenbus|FdoD3ToD0: fail6
> >
> > ...which seems pretty suspicious. It's been some years since I looked a=
t
> > the drivers' code so any ideas as to what may be causing this are
> > welcome :)
> >
> > I've built the driver myself from commit b03c9c0.
> >
> > Btw, is there a way to tell the drivers to leave the xen's serial
> > console alone? I'm using it for debugging because adding a second seria=
l
> > device is currently problematic in Qubes.
> >
>
> Logging will go via QEMU's and Xen's debug ports. You should be able to
> turn off logging to Xen's by nopping out the call to
> LogAddDisposition(...XEN_PORT...) in src/xen/driver.c.
>
>    Paul
>
>
>

--000000000000aea0e105ff1a48b6
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div class=3D"gmail_default" style=3D"font-family:monospac=
e">Theres also registry overrides HKLM\System\CCS\Service\Xen\Parameters=C2=
=A0XenLogLevel=C2=A0that can be set to 0 to disable logging via the Xen deb=
ug port, and=C2=A0QemuLogLevel for the QEMU debug port.</div><div class=3D"=
gmail_default" style=3D"font-family:monospace"><br></div><div class=3D"gmai=
l_default" style=3D"font-family:monospace">Owen</div></div><br><div class=
=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr">On Tue, Jun 27, 2023=
 at 11:43=E2=80=AFAM Paul Durrant &lt;<a href=3D"mailto:xadimgnik@gmail.com=
">xadimgnik@gmail.com</a>&gt; wrote:<br></div><blockquote class=3D"gmail_qu=
ote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,20=
4);padding-left:1ex">[CAUTION - EXTERNAL EMAIL] DO NOT reply, click links, =
or open attachments unless you have verified the sender and know the conten=
t is safe.<br>
<br>
On 23/06/2023 16:37, Rafa=C5=82 Wojdy=C5=82a wrote:<br>
&gt; Hello,<br>
&gt; <br>
&gt; I&#39;m trying the latest PV drivers on Qubes OS (backend is Xen 4.14.=
5) <br>
&gt; with Windows 10 pro and having some issues. Mainly, xenbus fails to <b=
r>
&gt; initialize properly. I&#39;ve attached a debug output, the main issue =
seems <br>
&gt; to be this:<br>
&gt; <br>
&gt; xenbus|StoreAcquire: =3D=3D=3D=3D&gt;<br>
&gt; xenbus|GnttabAcquire: =3D=3D=3D=3D&gt;<br>
&gt; xenbus|RangeSetPop: fail3<br>
&gt; xenbus|RangeSetPop: fail2<br>
&gt; xenbus|RangeSetPop: fail1 (c000009a)<br>
&gt; xenbus|FdoAllocateHole: fail1 (c000009a)<br>
&gt; xenbus|GnttabAcquire: fail2<br>
&gt; xenbus|GnttabAcquire: fail1 (c000009a)<br>
&gt; xenbus|StoreAcquire: fail1 (c000009a)<br>
&gt; xenbus|FdoD3ToD0: fail6<br>
&gt; <br>
&gt; ...which seems pretty suspicious. It&#39;s been some years since I loo=
ked at <br>
&gt; the drivers&#39; code so any ideas as to what may be causing this are =
<br>
&gt; welcome :)<br>
&gt; <br>
&gt; I&#39;ve built the driver myself from commit b03c9c0.<br>
&gt; <br>
&gt; Btw, is there a way to tell the drivers to leave the xen&#39;s serial =
<br>
&gt; console alone? I&#39;m using it for debugging because adding a second =
serial <br>
&gt; device is currently problematic in Qubes.<br>
&gt; <br>
<br>
Logging will go via QEMU&#39;s and Xen&#39;s debug ports. You should be abl=
e to <br>
turn off logging to Xen&#39;s by nopping out the call to <br>
LogAddDisposition(...XEN_PORT...) in src/xen/driver.c.<br>
<br>
=C2=A0 =C2=A0Paul<br>
<br>
<br>
</blockquote></div>

--000000000000aea0e105ff1a48b6--


From win-pv-devel-bounces@lists.xenproject.org Wed Jun 28 14:34:01 2023
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 28 Jun 2023 14:34:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.556499.869087 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1qEWF4-0001Ph-2u; Wed, 28 Jun 2023 14:33:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 556499.869087; Wed, 28 Jun 2023 14:33:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1qEWF3-0001Pa-WB; Wed, 28 Jun 2023 14:33:57 +0000
Received: by outflank-mailman (input) for mailman id 556499;
 Wed, 28 Jun 2023 14:33:56 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=UEcM=CQ=tibco.com=osmith@srs-se1.protection.inumbo.net>)
 id 1qEWF2-0001PU-C6
 for win-pv-devel@lists.xenproject.org; Wed, 28 Jun 2023 14:33:56 +0000
Received: from mail-lf1-x12d.google.com (mail-lf1-x12d.google.com
 [2a00:1450:4864:20::12d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ccfd9be2-15c0-11ee-8611-37d641c3527e;
 Wed, 28 Jun 2023 16:33:51 +0200 (CEST)
Received: by mail-lf1-x12d.google.com with SMTP id
 2adb3069b0e04-4fb8574a3a1so3199827e87.1
 for <win-pv-devel@lists.xenproject.org>; Wed, 28 Jun 2023 07:33:51 -0700 (PDT)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ccfd9be2-15c0-11ee-8611-37d641c3527e
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1687962831; x=1690554831;
        h=to:subject:message-id:date:from:mime-version:from:to:cc:subject
         :date:message-id:reply-to;
        bh=6oaGthj2JwoZzQuiiymv7M0woNHNNxHohqw7iPoVgXU=;
        b=Csb956sW1uRqdC9DhvjKWjsN2ZR7wOOuiN8HfIUbh+TW08CyTvCfUEOxSQFEC6lnCa
         4Nuit+oUKL97uZudCfbecS7B+zr1CuXSaYEelBSbfDJbcDBACaq7Ei+Q9T5Dpx4iPsf0
         uAeKcCthQpg8UPFJNimaa5bF/K7ucRwW9xDTE=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1687962831; x=1690554831;
        h=to:subject:message-id:date:from:mime-version:x-gm-message-state
         :from:to:cc:subject:date:message-id:reply-to;
        bh=6oaGthj2JwoZzQuiiymv7M0woNHNNxHohqw7iPoVgXU=;
        b=MmDORVVqaFPmX0tQABqbIptjyAZc5+wwBqIPHLs55VfB/di76f6xFhRw+7szhhPkML
         MU3bkLEOGwrQipaFCiPURSoX6cTyFD6lTLmFXJodHbYw1tBAmDyGp+0IbO6Hbu/t6CH6
         tI2P15HyR5x7QNhwIyMYpFl2upS+gKdaS6fTKkNipDNoW43WMf5zT6Ka4yc9Zsjewz3f
         /x9Vyc/LnC154UWMMAsMCYk3IySBH13QArNJdjbLqbs65bHqsUGNEO4feyu8Q4g6W2W3
         jdBQ4w9IS62XIg3sk3ZugfiO/muO+6j1X4nnYSkk7khGDsRvwQtpFjWQF1D6VtzWNY8R
         1iTA==
X-Gm-Message-State: AC+VfDw4aTa2Ix8fePsgBI1LnUQbBaA76JQYAOr2nPUdIR0AJ3NI8ffS
	TfFXPA6RcS6it4fl1M/MfaVzK5Ychm2pe1cMGpdsOk4EgfyccWJwyw==
X-Google-Smtp-Source: ACHHUZ5CGcBeoZ/PrLxfPr4KfBrevS9AdH2t6B1v3HQS2VtSlqB9G+1OScSJU4VgYi8yLKZDEGPthyyVP9UvLtdE7PM=
X-Received: by 2002:a05:6512:3d26:b0:4fb:89c1:c209 with SMTP id
 d38-20020a0565123d2600b004fb89c1c209mr3747297lfv.62.1687962830632; Wed, 28
 Jun 2023 07:33:50 -0700 (PDT)
MIME-Version: 1.0
From: Owen Smith <owen.smith@cloud.com>
Date: Wed, 28 Jun 2023 15:33:39 +0100
Message-ID: <CAC_UY88TaWV0RMMuDVq_9VZR0wF4tzWfNW83nHAMZnMzmhRkdg@mail.gmail.com>
Subject: Win11 22H2 and CoInstallers
To: "win-pv-devel@lists.xenproject.org" <win-pv-devel@lists.xenproject.org>
Content-Type: multipart/alternative; boundary="000000000000ea206b05ff31786b"

--000000000000ea206b05ff31786b
Content-Type: text/plain; charset="UTF-8"

Looks like the HLK tests for Win11 22H2 fail if you specify a coinstaller.
I've not dug through the full implications of this yet, but looks like the
coinstallers will need removing going forwards.

(snippet of DF - InfVerif INF Verification logs)
  <Warn File="" Line="-1" UserText="Code 1324,
C:\Windows\System32\DriverStore\FileRepository\xenbus.inf_amd64_17e41dd0114cba4e\xenbus.inf
line 32: [Version] section should specify PnpLockdown=1 to prevent external
apps from modifying installed driver files." CA="156088" LA="157185">
    <Data>
      <WexTraceInfo ThreadId="508" ProcessId="8128" TimeStamp="8686668616"
LogSessionId="1" SessionTraceCount="89" />
    </Data>
    <rti id="795664978" />
    <ctx id="815116702" />
  </Warn>
  <Error File="" Line="-1" ErrCode="0x0" ErrType="" ErrorText="Error
0x00000000" UserText="Code 1303,
C:\Windows\System32\DriverStore\FileRepository\xenbus.inf_amd64_17e41dd0114cba4e\xenbus.inf
line 154: Found legacy AddReg operation defining co-installers
(CoInstallers32)." CA="158863" LA="159423">
    <Data>
      <WexTraceInfo ThreadId="508" ProcessId="8128" TimeStamp="8686670389"
LogSessionId="1" SessionTraceCount="90" />
    </Data>
    <rti id="795664978" />
    <ctx id="815116702" />
  </Error>

Owen

--000000000000ea206b05ff31786b
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div class=3D"gmail_default" style=3D"font-family:monospac=
e">Looks like the HLK tests for Win11 22H2 fail if you specify a coinstalle=
r.</div><div class=3D"gmail_default" style=3D"font-family:monospace">I&#39;=
ve not dug through the full implications of this yet, but looks like the co=
installers will need removing going forwards.</div><div class=3D"gmail_defa=
ult" style=3D"font-family:monospace"><br></div><div class=3D"gmail_default"=
 style=3D"font-family:monospace">(snippet of DF - InfVerif INF Verification=
 logs)</div><div class=3D"gmail_default" style=3D"font-family:monospace">=
=C2=A0 &lt;Warn File=3D&quot;&quot; Line=3D&quot;-1&quot; UserText=3D&quot;=
Code 1324, C:\Windows\System32\DriverStore\FileRepository\xenbus.inf_amd64_=
17e41dd0114cba4e\xenbus.inf line 32: [Version] section should specify PnpLo=
ckdown=3D1 to prevent external apps from modifying installed driver files.&=
quot; CA=3D&quot;156088&quot; LA=3D&quot;157185&quot;&gt;<br>=C2=A0 =C2=A0 =
&lt;Data&gt;<br>=C2=A0 =C2=A0 =C2=A0 &lt;WexTraceInfo ThreadId=3D&quot;508&=
quot; ProcessId=3D&quot;8128&quot; TimeStamp=3D&quot;8686668616&quot; LogSe=
ssionId=3D&quot;1&quot; SessionTraceCount=3D&quot;89&quot; /&gt;<br>=C2=A0 =
=C2=A0 &lt;/Data&gt;<br>=C2=A0 =C2=A0 &lt;rti id=3D&quot;795664978&quot; /&=
gt;<br>=C2=A0 =C2=A0 &lt;ctx id=3D&quot;815116702&quot; /&gt;<br>=C2=A0 &lt=
;/Warn&gt;<br>=C2=A0 &lt;Error File=3D&quot;&quot; Line=3D&quot;-1&quot; Er=
rCode=3D&quot;0x0&quot; ErrType=3D&quot;&quot; ErrorText=3D&quot;Error 0x00=
000000&quot; UserText=3D&quot;Code 1303, C:\Windows\System32\DriverStore\Fi=
leRepository\xenbus.inf_amd64_17e41dd0114cba4e\xenbus.inf line 154: Found l=
egacy AddReg operation defining co-installers (CoInstallers32).&quot; CA=3D=
&quot;158863&quot; LA=3D&quot;159423&quot;&gt;<br>=C2=A0 =C2=A0 &lt;Data&gt=
;<br>=C2=A0 =C2=A0 =C2=A0 &lt;WexTraceInfo ThreadId=3D&quot;508&quot; Proce=
ssId=3D&quot;8128&quot; TimeStamp=3D&quot;8686670389&quot; LogSessionId=3D&=
quot;1&quot; SessionTraceCount=3D&quot;90&quot; /&gt;<br>=C2=A0 =C2=A0 &lt;=
/Data&gt;<br>=C2=A0 =C2=A0 &lt;rti id=3D&quot;795664978&quot; /&gt;<br>=C2=
=A0 =C2=A0 &lt;ctx id=3D&quot;815116702&quot; /&gt;<br>=C2=A0 &lt;/Error&gt=
;<br></div><div class=3D"gmail_default" style=3D"font-family:monospace"><br=
></div><div class=3D"gmail_default" style=3D"font-family:monospace">Owen</d=
iv></div>

--000000000000ea206b05ff31786b--


From win-pv-devel-bounces@lists.xenproject.org Wed Jun 28 15:11:15 2023
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 28 Jun 2023 15:11:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.556515.869101 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1qEWp4-00069A-WD; Wed, 28 Jun 2023 15:11:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 556515.869101; Wed, 28 Jun 2023 15:11:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1qEWp4-000693-TD; Wed, 28 Jun 2023 15:11:10 +0000
Received: by outflank-mailman (input) for mailman id 556515;
 Wed, 28 Jun 2023 15:11:09 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=fIG9=CQ=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qEWp3-00068x-7L
 for win-pv-devel@lists.xenproject.org; Wed, 28 Jun 2023 15:11:09 +0000
Received: from mail-wr1-x42f.google.com (mail-wr1-x42f.google.com
 [2a00:1450:4864:20::42f])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 004547c7-15c6-11ee-b237-6b7b168915f2;
 Wed, 28 Jun 2023 17:11:05 +0200 (CEST)
Received: by mail-wr1-x42f.google.com with SMTP id
 ffacd0b85a97d-311394406d0so5416928f8f.2
 for <win-pv-devel@lists.xenproject.org>; Wed, 28 Jun 2023 08:11:04 -0700 (PDT)
Received: from [192.168.2.98] (54-240-197-235.amazon.com. [54.240.197.235])
 by smtp.gmail.com with ESMTPSA id
 t5-20020a05600001c500b00313f7b077fesm6913155wrx.59.2023.06.28.08.11.03
 for <win-pv-devel@lists.xenproject.org>
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 28 Jun 2023 08:11:03 -0700 (PDT)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 004547c7-15c6-11ee-b237-6b7b168915f2
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1687965064; x=1690557064;
        h=content-transfer-encoding:in-reply-to:organization:reply-to
         :content-language:references:to:subject:user-agent:mime-version:date
         :message-id:from:from:to:cc:subject:date:message-id:reply-to;
        bh=rkjSpohg3nEIEBBObkrIsi2rA8dla8WZNYeI8ve9U4U=;
        b=l2D+socROWmbE1Rs4zznQyfiuH2nhe89BlyFCgDGWOo+CepGvxH6qKQT7fMaWD7AW+
         2Bi+IMEA94+4Ax7ul/w57Q19CuLoeQjV79bs2J2bbPVDJQ4CpSjbORLjPG6JiYlb+tZV
         S1U0uaZo7pa5tynDuhWYN6r1tOXWiHETfPo2gCIx1TCCYFcF+BZC8iin/GCyvKuDequw
         dX7sQIHpQWWe/Cfmf5s5329HuW7Akw1727Q/ar4UHLpgJxculjxNv3LPTOwXj/KDEYv0
         wqu9Y+Imevb+j1s7pD2BVIAw5Y15o44IYGqHFShF57PRN21aIqrA4SV+HQr6wiiyhsjf
         adLQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1687965064; x=1690557064;
        h=content-transfer-encoding:in-reply-to:organization:reply-to
         :content-language:references:to:subject:user-agent:mime-version:date
         :message-id:from:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=rkjSpohg3nEIEBBObkrIsi2rA8dla8WZNYeI8ve9U4U=;
        b=PM5r/eC3U/+5YN5SWuTsY0Fho7w5cw6yRmMnjpHccm+OLRE56rozRryRzemeOi3DCV
         /mxOz8KsPZxWj0X5qynE7RxHMvx3eiZtqF03p/3AYdfPhPiLMEdYokqOF95zyAVQ6kY1
         mEYEBdK0G80SwDGbw9jWZehlGEuFMwvjbTLFNMu+9nWeT4Cn3PSHFTnhsOF66Gz/mwGb
         xlM2POKIsGdjZVGgMGLu5r3gB4Keqay7HlLGs9pvmfPXZwx9ky0YpQX/yIg8zS8T5qpk
         grX/vR4c9ISmMdCJ6fnRAoCVkGCH8EForixQm3glv+CqrTWscxToXhRrf9aQ8NbDQi1I
         rLxA==
X-Gm-Message-State: AC+VfDztC6BH8lkn+k+sAsXvmKWdmAVDHrF2NUDXbWlOVZdlk1hGAFhF
	8JaX9IJA/W3G7SJR2P467yYR/zcQMGKWYA==
X-Google-Smtp-Source: ACHHUZ5TvirRIERIlfHrRvkMst39zlpjfqAOEgJlpdHfGnopnIjz7XZSkEDXEx8hC/gAIbHcZcMlsw==
X-Received: by 2002:a5d:54cf:0:b0:313:f00b:f03a with SMTP id x15-20020a5d54cf000000b00313f00bf03amr7140640wrv.21.1687965064152;
        Wed, 28 Jun 2023 08:11:04 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Message-ID: <3c76f52e-68e4-dca3-2220-0e1497e9a2e0@xen.org>
Date: Wed, 28 Jun 2023 16:11:02 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.12.0
Subject: Re: Win11 22H2 and CoInstallers
To: win-pv-devel@lists.xenproject.org
References: <CAC_UY88TaWV0RMMuDVq_9VZR0wF4tzWfNW83nHAMZnMzmhRkdg@mail.gmail.com>
Content-Language: en-US
Reply-To: paul@xen.org
Organization: Xen Project
In-Reply-To: <CAC_UY88TaWV0RMMuDVq_9VZR0wF4tzWfNW83nHAMZnMzmhRkdg@mail.gmail.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 28/06/2023 15:33, Owen Smith wrote:
> Looks like the HLK tests for Win11 22H2 fail if you specify a coinstaller.
> I've not dug through the full implications of this yet, but looks like 
> the coinstallers will need removing going forwards.

Have Microsoft come up with an alternative (after a decade of not doing 
so)? The co-installers were introduced for a good reason, and while we 
managed to move *most* of the stuff they used to do into the driver, we 
didn't manage to do everything.

I thought we still had a coinstaller in XENVIF and XENVBD too. I'd have 
to check though.


   Paul

> 
> (snippet of DF - InfVerif INF Verification logs)
>    <Warn File="" Line="-1" UserText="Code 1324, 
> C:\Windows\System32\DriverStore\FileRepository\xenbus.inf_amd64_17e41dd0114cba4e\xenbus.inf line 32: [Version] section should specify PnpLockdown=1 to prevent external apps from modifying installed driver files." CA="156088" LA="157185">
>      <Data>
>        <WexTraceInfo ThreadId="508" ProcessId="8128" 
> TimeStamp="8686668616" LogSessionId="1" SessionTraceCount="89" />
>      </Data>
>      <rti id="795664978" />
>      <ctx id="815116702" />
>    </Warn>
>    <Error File="" Line="-1" ErrCode="0x0" ErrType="" ErrorText="Error 
> 0x00000000" UserText="Code 1303, 
> C:\Windows\System32\DriverStore\FileRepository\xenbus.inf_amd64_17e41dd0114cba4e\xenbus.inf line 154: Found legacy AddReg operation defining co-installers (CoInstallers32)." CA="158863" LA="159423">
>      <Data>
>        <WexTraceInfo ThreadId="508" ProcessId="8128" 
> TimeStamp="8686670389" LogSessionId="1" SessionTraceCount="90" />
>      </Data>
>      <rti id="795664978" />
>      <ctx id="815116702" />
>    </Error>
> 
> Owen



