From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM02-BL2-obe.outbound.protection.outlook.com (mail-bl2nam02on0052.outbound.protection.outlook.com [104.47.38.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id BA9D321D091A8 for ; Thu, 27 Jul 2017 07:19:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amdcloud.onmicrosoft.com; s=selector1-amd-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=zNcpKQhPtZI62GrAA2QYvukkNURp2tCjDVfcndFdFCQ=; b=JnwgDRZcUxD78uYz6X14FkY17n6yEIsKYsnn8no/7+dXELStkpmALULvjP0Y0sQXOpCHQoeUDi0wUzho0oiL0scz3tzTjOd+f+GvzIuAGwM0s6Qdwt/mlF7kJ6ToWj9CfcnMqrWwGXcfoHcG3f9NftuJavg+fDA9D1ahu9Cenlc= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=brijesh.singh@amd.com; Received: from [10.236.136.62] (165.204.77.1) by SN1PR12MB0160.namprd12.prod.outlook.com (10.162.3.147) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.1.1304.14; Thu, 27 Jul 2017 14:21:24 +0000 Cc: brijesh.singh@amd.com, Tom Lendacky , Jordan Justen , Jason Wang , "Michael S . Tsirkin" , Gerd Hoffmann , Ard Biesheuvel To: Laszlo Ersek , edk2-devel@lists.01.org References: <1500502151-13508-1-git-send-email-brijesh.singh@amd.com> <841bec5f-6f6e-8b1f-25ba-0fd37a915b72@redhat.com> From: Brijesh Singh Message-ID: <4e2fc623-3656-eea7-09a8-b5c6d2f694e1@amd.com> Date: Thu, 27 Jul 2017 09:21:18 -0500 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.2.1 MIME-Version: 1.0 In-Reply-To: <841bec5f-6f6e-8b1f-25ba-0fd37a915b72@redhat.com> X-Originating-IP: [165.204.77.1] X-ClientProxiedBy: MWHPR21CA0052.namprd21.prod.outlook.com (10.172.93.142) To SN1PR12MB0160.namprd12.prod.outlook.com (10.162.3.147) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: ce9395ea-40e2-4af0-56a3-08d4d4fac3b1 X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254109)(48565401081)(300000503095)(300135400095)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:SN1PR12MB0160; X-Microsoft-Exchange-Diagnostics: 1; SN1PR12MB0160; 3:wvojsjhuaW1FYgVjaFS1WZCKQh6mMa1HOvI3MMzKG7sBdyAn5C0UtPCY5sXQcrmxfTDTXKGk1QotJE+6tcGSxM2xeTjoMGsv9rENzUmT567qVBA5l5rNJ1KRFoNoQ9SFBcV7sfk4UmStz9cWMKM8aSiloQS2ic05jsgH3BJsVhEreNc8069ahMeFMjF8Ks94xjSxnhgqNG+4QqvcLhYJ1bZw4Oi1ig8Jf/BFIK1StLD1Oxs5dG+b6tGVTZr1SdCdhoteDgzteSVVDu52KhCQACi9Val/JRNjk8q93jLRF8igVkglQJLgVkXXlezIK8ncqyasf04y8ioSiCRUk8GBEOuJYr37hYfCbF7r+yknpj6F6WxXhipeirGnJtBc/PZ0gvEQScu7TsZcj3EKC6eogtlGjnYZX0f5QazTqglVwsK5sX5JOD+PLMPUWR2Oo88u1YFsFP6dPLwJQ840Aqn0uAw9kVKlqm2prL2M8nHXMd7zG57Z8bZqTbLHDm7bRXYXCWNEuol8jnTWTDoHIOTv2uro0UXzPXnqnIqj7LlqUlCKDGABGU2loFiqd2aj+zodD82yc8mkUapIvi2Rbsf2vLLlwNZZsJCtnCZ3Hg+NJOeneJTbq1fskbGjOOpg9u8LujIL4jwmn3hGW/WLfKUeH38vpiAKDfMCPRt/CxsWaEsM2K5o1ffKKkXhd3c0dCInSKrTs2YTYFTDmbtOt2KlXwWTN6VoCphVhBtTgKNRnmqIiMfaSPv8LkUn3shw90YfJC8M3XH0oI2to5F0wxF/D7FW2MW99sq4jUngs6iLiKZSJIQ+tCVHDiorG/fDDB2HG1/Y4jh+tUCAHFrOn0C1fg== X-MS-TrafficTypeDiagnostic: SN1PR12MB0160: X-Microsoft-Exchange-Diagnostics: 1; SN1PR12MB0160; 25:puanFJRALabpq3jynNsyJ5gngRsvqTvIoK3WgEcIjpMpeUEoJjcMGfGCX+tOGRNUdJgJAs/xxcd3vlIfWZRZNPwhDsCu8/Hk/BRYhnRqHSx7hF/SsB6ghCdRFTaeeaqlk5R7hiKKk2yWq0LlRIr6aFhc679+2cdWgR6OKQlFtDfql+jCJAy+rQKC+EoM4rYU9G0F6hfNJMeR4afSlFn0yOoMttN+4AJu5aJe/xKq1UfRfesUC8tChQVvXBpQZ7pgA+O2pgytcZlxuDNMIggyrZPpSr+5ecMOfWaRkKFJFoi02RyfKYtkjKQ94qQ6DBQYsfYpbGZB7ELCqzjbkynEUHQxtS/hvLbCtXM9c3KHMGvysfxoP7tz6InjvVxp656AY37Ym1CwbR+wWzB/ltIg9KrZznQrZuFyWO5Ob7O5H2h0G9lkzby4qF0G+ZdKCndaReuWrer2tSU4fz2mmXfCttWo70rM6uf3RWpcw235OZ6655NNx9LAK/lyzVozTJQIY12OWkx4LvbwM/gEkigtMAovbg5/W4PvMZpjtRTLstUclThpUXQ9+XWqAx4ZTPwd/StIuSUgbSkAd3V87HCPcdf6H07rn/2Id2JckIORe7YIfdoz5Lwzm/3Z/Pnisk2Y1j/8pErTSr7nmfUN32ol1sU+WIDoBitNkYoG01ZUKsnFMehNs987rLnF7mzWcWXR4rte7O9kA7zgxS+ulkTPbK4XdigRIVybZk3GPrhgsI6A1kw8mYA2QrNiEJCnEFEB4dx+FYVoqLwc/HXWnon79bVhXkhWvhW4+8RXhTVRZDdr8M9iu/CTkWJQaNzT2/xQRGNKkuH0TTxy8z05al5cdlkzDZvOzJTCw0eR8hnPbHOPZ08OEleyLGk2tWOMwxw8JLRxFkFPu7FdfY7IwLT0/zejy3SIjWMjRHKj9M5357Y= X-Microsoft-Exchange-Diagnostics: 1; SN1PR12MB0160; 31:az963FTZegw7V7CVZ6sVy6UirptErgO7NZDboi4RSC2STHXTA8VvIW3xBMNCfhWKC5cdprIGXczG9yBp+uW1Y4owHDWlEm5gkN0DYZMP8eIRtldXeS+XKvOMipkmPRgYX3lmOuBuQz3+ZlfxWOQaoQX9QHjjXpxkKX0ubmL0c9y9ipJNt2LXntzMb0iwTIl42BSz20dJ4yDlmhki8gLXD0Smb7orz27KJAmQ2tgwZjAQ4LCmb4pXkg4bGC4IC7RQ1fDavoQMzieS1F37IZaXWPZ2EyqoG0b8LhUSxtUz9lrheK6E7V4+shp4FK7D7tqP4RpeyyTaPV6cUFij6L0uiRdCLO8jCvX9XCxveVeGwMNr6eKS3yp7NLIfP1j0IXecBQ9X0s7gWSfhSDK9Az7+oUEFMIJPo4F+Arjq7QiQQmjadWWZ6uTpaR27vWwqryRPDgizyG9tZ2UVx3MTsTcZyqxYRkX0AxivLR8IFv4ldPSaTPDUQdKV1UHzRx3FxkKCyq1iRU3riySibGjMpwnruulu2fH55iK95hWpMJNrAGDx+CQdP8H6m2s2WLPngB1XnCLXIZWrnh+reCCDuVXGAYHCwQ/wAzommNsobc6NA0uvFraskjC+7J8+TKTaLhe3RLJh3fkGIbyPabotRbGWBsiK9myNVAPxZW48AVZJr9U= X-Microsoft-Exchange-Diagnostics: 1; SN1PR12MB0160; 20:HUbvxmjKuovLRQdYdDXpo+fMlgFp9zmMsEDr7OVL/+Ez4xbt1l6VV0DSI2ZI9nneFgW067nlhS5KPg9pZHRtuTxf38MF3L/gSKf2QB1qpAr5rKnkox99H57y35eXtDpbYT+FitJ0Hwe6QAeHafQZ7aGQepvT1HXuAGMvdSNw/DY1/yiujRthuhO++XByM5Rk7EiH0OuioRRIxaOiHDu8S0sObArd5uz8of3hH4l6tbYFEXQZNy4f/BT0DCqNSmixyBdAHAh45pxe+KxS74X869e2fiYnJdi/06G9aOR4r0luRshMfHchSfWoB84yx0+gJMGDSPQBL4sED6dapcjMGBo0G5UzHpGqg2ryv78XrtRQP/iT20C2JUbr+hNfDC5d/Hp3TtOC7Kn3IZXlhVA0NmuxLF5RHrXM7Fyreu7Ijd5s/GSSAI6OAIOW5YRz87NKSq60Ub65uXRSf4qThTnjt0JWTcRTsyiQ19qHq5iTUrgkepjJ1dbPfSgEMEGI89pZ X-Exchange-Antispam-Report-Test: UriScan:(166708455590820); X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(5005006)(8121501046)(3002001)(93006095)(93001095)(100000703101)(100105400095)(10201501046)(6055026)(6041248)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123558100)(20161123562025)(20161123560025)(20161123555025)(20161123564025)(6072148)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:SN1PR12MB0160; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:SN1PR12MB0160; X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtTTjFQUjEyTUIwMTYwOzQ6enZTSURBQlh5SlFyUFI2M1ByeTQyU0krNWRl?= =?utf-8?B?Y3N3WEJ5VmJSMDkwVjBobURURXFRK1dkc3lHRDA5NUFkRFJhd2VzMlRndkJx?= =?utf-8?B?MzRYV1BKK3NBMzFwN2E5MkQwUXJDdWpIRTh6TjdjSmNsNHdFckNZSmtueWdy?= =?utf-8?B?Y08wY2FSdzZORStzZWMxdGRYamRpSlVKSTlYTitGMVMwaHpBa1pHZTdyMGFz?= =?utf-8?B?YmJ0TlRSdndla1RsRjhBenhiSXVGdXU2QW1oMEVCL2xPVFZMWnROR3BZaWt4?= =?utf-8?B?UzRSanBnNmtYMGc4ZUFITGJkREI5UkdJVXdla044MWszcTY3QzNzak1mcmVj?= =?utf-8?B?ZHI3V0N1dTFtZ2p0Q0J3blRSRXgxeURYeFVXTTFSWjBxdWJzSXlERDJwVEZL?= =?utf-8?B?c0lrS3lXQlp2a0xCbys0TERHTThBaHltaGg1VzZ3Um9OdjBTNTEzdFJ1eHlz?= =?utf-8?B?cXZSQ0xDTmxMb2F3cmJZUVRXNmlVQTI0MDh3cklwQjhReTNvU3M5dGxQWHJI?= =?utf-8?B?RmhGYTVxUlpZUHBVNzF4L0M4Y1BmUklPMFFQSnEyVldLYXlHUjhIc0N3Y3BI?= =?utf-8?B?VUh1QzJUalFVR2FKT3IwSVhrNHhkc2F1am1sNFFHVVQwVSsxbjNqd2JxV3hD?= =?utf-8?B?UzEvcklrYVM5eG83b2tZU3M5bkQzdDJVbTJsVHhZK2VxTWV6MVJxTzJxR05M?= =?utf-8?B?OEhpVS8reTFBZzcyK0IzdlY3NkFjWVFZbUJ5a3VWUTlnbUNBbW9SaFFsT1Iy?= =?utf-8?B?S3BMRVhMTVhMNEY5WmpGWVpXV3V0R3R5VmJWYnAxMzF3bGZyQ1ZqcU0rYXZq?= =?utf-8?B?ek5OblZ5bFEza0tGVHpKUXJyaU10bUphMlhlZ2NVa0w0U1F4RWhQSUwwRnIy?= =?utf-8?B?WDR2a1ZTdXRZQndtaTFORGJ1UWsvT1VkelVXOVFsNVlZQXBHVnN4c3hCZlpo?= =?utf-8?B?bFgvYVcwcEZ2TzlhQnAxcFp4RHBtczhOYWw2WGhnLzNtd0tTWE1FUnNMYjlY?= =?utf-8?B?S2owbGVNQ1VIMG5UWGZlalNLZnYreFdjNVF6QnE2TnVVQU1vOXhYWkl3Y3dC?= =?utf-8?B?QUZVc2dZZ09vUGdWMzNJaFhaQlJza05TcEYwYmFoYWxoSm1TMVJuUHJ6ampk?= =?utf-8?B?TDhKYU0weENKRFB1dUQwbjF2R1g1RHNjMlJXY3BxR3Z3VThCQ2ZiZWc0Qm1V?= =?utf-8?B?WTdwOVA4L2ZxOWR4c0QrN1BoRTdQaW94MGdsbXlhd3M0a0R2bHhseUVjQ290?= =?utf-8?B?c1hITWtOTk85ajNMQm5oV3ZPWTk0ZW9nQWdkVWFXZDFJR3NWUExWZXFQam9Q?= =?utf-8?B?VWdvMXpZdXhHQUNvRlNwZjlBWXU2Q1NCUzdyb2FzeGdxRU9pVS9ybHM0cVJ3?= =?utf-8?B?UDVMb1RjN0xWUG0xMlpSTjNQSUFTUXhaZFRDTWltaTRVZVRYbVhsaUNHYkdU?= =?utf-8?B?UElwWHJkc0Y0cjk4QkpjWHNtc0xuNW1TR2tIdEJNVmwxWFNZdEVTK3N0dUl1?= =?utf-8?B?TlF0U3Bidmk0ejQ3cDIwV3lYeDhMTHYwNm1mcTFCMFZneE45VGRMQ0E5OXlE?= =?utf-8?B?UTJtaUlNenp1Skc1UHVST3hnaGREYU9HRGgrYytGQUJpRzgrMkRqcm1VaU56?= =?utf-8?Q?c9Ke9swv+MbZUi46s+W?= X-Forefront-PRVS: 03818C953D X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(7370300001)(4630300001)(6049001)(6009001)(39850400002)(39450400003)(39840400002)(39860400002)(39400400002)(39410400002)(377424004)(199003)(189002)(966005)(53936002)(65806001)(6246003)(25786009)(5660300001)(36756003)(3846002)(4326008)(7736002)(81166006)(81156014)(83506001)(230700001)(47776003)(66066001)(478600001)(6116002)(110136004)(65956001)(8676002)(31686004)(106356001)(68736007)(2906002)(64126003)(7350300001)(86362001)(38730400002)(23676002)(305945005)(42186005)(105586002)(189998001)(50466002)(229853002)(97736004)(33646002)(65826007)(6306002)(4001350100001)(54906002)(31696002)(2950100002)(50986999)(6666003)(54356999)(77096006)(90366009)(101416001)(76176999)(6486002)(19627235001); DIR:OUT; SFP:1101; SCL:1; SRVR:SN1PR12MB0160; H:[10.236.136.62]; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en; Received-SPF: None (protection.outlook.com: amd.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtTTjFQUjEyTUIwMTYwOzIzOkpmS3FBNTN1eDVKS0NsMURWcHNwQTZwcjhT?= =?utf-8?B?d0VZRlptR1N2UHJraSsvcnJHVFcrSHhHVHJFNVRpNEJxQkt3RTRXZGxmbER1?= =?utf-8?B?aEhJU3JMYTI5RHA1UUg2UUlML1lHMmxGbjZTR3lkZnBYWm4wSldHVUgzdXBm?= =?utf-8?B?S1g5WnpvKzhreDFzNzNuZG5OZ0Fub0wySmxYdEpWNGxVYW95ZWRkSllVbGha?= =?utf-8?B?TTRnclRycXhJOGVyVWY5Mkh1MUpNMThycWJpTHNXdldHWVJ3ZzJKWkV3MzZl?= =?utf-8?B?bGo2eEIwZitZZzJGb3NjY1daaDFOTnA3cEJYeVFyeitUd0ZnUzlibm9lbUNB?= =?utf-8?B?dGtBamhWdW1SRjB1aFQ3bnZYSCttQ0FjYjkwMjFoczhnbU9sOHNmbHkvZUl6?= =?utf-8?B?ZEtiZ3U1aXBkNnVGZk5rUVc0U0RwZHlFdWh4cTErYUNxNmFGMVFHWUVDOUt3?= =?utf-8?B?Q2VidkxYTnphZnZpZHI5RTU0WUM5bzU5RnZkVDZCbEc2dlNDVk5KeVV6NDUr?= =?utf-8?B?bmcwcWlIM2g5cnVnWGxaNXBhY01tNnNtZUNZTUo0UkpqWFBwUENLQmdibmoz?= =?utf-8?B?Y2Z2cnAvbkx5QW9ENzJ6TE1TdU9maUVwa29UTUhuem5Cd2MrMlNyVDI1cEJn?= =?utf-8?B?blZGdGZCOGN2TDBpMmxwQm5JN05XRmlRdjJRck1Nc0hVUUo1MUFTVW1xR2R3?= =?utf-8?B?a0RJY3pBem5BT0h2YU5OMmdVVzhmUUJsRzNVckN3cmxTYm1lSTF3ZVlVRjVt?= =?utf-8?B?TWhBZ1hJOVNFZzJma0xmUkREdUZENzNxVUhKTVdNb2VKNFJ3dnh0cWFROThO?= =?utf-8?B?cFJuMDNDSDB5a3Q5VTNoTDIrbHBqNW1iMG1vV2RuN1hMbUZlZEZDSTNWYUZ2?= =?utf-8?B?MGpIN2xTL2I5SzdVdXIvTUtWM2pqdGMwZTRRZHczd1RWSE02d2pRQk1zL2lo?= =?utf-8?B?anpjUWZEc2Z6WVUxV1FOMk5NS3NpdnJzdy9PbTdpY0RTQk5YTUxLVHhNUDFu?= =?utf-8?B?QzBNSDFkUzBXbWdzb3NySm5vcG8zaWt4ZU9hWU9od1VUMlJHdHRkdXllOW1Z?= =?utf-8?B?dkRXU0NRUVkvdkJ2M04zcGNCaDJRdXdpSnRCSHc0SEU1d3lzQWZRdU8xKzdp?= =?utf-8?B?bG9FcVFyNWpIRjREeGN2NU9sOXJUcDFubUM4YktScWNsZE51RmNSemNUcHJx?= =?utf-8?B?cm1WU2tHTGJDZVRWSW9uNUhudzg5dVZsd3pEZW5hNWtzeGhUZG5icVJtTG52?= =?utf-8?B?TEM2SmE3Rm1KdDNPV0RMUGpoWGlWKzI1QS8vb1dScDJBQUg4bFlKaVJIRCtG?= =?utf-8?B?dnJFV3JjSmxuVlFCZjlqcU1CYWI3c2ZMaTZ0cUZGenhpakJSYzlZclFxYitk?= =?utf-8?B?ek4zbVZReWVJa2xReEgxSk9YeFZUQlljZ1NvT1N3NXVJTXhOWnUwR25TSERK?= =?utf-8?B?L25JK3drN1RFcUtLVnQ4SWh2ZEdNazA3WmMwR2xjZTZNVTZpYVFPNzI4WHZh?= =?utf-8?B?NEFHbERsaC93amlvbDdVNlNuL0puQ2N1b3g5WTdFMlkxN3JBc2x5NWZHMmo2?= =?utf-8?B?b1hlTVhtVkFsNEd3b0tsL281RUJFSHdFVjRTWThLTE9hQjdabEdHMGhsbjAw?= =?utf-8?B?eHZVci9jVHZldmg5NjM5Nk1ib3pIbmVBOVNwWXAyT3E0bHB6cXgvNVJPYzZN?= =?utf-8?B?RVg0b01nSEMxUXVCemNrY2x4eXdwTCt1amlKTUd4V1lqOXFTQ1U0VFovQmZY?= =?utf-8?B?K3dwQUZGTVdxRkZJT0xpRGRPVStpcS9rTEJTenNSQU4wNVFNM3c0M1FIYjdp?= =?utf-8?B?Q2kvSXo5QXlHMTBNd1ZGTThYajM1SlVWaFFrTWFBaUZBU0MweDM5dExYS0hK?= =?utf-8?B?dHEwYSs5WXdabmhJR2ZmMlR4UkVTUUYzOVBVT2d4bEQxYnE4bytUL2tqRnFX?= =?utf-8?B?dElUZlVqVkw3TDBlTmxRdEl1NVpBWnRuNGFpVVJrRjhKVXdNa1JaM0ZOM2Qv?= =?utf-8?B?WHhLTzJBKzRWMEF4VC9vVWpCNmdGZXNweFNuRUl3Qkd2YWRVakhlSlIxbjVD?= =?utf-8?B?N0NVOHQ0TDJ4bHNGSUM5Q3E0SmcrUlBYOS9wVmV2Y1loV1dSbWpiSUFaZFFQ?= =?utf-8?Q?9OjqfhJ7/nZv63XB8Yee0kzGJIc/x2UU+uQbnJNTzWxz?= X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtTTjFQUjEyTUIwMTYwOzY6TUdtdXJtVDVLc1lhdEVxOTVuNUo5K1NsQ2pK?= =?utf-8?B?ZUpIclNVNnpxdENSNHlXS01KbDFLWnF3ZHdUbHNSNk5Dd3pNOU1NODRvcjJr?= =?utf-8?B?cU5keGpLWWM0bXNSckFWdWFKYzJSVFE1WWFBeG5OVlhDQWZMdk5VMTdYMXp6?= =?utf-8?B?Z1hJR21ZYzVQN3hNenlWOUQ2OFpXQ0JWQVFRam1uWThtV0ZMdFRTcVE1SzVk?= =?utf-8?B?cS9GSGdhZVg0bi8rR1IvbWltRVZnRVBYM3VmR3FDcDFNbURNWXM0S0h6MVBk?= =?utf-8?B?WHlwekRlck9NamRLYmVrRjBmWnRiV1BaY2Fab2NkNzU4L0s3ajdPcElhWk5Z?= =?utf-8?B?K0RrRjJSaHU0VVNDQ1ZXcjYxVndoVTBzQkw0TzlIcWpVTzNQT0lEbTFpVlJB?= =?utf-8?B?cVk5cGU5aC9HVGtIYXkvdHZ6R0w5R0p4NnJDdjB4Y28rci9sTldyY2lKdEhs?= =?utf-8?B?WW0yWGJBVmJiZEszNThtVUxJdjlSYUVGWUROdHRDSFRlSTJ5dFR1SjFDRUs5?= =?utf-8?B?anAzalV0M3VETlo3N3p0V1RLaUY3UlZvSUcwaXZQSGIxQmhPT2V6d2laUzQy?= =?utf-8?B?NjBwTzdaWGZpaTZSdllLODc0Yzk5T0owUHBlVVd2cjBKMUthamR4dGx5dTR3?= =?utf-8?B?R2JCbHA1bm8xVnBlYWV6QUhFZHl4VitRQmtMTTIvbDNCbCt6U2R4ZEI4aUFL?= =?utf-8?B?TWpKM1E5YUpnZnNXV3o0M24xcHY3TFQ1L2lHMUhWeitzNXB1YmxGYlN1L1pW?= =?utf-8?B?bVFzZ0hiemludGJYZldnRkRDTVM0SjByT3IvOUJEcWRuQ3dvd25MbFBSa3RF?= =?utf-8?B?aWhWaFd3OWVEbjh6bGkyWjJoTHpxeGpza0lVV2ZYQWozNGJlN1ZzcjRRV3Z3?= =?utf-8?B?dWs4dDE5ZklvWmRYNnkwL2NnQkE4cVRxV3hPYnU3YkNHYnFkWFdVVXBQMnY4?= =?utf-8?B?ZDRsY1Z5K0c3eEZyOXBBdXpPai9qbmdGTmFmRjd6Z1dsem53SExXSlozM2hC?= =?utf-8?B?Sm1YSGFuTVcrMVhBNlI3MFR6UzN4a2xBWUtQczdNZW13Tm1iVGZNL3BZak5x?= =?utf-8?B?M1RieGVSM21iM3NFVmZqL0Y1N2t6UXF6UktBbE9mZ2RrLzZOa3lzWURxY09t?= =?utf-8?B?SDhYWVQrWW5WV3g4VGJudHdwWFovYVU1T2dGSHJ6OTJzdm5sZCtZOG1LYm1t?= =?utf-8?B?bWdtNEgzaFN0ZnpaUU5KWFNRTmozVk1KVDN5R281OE01VjdmZTQrYnVFdW1a?= =?utf-8?B?bTNEZ20yNE1rODUvRGFadXJoSHk0c2pVNTN2QkZMemJ3Z0dWbHFuTVlIQjA2?= =?utf-8?B?OVFwUXRZQzBOTzI4akFNRFdEUEpVMUMrS2lxQTdBaWJSQ3JHYWNKaGoweHFM?= =?utf-8?Q?VUlHrXt?= X-Microsoft-Exchange-Diagnostics: 1; SN1PR12MB0160; 5:9hbw7KNYm2PT50QpXDBDfWVifp/6zcHoF408hF36gUzCdQ7KyZVgXzFbUpvCGX+DNoqNjXK/iolhquOOkRD4Lwd9dmCTZMZ/VjEZ4YKXB4icN/VxDew5mTYavm07gNItqod5DdQdT7ucEM77hVR6k8qRx6zkgKdBuNuISuuil2LBmpaM3X+m43mBexgfvN3Z4fWPq03FF1WnKzwTXROdSom7JffZIxuKY219QsV4h1U9RRlGl1sZChqtOfwh2dO7TrPV7akCW+q/LCyGAYRPJTv96kOGRoIT3D2w1zSzjHcpP+4T4NadNZQUyQQSdm3y0unMDbfnQuKc/DXBstOLwe3GIhqqpVzjgehE4WhnrXDW4Qa3m1PmleaawaieN7AGoQQ6icLiav6ACEaJIJ2HlOSBLaIGDPDcxH+eoVcv9QJV3NTWiDhGKJZG8guX9YEbPjyUsJeyCxG5KzfxGaFORTqBbqWpBvskMntjuMt1+hEeHRKKYnOL1Trh4VKLC5bF; 24:djT3kKYEWIuuLygXSYs0+FSatL/3ROw4uyrrqoACYILfe1i73Sc72VNrN/iyntIu1AHFxYb0T59gUpfbK2Vi0fwI6ksJL6s+F7nUrinR1+s= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; SN1PR12MB0160; 7:j6nfCPn9QstT6QnsH6I0hPc1MhFGrjpOGcqcRbUZPZnygg2AbtcQs3aTalD+x4hZbCefXHM0LkA6bwWVtEcLDxEcJA0XrTf/+tJZQ7ds8S7saUfkaaciBsXb3CfklBEzAKEPehpUwmanaMGba9o2uUO1rhfvzNrGLBz0qI1oQagrTAJkvUUTitbJ45aMs+VYjLIJ/G/CX5+0fAHYUYcs84HI9xuZynddCJf3dsMQR4EVGermfmcLCRFfV+/S/MVEC3QzscyWbClWFx24CCETM06bnHyW7Q+CdI3Pdaldl/O6u/ucdkg3uJsoIHuDmu/N0PZH2PfxWknrWdy7UaFeAa1GWB9yb6Axq34MIYCqr5dDq1KG3h1RwVk+i8bT/qWsN9G7IHNIjX2mNZjCdw6VLJty2B2dNrqm6OpNLVflx3J3bH6RJ8yIsdXxuc2pmIbfqPxiFepe7RC52Ye3O8YdCFQJx5PkploZ2xg4lZbUybWdEJ737eU9aXdEKSQmd9yfdRQnpfJHk0JjBathFZS8mf4lmHx2We6gPAzNKf4TupxUcFxvHzCvAVclvmgzph9x+pCSkr/U75oQJDO7i4Fn1BsU3eT5GAQn3lSlShmWWy5nRqAbb4GGJHmHvBvM08X33Vt6FyuaMgmllVfC5CAMMO0sdcibVfVe8ey7we9cL4tfBXhHJxsSR83aKq5tiKoW2pfb7bdTa2dJbEGCZ2iE8YHg/g/OLHAWFZ+e/iy0Xlt3xzc31c1322gpcyD0f3OasYGq55oj2sERMlUkuSSgLr9HMGXTHGkTDzeViRjcSd4= X-Microsoft-Exchange-Diagnostics: 1; SN1PR12MB0160; 20:kVITlWBFEuPzOkvGQUZGQu52wK3+MocGsM+BT01koo83Moj373a5CaPN48PZobY5iHOYPQSdS8d3qwVzs7nbRVTASJ9DTYL4Iw78fqdK75SiTfNQOCxwKNT/HylKiDypQfNh7HeBadv2JNxibYV4M3RRydtCfKlx55yIpiRpjr9SJ7uLGtcz5rUz4ANlxDdZ9k3dVxc3OXde3vGGv6ljUgAQAPVpAZHfMb4k1umcgH8IM9EmL8LNO3IdJt2rfz4P X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Jul 2017 14:21:24.1330 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN1PR12MB0160 Subject: Re: [RFC v1 0/3] Add VIRTIO_F_IOMMU_PLATFORM support X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.22 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 27 Jul 2017 14:19:24 -0000 Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit Hi Laszlo, > > (5.3) All virtio driver code should treat VIRTIO_F_IOMMU_PLATFORM simply > in parallel with VIRTIO_F_VERSION_1, and don't act upon > VIRTIO_F_IOMMU_PLATFORM in any special shape or form. So basically this > is just my point (3) from above. > > > (5.4) There are three VIRTIO_DEVICE_PROTOCOL implementations in edk2: > > - "OvmfPkg/VirtioPciDeviceDxe" binds legacy-only and transitional > virtio-pci devices, and offers virtio 0.9.5 semantics. > > - "ArmVirtPkg/VirtioFdtDxe" (via "OvmfPkg/Library/VirtioMmioDeviceLib") > binds virtio-mmio devices, and offers virtio 0.9.5 semantics. > > - "OvmfPkg/Virtio10Dxe" binds modern-only virtio-pci devices, and offers > virtio 1.0.0 semantics. > > The first two drivers should implement the AllocateSharedPages() and > FreeSharedPages() member functions simply with the corresponding > MemoryAllocationLib functions (using BootServicesData type memory), and > implement the MapSharedPages() and UnmapSharedPages() member functions > as no-ops (return the input addresses transparently). > > The third driver should implement all four new member functions by > respectively delegating the job to: > - EFI_PCI_IO_PROTOCOL.AllocateBuffer() -- with BootServicesData -- > - EFI_PCI_IO_PROTOCOL.FreeBuffer() > - EFI_PCI_IO_PROTOCOL.Map() -- with BusMasterCommonBuffer64 -- > - EFI_PCI_IO_PROTOCOL.Unmap() > I have working to implement patch per your recommendation. I assume you mean map the buffers with EfiPciIoOperationBusMasterCommonBuffer [1]. If so, I see one issue with SEV guest. When SEV is active, IOMMU driver uses a bounce buffer to map host address to a device address. While creating bounce buffer we can map it either for EfiPciIoOperationBusMasterRead or EfiPciIoOperationBusMasterWrite Operation. If caller wants to map EfiPciIoOperationBusMasterCommonBuffer then it must allocate the buffer using EFI_PCI_IO_PROTOCOL.AllocateBuffer() [2] otherwise we will fail to map. I see that PciRootBridgeIo.c has similar check when using a bounce buffer for < 4GB use cases [3]. Do you see any issue if we use EfiPciIoOperationBusMasterRead or EfiPciIoOperationBusMasterWrite instead of EfiPciIoOperationBusMasterCommonBuffer ? [1] https://github.com/tianocore/edk2/blob/master/EdkCompatibilityPkg/Foundation/Efi/Protocol/PciIo/PciIo.h#L169 [2] https://github.com/tianocore/edk2/blob/master/MdeModulePkg/Bus/Pci/PciBusDxe/PciIo.c#L1082 [3] https://github.com/tianocore/edk2/blob/master/MdeModulePkg/Bus/Pci/PciHostBridgeDxe/PciRootBridgeIo.c#L1109 > The EFI_PCI_IO_PROTOCOL implementation will delegate these calls to the > platform-specific PCI host bridge / root bridge driver, and *that* > driver in turn is allowed to talk to an IOMMU protocol (if any). > > (This last step is already covered by the following edk2 commits: > - generally, c15da8eb3587 ("MdeModulePkg/PciHostBridge: Add IOMMU > support.", 2017-04-29), > - specifically for SEV in OVMF, c6ab9aecb71b ("OvmfPkg: update > PciHostBridgeDxe to use PlatformHasIoMmuLib", 2017-07-06).) > >