From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM03-CO1-obe.outbound.protection.outlook.com (mail-co1nam03on0075.outbound.protection.outlook.com [104.47.40.75]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 3B7E92095AE71 for ; Fri, 25 Aug 2017 14:41:11 -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=UH34qBsx1FvbFNSCCrxqsPiKDH97pXjAH5DSX4j+Mcw=; b=gHxqqSkeA6kf4+epVcSlmsjaf5hLgsWluzOup2/ZbUvSDbglmA1Z3VHm5BijyZ4cYMzgmwwkGyf4Y7t9i/9I1FWqzqy8oiWfm7B6vSmTjnsMNx5QUv+s74Zn2S8Ckse1KqNOy3jUOFf+AndgGA8RoXD0+0QLStsIvnhydNNBj6E= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=brijesh.singh@amd.com; Received: from brijesh-build-machine.amd.com (165.204.77.1) by DM2PR12MB0156.namprd12.prod.outlook.com (2a01:111:e400:50ce::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.1.1362.18; Fri, 25 Aug 2017 21:43:45 +0000 From: Brijesh Singh To: edk2-devel@lists.01.org Cc: Brijesh Singh , Ard Biesheuvel , Jordan Justen , Tom Lendacky , Laszlo Ersek Date: Fri, 25 Aug 2017 17:43:31 -0400 Message-Id: <1503697414-6830-1-git-send-email-brijesh.singh@amd.com> X-Mailer: git-send-email 2.7.4 MIME-Version: 1.0 X-Originating-IP: [165.204.77.1] X-ClientProxiedBy: MWHPR2201CA0041.namprd22.prod.outlook.com (2603:10b6:301:16::15) To DM2PR12MB0156.namprd12.prod.outlook.com (2a01:111:e400:50ce::19) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 0c2097a8-c007-4cc1-6a9d-08d4ec025d37 X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254152)(300000503095)(300135400095)(48565401081)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:DM2PR12MB0156; X-Microsoft-Exchange-Diagnostics: 1; DM2PR12MB0156; 3:xc1OSe+RnLY/ffEIPG9Jgy583Jo5kFtxFR7MQL6sYAKh/39B9vsY39mLsyHzBV8ZpWQopmWQdW85zCslw69bVa3csDmBQ/MBfh2Y04IIrt/V/52+5lq86t3wagAiiuZojyXcb7iFft6YkRDxudMHmh9gtJe8rExzf7B3BOysELzZ3TRc0/ElWWL09TA0+WlBxI3wtXP0oJtHMOMYfNuiDNRRubA0SDzNU9zX2xzs65FEP5ZruBHoNO5uOHmHGeCf; 25:n+xvyuUOZNTo7q0MSmo2kj3YIhLcrFEDcnklRlcstGrg+JqkXqGx+1/P3bZ51/b17QH3hd0SjvnP+4PRwGhsb6qJ2VQ0rCaXMBJ749yp+vG2Ze/qVBBdpfY0yz57Qv2f2m1LLEcJ4FSbl2oLmeRpK2QTsiC4eqOcp7CG0lGIvB7S278v8K1Vvtn3DphwW3zr8CedChbyF3/3wlxnemxue7sR5QsJ/cxvTmaO+fjtLvDugGoDismmFm5YxmUg4wzzghWD/MYzNftmEc4UmstZjN3THfM0lHfd0Ns2pdi9c+OWlxlC93JLcGRExuqBlkWO8KXbuAPdSMwF3kiXjr7YGQ==; 31:5aq8oRXKZSyuXFNEJqNElzrcu6pkrqmjwVaz7YhXt7NQErbbBQd2rfV/XFbzkWb9nkxd/+8Z28ddiZ4hxn/rc+coEW/KXt9yvAGUcii9UiaAmnOVR8zmpwSllQ6we7qnznJZ12fALE29efVAhbu6sa7lU2yaKelqcNUqaFWQRtH1SBlSlHRL1RFMrRCnfxt273XzTVAFXYYeTUnhU4BE25tC3TVUS8KdohA1tJf+Jt8= X-MS-TrafficTypeDiagnostic: DM2PR12MB0156: X-Microsoft-Exchange-Diagnostics: 1; DM2PR12MB0156; 20:lF8HqYaslpPRMNj7BVUt7UPXSdBcyo4hneaA4kvqzdHqUVrhV2SUPBJ3vhbaPFm37XLCp+mWu2sOSFmt8BvG5c3W9Anq0YPMTkozGx9gGu61XtJsqPYaRHj+m4E8pD6h/Laymq+i/U7ohSnYPUX+SHdRY9AhWZDSeB5byDSZ19WPNCK32WPkQIFSvCOnbxjFn9mioBKqjqAgFshsyzD6Z/m4CSHJp8sWB7nSBywMKw+HYnr/4QJ+0ixHotCYU624Z/NZDFaNnqvH1ZnprmgWmX1GXw/wl0lb3HU/xeBKEZjaCNX7lYrObClO84MATXLtGvN6C1nPIupmjUm+pi9Uuoy1Vd24dH+cflrHCcl5FmfKpvxFXHrFe+R54vjiILW/r6GakJKlopBB9TdRH4+swfM1tV0hlRbhMG0ZE4QsdfMVlwpqCvaY+QHAHu9SVSn706HuYpI78P2UrAmWbKrRR4SY7LEBZCGeke0GThDcDB///U7n+r4iolqv7uqQj2R8; 4:5fsdf5eMZt8O7TiVPzjxeoXsaLlDHnRlQfeD9yWJnKAyabSr7P2KBY4AeV2M0IYR6yCPhedWpoahOS9PlOIJ7Dbki1CQ6dFmFTYA++OiVBPuoyOy0SsPkAxrY4qJt4JZWmn5FtmrYLM0e3Bzv2GfnNSQ54XLXYvQyShOPb3Bf4Q+3x5M1p1czyITwFTEu75TakMKcTwmGCbfsXnKu0tN9mVoAgLtpPbribob1WP41bpIIJAAphs7ZQi9a0JV8ENcsOXdpzbZRUxRiwklCSODDhGDH6tG+WTNShk+5updQ0nCRMZLwZIS4epdHnfSH6wT1miGKXDk3csB/NBeBiGilh+dDbUOp9R+yHwEBXHI440= X-Exchange-Antispam-Report-Test: UriScan:(166708455590820)(767451399110)(228905959029699); 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)(100000703101)(100105400095)(3002001)(10201501046)(93006095)(93001095)(6055026)(6041248)(20161123560025)(20161123558100)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123562025)(20161123564025)(20161123555025)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:DM2PR12MB0156; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:DM2PR12MB0156; X-Forefront-PRVS: 041032FF37 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(4630300001)(7370300001)(979002)(6009001)(39860400002)(199003)(189002)(97736004)(54906002)(86362001)(47776003)(5660300001)(110136004)(48376002)(4326008)(7736002)(305945005)(53936002)(68736007)(105586002)(50466002)(6306002)(5003940100001)(6486002)(7350300001)(8676002)(101416001)(6666003)(6116002)(966005)(50986999)(478600001)(106356001)(66066001)(2906002)(25786009)(81156014)(53416004)(189998001)(33646002)(50226002)(81166006)(3846002)(36756003)(42186005)(2361001)(2351001)(6916009)(969003)(989001)(999001)(1009001)(1019001); DIR:OUT; SFP:1101; SCL:1; SRVR:DM2PR12MB0156; H:brijesh-build-machine.amd.com; 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: =?us-ascii?Q?1; DM2PR12MB0156; 23:CWsIgIhLp6bCbotZLidtEbdLuZ3sPSTw7spdaYB6t?= =?us-ascii?Q?WIVB6c7Okya+2KzNakDjzu8NIzeO0IsDbwnoOoS2WNCOGqxUloRsxb1oR19n?= =?us-ascii?Q?M/UF6CfK6psY+31a4VLqpUfpkPG88S25pG4r9Twsg8acqrZLROXPQrvyqIlE?= =?us-ascii?Q?o5YU0DjR8fcpo8o8CUDkbYu52Qhh0MaUElToBwtIcTHKy52VpFrDd4Ji1Jk8?= =?us-ascii?Q?O4AFEDEj/uiGutMvcRcX/J7xhaKG8Qr42i/dJ1R5e03vUHjjdslc3uuHMza1?= =?us-ascii?Q?wSM3cRz+DxqIajnDuxUnK+B8AkU8SsL7ZgLCKNRGO/eFQxcQZlSrR4DxadgA?= =?us-ascii?Q?Xzr7SYIkSBlNTtrvNsk+PDLXia1D9ubTWo7e6G/EGlNRqY2TVuEdbwrHItDX?= =?us-ascii?Q?e5xYBRyg7TS6YiHD+Bx/J/e4pBm2AkGwmUgASYeP3LtdERiCof6aURCAj1RI?= =?us-ascii?Q?usCfCPXTIA3wecjYSot3YdA1Vnaka6MhrSueR2hvUSKH38SP0Iu/KuWA7KPT?= =?us-ascii?Q?9h/PUZlsjZ5BL+x76wPNBGx2AwHZhT7sBC/oWlWXOIMGcV4v0odMgvOnsFI2?= =?us-ascii?Q?cAeQobmQKe6iBots6RnuHcSUVy+mvhabsXVoOpHf3RMYXOdMoWfBVUBhV4w1?= =?us-ascii?Q?0zEpFhvggcfMoxByrKp7mf3uY+0Bf3b0PfCuSYy3Il9PgNXWu8uH47WMqsuC?= =?us-ascii?Q?QlW/TVuLkJi9yAb7uDRBtIfDY+/Sv+m90cTvs9/LRthrhiedVBOgWeRz989v?= =?us-ascii?Q?RVDCEkB4RpKAzlEz3KyZbWZtqGaxRcjLzBHQ+xAZf9O3mA6AnNStfaD0Wbqv?= =?us-ascii?Q?aP2HwmlIIfCJr/DpVcZij/f8zeLPyhavAWdziNCTrKtJ6toITAqeHc790V1Z?= =?us-ascii?Q?AGRdqSTuByXz8S0jFeRSaOagLKn+ibM5Bam5abwrjAiS0doRSeYap28XB3Q9?= =?us-ascii?Q?jkZ7k/Wo8tRurKAk25P40s9TCRDKXs+/Nel7f+O8gMN4aItgxKucnv5oPkyx?= =?us-ascii?Q?aYeaQMv/aTKLqVTqkwjkHn0aYCmTrrGDGHs/rEc8bQj88fGhoptTCDeUWa2S?= =?us-ascii?Q?535Nquux9nwNjY80CA7dQRpOFnyIuRhqs2SdrYJYLzgSV9lIMvJ0Tld+0AiH?= =?us-ascii?Q?LmkCE5JtS/IfGpC1+U78YeBf39pN33guNjcp64U8/4OwLddIeG2WwAsC8BYi?= =?us-ascii?Q?7mHsf6D9efUbnQuQVgIGU3eCk764n1E/5/B6a5kIN/4Ft2oz+23ETUoiw=3D?= =?us-ascii?Q?=3D?= X-Microsoft-Exchange-Diagnostics: 1; DM2PR12MB0156; 6:dH++bhfvlcf96VK+htoqYIng/6peBEiUh+/KqZgkIoBDCk6LRpeByk1z2K0BViAfHMz7jD8ivioe8SfD14lsqAWTI5KUUr7J2YGNauq+0Dc2UVU9Trp3Iqb+iQ+AUZWe57XtRQr2bsOM1IvFUlNDyKccIJKg26jy6ldgkrB7rDXGVJyXrnSGXvh1uu/7gs8RQE68EaP4N65Hr0pPeNnU1/XJMxHaCkUBG7vsE9NhmzNi5wfIlLZ96Z5KsarkAnbCsLW85e/kUmiD14mhT+vYUaCJ+Q+0pxZgCZgLsI2X8njHLNOuHqaHwAd0MxLPNeaAix4Joi8Nzx6Do9BkiX8l9Q==; 5:V+dIF0ADsX4xAAJZKRB2jYs3HsebgT90SbGJ3lXrv22kVP9qBQ0XhihXbD/6Kc9zFCFvd8h92ZiWq0ExsI3mUjEWuavKO95cLyQwF9gwdDCDPJ33+rgEFyqETFU3R235hsiSdg0di3BdhtjIO7zZOg==; 24:M8YGT440nxDPf9x1sYjizMsiWwjwuzIzvF9XIXgPwpt5vWPP5P8mL/p/CrJA/pJ0qlrxiKMP6ku3RGPrkqVNNri7Tt0NP+veTJq9DhZni9M=; 7:bzdKDyq14+EREI+lcouFC7U6/T76WJV9gv0r5EpS5X9lW6wrF63TAiGZ4HfJ0qJvi9KDP/95fz+0wlGU5MbxgK0FX74tiXRi0ge9iw75I0fzVv0k0NZDUCYJzP7p1WhlkgGcFADAH3BPnrqPFREX41m1BLXg/DQHDUcwedn1KspPP+RaOq2AwLERi/+RJ+8HPSb7oJJiUJ1xRDJQ5vst0Sg44nvl8KUyL7Em67X4bAc= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; DM2PR12MB0156; 20:436sI/qHPWzdB31q3Ixj1/fPMQvE1v4L31seyPbWt/K18TD/7PBIeXoAPIw5q7y5dH/oQ8+bz2jMbJgR01iygie0QvouVCHzAjtTXkaQL2oNJ2p732w79MgatvYlb3GC5SokuYSEfVq1AMXH4ScWEFb+4zgsTFe/4w+dpYz4f1EOnK86WSEJb52u7Fr0aBMDIut25Yma4a8y4PhG2KvDqNgug1/CguLi+xPyQJjOD7h8ci4Ba5ob1iuVFir+mYeL X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Aug 2017 21:43:45.6897 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM2PR12MB0156 Subject: [PATCH 0/3] OvmfPkg/VirtioBlkDxe: map host address to device address 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: Fri, 25 Aug 2017 21:41:11 -0000 Content-Type: text/plain The patch updates the VirtioBlkDxe to use IOMMU-like member functions to map the system physical address to device address for buffers (including vring, device specific request and response pointed by vring descriptor, and any furter memory reference by those request and response). Cc: Ard Biesheuvel Cc: Jordan Justen Cc: Tom Lendacky Cc: Laszlo Ersek Repo: https://github.com/codomania/edk2 Branch: virtio-blk-1 Brijesh Singh (3): OvmfPkg/VirtioBlkDxe: map VRING using VirtioRingMap() Ovmfpkg/VirtioBlkDxe: map virtio-blk request and response buffers OvmfPkg/VirtioBlkDxe: negotiate VIRTIO_F_IOMMU_PLATFORM OvmfPkg/VirtioBlkDxe/VirtioBlk.h | 1 + OvmfPkg/VirtioBlkDxe/VirtioBlk.c | 207 +++++++++++++++++--- 2 files changed, 184 insertions(+), 24 deletions(-) -- 2.7.4