From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM02-BL2-obe.outbound.protection.outlook.com (mail-bl2nam02on0073.outbound.protection.outlook.com [104.47.38.73]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 1CB2420958BD6 for ; Mon, 11 Sep 2017 05:14:15 -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=CItzxv+gYXfwK2sSfXIwvdDgf3aXM7aBxbt423uKllE=; b=oiImDLOm20Ct6OX2YTWFOz81iX006H/Ec2+ZmIXJD0oEXT31zG51ElpFjYiN5bH49eWqJfywYI+qKp3RyxYN1ougPzcfrOWgeC4onscYHL86fMvISy43mXCRCh9LTdxsWZ+nOAG0W7sJlX5cwzO+W6wzDsYC0T8n+tCbzRNPcxE= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=brijesh.singh@amd.com; Received: from ubuntu-010236106000.amd.com (165.204.78.1) by SN1PR12MB0158.namprd12.prod.outlook.com (10.162.3.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.35.12; Mon, 11 Sep 2017 12:17:07 +0000 From: Brijesh Singh To: edk2-devel@lists.01.org Cc: Brijesh Singh , Ard Biesheuvel , Jordan Justen , Tom Lendacky , Laszlo Ersek Date: Mon, 11 Sep 2017 07:16:49 -0500 Message-Id: <20170911121657.34992-1-brijesh.singh@amd.com> X-Mailer: git-send-email 2.9.4 MIME-Version: 1.0 X-Originating-IP: [165.204.78.1] X-ClientProxiedBy: DM3PR12CA0047.namprd12.prod.outlook.com (10.161.151.15) To SN1PR12MB0158.namprd12.prod.outlook.com (10.162.3.145) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 39ffcffb-783e-4195-d981-08d4f90f05b2 X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254152)(48565401081)(300000503095)(300135400095)(2017052603199)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:SN1PR12MB0158; X-Microsoft-Exchange-Diagnostics: 1; SN1PR12MB0158; 3:Lbxa1cTj9TGfp1JKjt80niL7JWmw7FwfeZtwOIhlZYQeCB1Xvglq6lUp3rV0NvqbFQ+gYWNRwJZLRn5cxBjqmx1d7SMub8WajL0LL65o5oktZ2RPcKawILF3yC5KLmz1ADLyY3iOjLHLjc1+88jCcQFA7tm6ljSfmVdyVVKD9e9x0FgN0roH/XSUd01VGqLhLqwaGk4iq8g5xGP3MiWQBr62He0Q1UeyrN9XlX1YbfE4+XkxJN4AjaE64oOMmzqH; 25:efdvYsdhtauXULzyozH0998NkRltTvtCATWgxV+A7L2mz1Qrp9KAdnh7/6DW+hcUefsHJYj9ZCZSn31wc+SEWiG5H0cLJvlQsoaqW/wcLFpX/wVWylyEgdhL1yEPJw4H2uDFnM4+A1Ux7z/BVx1HH415y/uFkhdhF6r0fJrckd1aqQ3iyJoGPn294l5ZwP4tR97Jg0wYB6MAI7v9KAXKeI3Vg9knIfcmfVD4PiTim2rhJijnWE1LxCbfpJ6TQ8z+nh5yo1BNMtKWYwajayQ4hejxQFF3eb5k8hNYQ9erw9TqGXI3q22QlQ93duc+xUQIgcnkFJ+TOSE8EmkG0aE3UQ==; 31:owPa2uXwP+WlngyzHwGJ+Mw8dTjDIXNW9I3/KDcRDcdD9CK29k7SktOVeSmn5TNXy2JL/PN6Qj09DyJUocD5qwCquK22NGaSt62xbTZorYDbSzGlKdqoRpjRsDJ7V8H7cyLUtOoglfxeLUeXOkgNk5dTk/C5RMIvv0x3OXcVgkZNkCX9Bhmdf/CFMRQJIyukRJgPKSN8NU3rOEODxcc4Du+NMrU4lv1tunWd+sMDKlg= X-MS-TrafficTypeDiagnostic: SN1PR12MB0158: X-Microsoft-Exchange-Diagnostics: 1; SN1PR12MB0158; 20:cr4+NPprZ9jVIqjzLNVG27eyMm51NhIN7xttk6/gXYQyYUpKmiP2jpNGd55RTVrCo5RBFyS7mNRc+/alalk2mjRJmzCnkGF0ayz+tuoXYHnboqigejyFMKhbhrMsUywXegFcC7pxSD9LzWg0SZQzS5+bXBSrzymzvX3JaSpZptz575TocWEJ/M1oayX9yJUrgQhbp4h/bfkXifnMbIdyBubv2AfoSNL7xlnWN88maGz8me47S4T34q+3DYm8hhxvoSLLnXSUE97iY++h79Zhb/Ot5utujQvLzMvHoUgw/HwTbN0P4yz6kWn/BMQw/bNBVIEcO3aGhiwkHNlT6VZmxOgsXjRMoTlmxPPxJkKE1KAAmkXEdKmcjd8YuWstqXX2TOeBjkbCELJpZKEXTKXLiip9LTmGRTOPgSlhvPkOCifC2dEmBIz2Mp/OqwbncGypmuw4fgTS1Q21bs9wzC9qYetGcPpDaI/z7/yg755ft6TpPJy4/hLeX4ZDZ23LVVnW; 4:zofgbatyQhB0J1X1kCn0DyZO+Kvys6pVSMywZTmMtINtzsiqZhGiIp3/cW3/iq3DDfJb17SlBx/QAdu8LbNSgdmnnPCnZZOGfz3iwFMBgFlvo7M3AzBqEG49XstvmZ0aRCCDI44r7/RNxSs9qzuqre6wnSbTzNE9lIUb1L2XZcuFhORfbxHYCAbGcxz2hgEP17UXxjXP/UA+mq4VzWWYrXMz7paxBnbOHjaR1MnOjPs93oEE4DmaDdOSmqLaN9DA+hx55D9wHr0kSFJ6R8nqo6WD5GmCySC08NWRx9yltTpkf2VIvcgu12Sa3wfPYKd5VikyhBvqugJEiRr9V/gk8HhOKRv48zYtj7joDtNUp9c= 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)(2401047)(8121501046)(5005006)(100000703101)(100105400095)(3002001)(93006095)(93001095)(10201501046)(6055026)(6041248)(20161123560025)(20161123564025)(20161123558100)(20161123562025)(20161123555025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:SN1PR12MB0158; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:SN1PR12MB0158; X-Forefront-PRVS: 04270EF89C X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(6009001)(189002)(199003)(110136004)(106356001)(7736002)(105586002)(101416001)(4326008)(53416004)(1076002)(2361001)(2906002)(305945005)(2351001)(5660300001)(189998001)(25786009)(33646002)(50986999)(3846002)(6116002)(68736007)(8676002)(478600001)(81156014)(81166006)(42186005)(50466002)(966005)(6306002)(54906002)(6666003)(50226002)(97736004)(48376002)(36756003)(6916009)(8936002)(66066001)(47776003)(86362001)(5003940100001)(6486002)(53936002); DIR:OUT; SFP:1101; SCL:1; SRVR:SN1PR12MB0158; H:ubuntu-010236106000.amd.com; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A: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; SN1PR12MB0158; 23:uPhrm3ucpiQE3xDUxeTT2Z7hJDfICZh2xkQadtJEn?= =?us-ascii?Q?00+4LEZQ/SsfcaMhFMuTk1Ruid8Gg3KM7wMPCqGFOjyZAY7SaBLB23ypXAuW?= =?us-ascii?Q?eJilYwsbAFaS8q8i6p/gdK1vQlMKtAhkRKKhCO9j44die9SeQkqY4miSwnQQ?= =?us-ascii?Q?1SJ2/opGD8rLtR+G3LbvVcSs5XchTbH6p+KwYxN1Yj7YtL+L8DOzY2PXzsfC?= =?us-ascii?Q?/Qc85M2qaQOscNZMnDeIyUo4FJV9GhmZYYgxs6n7YX81FKR9jClPR+Dv4JTk?= =?us-ascii?Q?Cx9kMVZJQUA1Nle/jDcgvHMm8w+LzTva7DDg7JtczYRAwi5vqb/MYeTW4RHB?= =?us-ascii?Q?52TYbwMiSoWrNZcirmAc0KF20MX6xLUSpZ2sZ60FFqVkgL2i6JHI1LA+o2bN?= =?us-ascii?Q?U8mjGimAAZGEGb3qG9dPh9SQCE8HNkPBNBlTfsS5nqT0nyN7u4iIt+TNihOo?= =?us-ascii?Q?Tv29ssKrdeJC2cdZNdajCxtajCldKZ8wBe0+pJgsAcUHBW6nFT/LTUrG6+/R?= =?us-ascii?Q?Avmp6RmcGKxE8FQgDFtTEzxrV7Q5lSaljhhRiCjeSv9D6qHob5xXDQ8C2eqe?= =?us-ascii?Q?CtUVYPtM/e2uTgSv2HZxkAGTX2T48ogmU9NbCfcvEOi48z3CV3nXblG7bpur?= =?us-ascii?Q?J2ZkB7WInpLCDrO3nXaVDtX/0gM5Pp7G8AXBIsfvvIXMMezXQrcPTXKv3yt8?= =?us-ascii?Q?LPqespVLO2eNSMH1Bmi9IjH0oEvgaYUBIi/Ki7BGgvkwSJdsspjcMZUZNvRt?= =?us-ascii?Q?Aao4AZGJYI8qQm69LV+tIE9pI6dosNT5wfjmJeeLNRO+lDfnzhk//z9HkIEU?= =?us-ascii?Q?3TCpd9fLKgZHFy49bANpoa3mLDZ34Dwg7qM4ircDtdL1ZHk+UMVjl/puakvs?= =?us-ascii?Q?aG6qBHBBsdinUOHu/bzYtgeal7SdxHGwa6YHeY5mtCL2IiLPl9DVk2yAlYIg?= =?us-ascii?Q?cAn1WhzQNEiaHd5n8ZhSLoLH4QFwH0dXxdXW35sOGFup2hsUkXlzq3RE8LuW?= =?us-ascii?Q?b15nJ86kJgGmCz1xOgEhKoisyGeiS9GpSl7FUiAQIyizh235QU9y3K+oRsuE?= =?us-ascii?Q?tKnGO2Gueth7UtXekFt5wlOGIFF?= X-Microsoft-Exchange-Diagnostics: 1; SN1PR12MB0158; 6:+rhEw9YNmQYvGlI9TwXqm7KwfJ5H6Geq8mIgptsKmkLNzpC8tVZbXM0ptqq+cgtVAxFTKzHP3KKa4nBpG8tq1hMjYWA5cYNvOj/SSbFidpENSx9iAEnJ2d/FQX2K6niIbKX2LjHbRvEw3MpGmjIdipdDSIBRAZvKI0ApjqzD0Vju1hALJfFM0clJOT5DoWX41OmfhmqrT6ggUu9OR6J4GM42vOnMgqGKfyzvXyeCmpLtIHAeanHx0Kv1ZR3wT2hAOHsItVWSIcKPBX2wXR/7IdAG5t38sgTUzrJfztO1RScK4bxsIIqq19dliYpvoVoTnLelsMO0HurNUNWN8Q9CuA==; 5:TV7m5AHyQrwcAdnGVUHBcu94Esbs3TIRbGiqrFoDfzc3kIrEGcVpsBhPEwhmWrCV3XSgmWhxdRsGOKrQ6aamHvI8XA42Az7DI0K5HbKOLbcsamNDic8XJlPSPJoJ8Z3Ajknv0/aoEg37jduzYSbV+A==; 24:EpeWDmUKLVUoMLmThfy0L4J0Obj+om7Su5JDiBMmDpaYFe8KEKILt2jdKibxxPt30R408axNHMBS/v+s9zIwgSydjtPVkt+C9F7ZCNdPQOc=; 7:vwZXZjLm0vWO5/m7BTmsgn6LcjdSajQ5jY8cUkPr7PuDPRT5pJxs51UazjKS9v3gj/tOlqqhgdETmvQrA/JF4I05Cq7BgUBvyptbC+ARyYrxKbN5V/k+OoyKZoh5/+99Is/uVzYqeaOtsZw736tfzbM4cxLRG8dveEVYaO5DsSkc0SMxTHiesAs0hmYadJ8y6WIPuQcYN3sKtMvTKlUvyX+AwPKSh616WT3PM34ZSeM= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; SN1PR12MB0158; 20:1jGusy3YftYooxuzpK+iKL/Pqc2xQyBwDH50RJF2xluMXHkRO0A7/8JXWgYiXT10kFHotzvkS3G995Aycnw1yloeZzxm9Ai56vq5kC08QiE0ikApfJi9tuqjrjxj93LJh1lhnQ4ZCGUdeALuJ39ndNKZWtXpL/akCF7U8doKMFqWIeRF2pPJp4Y1bbYBEPBtDguYRuK/CRBi3m4HbeOQwvpPR5knuuIoznUR4QaTeoAIPctrk8ZIRP2xEzYS0qjN X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2017 12:17:07.7765 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN1PR12MB0158 Subject: [PATCH v2 0/8] OvmfPkg/VirtioNetDxe: 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: Mon, 11 Sep 2017 12:14:15 -0000 Content-Type: text/plain The patch updates VirtioNetDxe 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). Repo: https://github.com/codomania/edk2 Branch: virtionet-2 Cc: Ard Biesheuvel Cc: Jordan Justen Cc: Tom Lendacky Cc: Laszlo Ersek Brijesh Singh (8): OvmfPkg/VirtioNetDxe: add helper VirtioNetUninitRing() OvmfPkg/VirtioNetDxe: map VRINGs using VirtioRingMap() OvmfPkg/VirtioNetDxe: alloc RxBuf using AllocateSharedPages() OvmfPkg/VirtioNetDxe: dynamically alloc transmit header OvmfPkg/VirtioNetDxe: update TechNotes OvmfPkg/VirtioNetDxe: add Tx packet map/unmap helper functions OvmfPkg/VirtioNetDxe: map caller-supplied Tx packet to device-address OvmfPkg/VirtioNetDxe: negotiate VIRTIO_F_IOMMU_PLATFORM OvmfPkg/VirtioNetDxe/VirtioNet.inf | 1 + OvmfPkg/VirtioNetDxe/VirtioNet.h | 51 ++++- OvmfPkg/VirtioNetDxe/SnpGetStatus.c | 30 ++- OvmfPkg/VirtioNetDxe/SnpInitialize.c | 209 ++++++++++++++---- OvmfPkg/VirtioNetDxe/SnpReceive.c | 5 +- OvmfPkg/VirtioNetDxe/SnpSharedHelpers.c | 222 +++++++++++++++++++- OvmfPkg/VirtioNetDxe/SnpShutdown.c | 4 +- OvmfPkg/VirtioNetDxe/SnpTransmit.c | 34 ++- OvmfPkg/VirtioNetDxe/TechNotes.txt | 28 ++- 9 files changed, 516 insertions(+), 68 deletions(-) -- 2.9.4