From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM03-DM3-obe.outbound.protection.outlook.com (mail-dm3nam03on0047.outbound.protection.outlook.com [104.47.41.47]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 668832095DFF5 for ; Wed, 23 Aug 2017 16:22:32 -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=CTuSLqLqj6k8Q4BrvtfAZS3m+aUIx75RlHL9B6e+ZLc=; b=kZygH0FOXq5Zt8LqxO1BJc1zdJSENP50tN9yR6pBb6gKeEoWTvffyBEw/JJXSJIQsy83U+yFesDBg4X7vc51sYEG+QKOzO3pxd5cjxfmt6cShlCiFMuAT7pwJH3Jq1JxcIURQcYFCqgGu2VTQaWh95Qf7RuDIINEBCzvjx4fct8= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=brijesh.singh@amd.com; Received: from Brijeshs-MacBook-Pro.local (70.112.153.56) by CY1PR12MB0150.namprd12.prod.outlook.com (10.161.173.20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.1.1362.18; Wed, 23 Aug 2017 23:25:02 +0000 Cc: brijesh.singh@amd.com, Jordan Justen , Tom Lendacky , Ard Biesheuvel To: Laszlo Ersek , edk2-devel@lists.01.org References: <1503490967-5559-1-git-send-email-brijesh.singh@amd.com> <1503490967-5559-21-git-send-email-brijesh.singh@amd.com> <8b1dca8d-6a5e-4279-bd0b-13c9423cccfb@redhat.com> From: Brijesh Singh Message-ID: Date: Wed, 23 Aug 2017 18:24:59 -0500 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:52.0) Gecko/20100101 Thunderbird/52.2.1 MIME-Version: 1.0 In-Reply-To: <8b1dca8d-6a5e-4279-bd0b-13c9423cccfb@redhat.com> X-Originating-IP: [70.112.153.56] X-ClientProxiedBy: DM5PR0101CA0033.prod.exchangelabs.com (10.174.180.46) To CY1PR12MB0150.namprd12.prod.outlook.com (10.161.173.20) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 776a871a-fadb-4c23-b918-08d4ea7e2e97 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)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:CY1PR12MB0150; X-Microsoft-Exchange-Diagnostics: 1; CY1PR12MB0150; 3:f5LgpQxBwiW2vDH7x4w0KFb5oeP2atzfPg/1lzYTlb31xyQs2vUIwLnUoY/eELyWUc043Z7hrgR4wSeZd5CB3WzR+uCd5QSqc4/4Y8wJQHAtUvTTyUX2pwigk7g0gB47XkR7fBbYczeWOG4JYtEpz6PzjWnLyhNt2QebNGTeKkNP4ZF6QJMvxydwRFP9KcGDvqT8lqU+K7XrZ8Mw1lvDGhG6Naewx2txz69lZguY6ZwKdcvJTQQJzc+qDkaYQfFH; 25:tfR7DBryj6RtWYbyLSphYnHH7S91NdxWb9gnpGotFRUx6qgozqWPU230R+l7KCPkv3uBSIbcDZ4n43Zgn8oBg6rXLb3hW0s7TJSdqH9xMDm7DYH+uB2gY5ShX7Khd8QmmG3VBTiaBK6t4tY5Wc/qmDghu7XH7Ouu0RCJ8Yn/UjxcUV5y9l8gSME8LSn1fa9xW9R6FRbCZGrWX6c5y0hRV9fnbU3aw7eYgZf8m+oA5kLBxp2w9VFh2BSuQJDRbk5GCkrRy/foIAbPLUQZ+NbLqpt0y1hx8ULUn1up1HQuFbEPPZwUa/jy2ydtRz1d5gVbRn9Ij60p4I9dnYbN9JZ4mw==; 31:KYWWVzNT/bKeZPgPyLmIZNVd01PGX9XDE3shepuoPT6qdvG3Asttms4j0ddhl0/is6OUzkfhDypXgYWBjTDg9wvSYkzxwah6uPdMPsLY1hnQStGMxPXu2TtGrAOr7EZHNuV6QXh+/MieflQGYIgruEmxTzM/rLcnOVleYMctT9UaxSj7CfICORys0fzl6gp3Qng9HweMQlnDO14p4ymNB2txQNWcp3ZLsaVYoeZ9CG0= X-MS-TrafficTypeDiagnostic: CY1PR12MB0150: X-Microsoft-Exchange-Diagnostics: 1; CY1PR12MB0150; 20:j4xZk3ysTFwP4uEB7lWlvxCQPkM8PSP/iHwXUPkcwvm2BUF1wAfpRBXy0UqoOnn1NAkSikOa50NB9gc8akffz44MX/Xtr+JoBiX6YHXTd98aLQcOp7+geP/3u2BCBUklS8F6qeNuUKefpkXB87TlEYdlEwd4pH2RTFMHE8ZvWt2FF8auQkHMTbEreVabWUYH9CC0m8ilYXC55jFXvjF38q26vTNTiDjtyt8MZoLI6h9Rw3a1RNY1BCAf+2rCc8frsN8nqGd+4jOyPBe7PQ6sjmNu5U7doKDA8jnPjIXDzQ59QRCTz8uKUG5ihpdZywMeJJhuXc8spFxMcx1CCEZLBdfNWtbtu7GXWRFNWIrVYkxINNFrDZQVV/t5OZPdHDDXhiFIhl7PYv4Xo3tU2szSqk+7PeJ9NjvE0rnwKSpJJ3dvjnYsKJwQHbekgEEv9ju7iSEQZOfOkHr+Zhtyspp/2fIbjMJA/CYzBpgW9ICkkXEXREh2lanlKgJ+UAm5Tpa2; 4:PyJSsrYQ8sL4JMnXlM68RzO8CUWsvgisI9crFWdVu+pZCcVP9eCsDwix19Kel8w8BXncmrgTf+9Aq0w4UOfxTQData5XbUb/fqcI0yeg+nJhaldQc6BQ038Uh9PvR2i1d4hJG+Shg5Ji4gfWNGDolrCL4CusR+W9fEhOv2oS9WonFQbRDImVieedJd0P/P4bxLj6xGcaJJnUefD9wV1CjGxukPFabrouJ97pdqSyAf1UWqu5Gfy6clhniNKPLz9wzkBgvO2R9nd43dBbsFdvAwjHJrN1N5a4KxzuTICZI00rV/IVp4vDW3kH372u39C7VNC3P7yWj1/iVeCVUva6JRY68Xr9CY/ypDmY6UwH3aM= X-Exchange-Antispam-Report-Test: UriScan:(767451399110)(788757137089)(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)(8121501046)(5005006)(10201501046)(100000703101)(100105400095)(93006095)(93001095)(3002001)(6055026)(6041248)(20161123558100)(20161123562025)(20161123560025)(20161123564025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123555025)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:CY1PR12MB0150; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:CY1PR12MB0150; X-Forefront-PRVS: 040866B734 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(7370300001)(4630300001)(6009001)(39860400002)(189002)(377454003)(24454002)(199003)(6116002)(50466002)(31686004)(54906002)(65826007)(36756003)(6666003)(6512007)(83506001)(6306002)(64126003)(7350300001)(5660300001)(81166006)(86362001)(81156014)(478600001)(3846002)(2950100002)(6246003)(110136004)(8676002)(4001350100001)(229853002)(230700001)(31696002)(47776003)(105586002)(25786009)(65956001)(2906002)(33646002)(66066001)(68736007)(4326008)(53546010)(6486002)(305945005)(97736004)(189998001)(76176999)(50986999)(7736002)(54356999)(23676002)(6506006)(53936002)(65806001)(101416001)(42186005)(106356001); DIR:OUT; SFP:1101; SCL:1; SRVR:CY1PR12MB0150; H:Brijeshs-MacBook-Pro.local; 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: =?utf-8?B?MTtDWTFQUjEyTUIwMTUwOzIzOm5ZZzhYWER5MTFKamVESklORk9USFo5M1J4?= =?utf-8?B?WStPcDd0WXRHNFBvZlhDSGw4M1NxeklLS0dDdTNrS0JMNzZ4aEgzMGhBN1lX?= =?utf-8?B?L0ticFRuOUZ5dkkyMDVhSXBJdzlLcS9GRlBIMlU3Rkx6TEE2REUreXRUWWZI?= =?utf-8?B?TnBadnNqdHlPUTkyd1JyNmEzbG5wU2hLeFNnRGVkNmRCOGxBdXV0RHkrMTl3?= =?utf-8?B?TkVOVVpwSUxkMGZRYUdMcHM5N1dMRFNLdG9NWjJCNHNucTBVR2NFQWYweGpF?= =?utf-8?B?d2REdmYrMU1PSVFpM29UQUNXUTFZUlM0RXdKMHhnTnMwQkRTcWM5Sy9icGV4?= =?utf-8?B?eVpZZmk4VzA5N2drVXUvOEM5VnFZbDY1MjZidHYwaSsvZ3RnRG52dzhBdVU1?= =?utf-8?B?RFZsalhNbUFNQS9CVEVxeG9zdDJhNWsvZ1ZOcXF2R0FTYU9zc3BzSFFEZk5U?= =?utf-8?B?aDdROXdHYVkyUVE5RmpxSEM1K2FEclVaWTVQTDZseHIvNDJkVnJ4TFdhNUVR?= =?utf-8?B?Y2VubnVrSzZDOE5RQ1ZWZUw3V2hhVFFoRmxnUU0zbGg2MVVaOHFTN3lUTm9J?= =?utf-8?B?NlgzQXBieW90MGhreXR5bU4xVUcwdlhCNVFuUmkwenFMbjc0MXdsSEtKYlFY?= =?utf-8?B?VXBTaWZzMk1zUUdzUmxTY280cUtvU0QxZ290eU1zKy94Nmg3cHRXUmtyYVRl?= =?utf-8?B?UnlvTlZBUEt2Njc3c0lwd05wcmdITWZ2TERFRmRuNysrbHlYVFdOOGdOMVZO?= =?utf-8?B?U1k3eHhma1FTcWJHamRoNUJJSFNuOWEvMDZsVTQyM1JSUnJWYzFoZk9jMU5E?= =?utf-8?B?Ti8vbGZCalhxMk11VTJtVlRqMEVoOXpxMHRRN2JZdkxvOUd4WlplbW5ONHkw?= =?utf-8?B?THI3cUpxZTNjaHdSV3FaZWhOc0RsZ2VTMWhHemVRLzREQmJkNGF1ZGlpeUUy?= =?utf-8?B?Zko2UkEwK3YxZVZaNVB4Q3RReXkyRVo2OGplRy8zdEZzZGJnRkZOUzZ6V3V2?= =?utf-8?B?LzZvVzROeDZubXZjVk44V092dmppMjJ1M1Jid21oRVlRVDQwOHVvVi93eDJJ?= =?utf-8?B?d25RNXAvUlR1UUZxeFoxSWRSVFE0VldORUd6RGxyL05RUUJFZ0lMbHlOanVY?= =?utf-8?B?M0NjTkZaODZYNmpLWEx2OGV1VDhUUzFHMDJjeDZTcEdoeWNVZkxEckpZTHlE?= =?utf-8?B?ZVprVkRmWGJmNDVSSDRFQ0ZUUGFreWpJNFdySEd3WmFJbVdZYUpYUlRoSlVh?= =?utf-8?B?bU1JRmFPTzUzb2J2WmNldkQwOTdSV2YrSnJFMDdvbVMvU09jUjA0TUpUOS96?= =?utf-8?B?VUNvQnV5d3Ixb090VjFCNjdVQXd6aGJKb2lDM25uVHpCVnZqK0JDU1JycG9y?= =?utf-8?B?eVFiTXFjWEdmSTBscmd3S2JKZ1B2SE1FbFR5TklXcGRmaFBudlpRaklYaW9S?= =?utf-8?B?MDVhaWpGc05mSk55NTBrVHBnSFRySTY3elpsaW4rbExQSzliVlNUYkh6VGQz?= =?utf-8?B?UGVKb1hKM1NmSVBCR040clpwUWNZT1FCSmxmYnEzaEU5a2ZuQnJoSXkxWHYx?= =?utf-8?B?KzNaUU51ZFhmcDc0YWZOUER1bndBZ3d6d25vNmJya1dlaFBXZkpkTTBweUxr?= =?utf-8?B?Ni85OFZCWjRYdTNZc0x3MW5adXdUdnR6UHpFeGM3WkxHYjdycWkvMUNGMGli?= =?utf-8?B?YW5hSVpSWDRER0Rxdk84YU40VFBxa1pHYmNiMWRIdEZXOFdobVpsUW1Sa0lM?= =?utf-8?B?RlVXTGxmNEZBWklNamkvSm94M3JuOUZjVnlQSFhxanpaTklFVjM4N2d6ckNT?= =?utf-8?B?bTlhd2hFR3lWQWZHRVM0MnhYZ2Uva2ZkZjdVZ0x4MEN4MFE0TnUzM3hCdXY1?= =?utf-8?B?Z3pNL0h0cTJwU2VOaFVaTGFkeHBibk9IS1NJRmN4SkxSZHpNN1hpV1EvdXFC?= =?utf-8?B?UkNjTUozcTFBPT0=?= X-Microsoft-Exchange-Diagnostics: 1; CY1PR12MB0150; 6:s2AfoHr6L/02CjaV7fOGi4XZwqQf7bOHmK6azLw+FcwbQqT9MXsM72iRwS9oHF4Kuok6YJeX1EInZpNYa2mmc0StmqfM5YtZD5Z+LDUz1Su2CEZDTmnSx4es9QewUjrKj2A3GucdKSvzwidpbiFIXJKBGUHIZaqM/ETT+e6TjD5iseNKTOh68TafdPx4OXCNNfv+8um0EIkqzpX61k8EMXcMVAGrH4wq1a8V+p/SEqdLCS6hv2Hd1FkWDKT6oLZjZhp+HP3aRDj3t4q7z91mYXslWcW2L3lBnighCXpVo+0QpFaT5NItICqu4XsboEPJbfagQy2yLvPpzD2rosfEOQ==; 5:xkp4QToLmVkgmTcsRC5K/fh2n3L4lMkUWQPhy1mUvnvZkHCAncHXTfg2/U6+tG8HRci0lFcWU/cZP6rIWXVAb4llKCQUN2IgkhVW7bP5ooRdbiGP7YACfGpSVbq2DFcdU09tPSsKsjrEPouSXYcqew==; 24:Z4Sf6/spyomx7tFVmAbOecXA+xe9ik44+TvJdtom83sHhpeVFzM3dw02jUdjRr/P2hX1GX0MXeZGAFZ+SylHY5yiDtw4yB5JF9npgVlvfUw=; 7:UHLksALY5+4CJfJNHhgOaHyxz+O+ONW3ySxnhUBHnsrU8PC7ZL0/7cx9YDZcROONedG0A9KrRGQKZNBmS+e/O2XbXTKlMc165LL6Ixh1OS1GanNMHWQXzp7IHTPvHVz/L1fvq7iguMTCtGEF5NTU2lPo+uGIs1BbfqIDGbs+pdl5OA7z/qBqmx2F4x8sfGc7zVO8PvtTzMUyQDX1z+ApA4fd7byJc2lxV8Qxug6P9F4= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; CY1PR12MB0150; 20:ywQEI/H0aJD91yZYK9Y2Kk+trSE46U3NIFwJofaS6xqd3NTFS6m0KMTLBxPA4BDX4L6O4OAfamFvjLAi/MvyM4xeI9Vb/RAso4h87iTEbsKS61xN8tc1CJn5OIwPPr2QlsfEbcSyNpuG19BUHtiWKnRwhZXWGLs6PVn5PKhPPlAbzhrhIoCoAAKOpPev2d+oRNeJYmuHpqBl48LLN9b39RqZVPTXdzFnMbpprit8EqRsf2ctTkAI3l8qMKT5wH2e X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Aug 2017 23:25:02.8306 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY1PR12MB0150 Subject: Re: [PATCH v3 20/23] OvmfPkg/VirtioRngDxe: negotiate VIRITO_F_IOMMU_PLATFORM 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: Wed, 23 Aug 2017 23:22:32 -0000 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Content-Language: en-US On 8/23/17 6:21 PM, Laszlo Ersek wrote: > (1) Please replace "VIRITO_F_IOMMU_PLATFORM" with > "VIRTIO_F_IOMMU_PLATFORM" in the subjects of the remaining patches > (including this one). I will fix it in v4. > On 08/23/17 14:22, Brijesh Singh wrote: >> In previous patches, we have implemented IOMMU-like member functions in >> VIRTIO_DEVICE_PROTOCOL to translate the physical address to bus address >> and virtio drivers are updated to use those member functions. We do not >> need to do anything special when VIRTIO_F_IOMMU_PLATFORM bit is present >> hence treat it in parallel with VIRTIO_F_VERSION_1. >> >> Cc: Ard Biesheuvel >> Cc: Jordan Justen >> Cc: Tom Lendacky >> Cc: Laszlo Ersek >> Contributed-under: TianoCore Contribution Agreement 1.1 >> Signed-off-by: Brijesh Singh >> --- >> OvmfPkg/VirtioRngDxe/VirtioRng.c | 4 ++-- >> 1 file changed, 2 insertions(+), 2 deletions(-) >> >> diff --git a/OvmfPkg/VirtioRngDxe/VirtioRng.c b/OvmfPkg/VirtioRngDxe/VirtioRng.c >> index 59f32d343179..32512d882f7d 100644 >> --- a/OvmfPkg/VirtioRngDxe/VirtioRng.c >> +++ b/OvmfPkg/VirtioRngDxe/VirtioRng.c >> @@ -278,7 +278,7 @@ VirtioRngInit ( >> goto Failed; >> } >> >> - Features &= VIRTIO_F_VERSION_1; >> + Features &= VIRTIO_F_VERSION_1 | VIRTIO_F_IOMMU_PLATFORM; >> >> // >> // In virtio-1.0, feature negotiation is expected to complete before queue >> @@ -359,7 +359,7 @@ VirtioRngInit ( >> // step 5 -- Report understood features and guest-tuneables. >> // >> if (Dev->VirtIo->Revision < VIRTIO_SPEC_REVISION (1, 0, 0)) { >> - Features &= ~(UINT64)VIRTIO_F_VERSION_1; >> + Features &= ~(UINT64)VIRTIO_F_VERSION_1 | VIRTIO_F_IOMMU_PLATFORM; > While all of the VIRTIO_F_VERSION_1 locations in this driver are covered > now, this change is invalid: > > The bitwise-complement operator "~" has stronger binding than the > bitwise-or operator "|". The cast operator "(type)" also binds more > strongly than the bitwise-or operator "|". > > The purpose of the above assignment is to clear both of the listed bits. > Therefore, > > (2) parentheses are necessary tightly around the bitwise-or operator, > like I suggested in > , > point (4): > > Features &= ~(UINT64)(VIRTIO_F_VERSION_1 | VIRTIO_F_IOMMU_PLATFORM); Agreed, thanks. I will fix it in v4. > I think this comment too applies to the rest of the patches. > > Thanks, > Laszlo > >> Status = Dev->VirtIo->SetGuestFeatures (Dev->VirtIo, Features); >> if (EFI_ERROR (Status)) { >> goto UnmapQueue; >>