Received: by 10.223.164.202 with SMTP id h10csp1296214wrb; Mon, 27 Nov 2017 00:14:52 -0800 (PST) X-Google-Smtp-Source: AGs4zMY2+YsPTQ8bAnUuCNU1qARaX4M5fqb4LSUmvibWSzNrleBYVwDwrj3o3CSstgXPlFX8oat5 X-Received: by 10.99.106.132 with SMTP id f126mr35594770pgc.403.1511770492536; Mon, 27 Nov 2017 00:14:52 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1511770492; cv=none; d=google.com; s=arc-20160816; b=Ifp8pAXttzb2bNRi7ZEJQjlxqWieZIRCzCGjJRjLdwHWawt3gnc+/wJ6JFD55MyZU9 RFm4riWMxhX+eg0in4gvhZTJGU4fsPT7SQQ2BDka71ZoHNqsYuRmQtw/2ZxGVoAxADUg Y3/FZ1IFfXeU28ED4buo/BYJZxN3jBEEux2jtfiddiY3tqadeoMcTDtHSxdwDvNhpoTp LPjzZlAZuAT4z2EO/qdWl5Z1F8TFT97HLctgHMty2crz9fvxBPW9nvldfr2gpalZR/rs 5cCZ4bbd8QHvbaQO02B/Bb+/+b/iCyl5ypCtuL4i9l4hfJ7f2xiv0BKctx299m0mXiRW G0nw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:spamdiagnosticmetadata :spamdiagnosticoutput:content-transfer-encoding:content-language :in-reply-to:mime-version:user-agent:date:message-id:from:references :cc:to:subject:dkim-signature:arc-authentication-results; bh=Pf4WfeZw//ROk2GHA2tFo9vZZ+8WKjd+dpTeiIWa6NE=; b=uaH1Juy+k0LvJkasFruY9Co9h3OtHtDga7PA5QiF2K33X8ALBZCkPWhXwlwH8gxJ2E wQE4ZcdsYKEkMp+stNBg/h7J4jeUM5Fs0WrQ+LXvbZMf9g70dLvXjh8WW/NEoF7osfQO 9o3/kXnnr6obdPjI7oXIQDbJlQ9UieT7w1fTW4U0to1tp1/nG8c6REYsgQuMOy1z5CxB BrnJO+Oxuf2NEQ8u5gmoaOGLSozl1UB6j4WPcbaJk8h0BMb9a8tw1mmv2ncfIT4pqbUk v/y6J6pSN9+E6+LwiUAF/G8WePffH3+AxX0kR3sg1CwQiGsTxrIR0gaOlWMArr1eHrus KAeA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amdcloud.onmicrosoft.com header.s=selector1-amd-com header.b=GyHj/G1e; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id p3si24867088pfi.253.2017.11.27.00.14.40; Mon, 27 Nov 2017 00:14:52 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@amdcloud.onmicrosoft.com header.s=selector1-amd-com header.b=GyHj/G1e; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751727AbdK0IMj (ORCPT + 78 others); Mon, 27 Nov 2017 03:12:39 -0500 Received: from mail-by2nam01on0086.outbound.protection.outlook.com ([104.47.34.86]:11333 "EHLO NAM01-BY2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751690AbdK0IMh (ORCPT ); Mon, 27 Nov 2017 03:12:37 -0500 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=Pf4WfeZw//ROk2GHA2tFo9vZZ+8WKjd+dpTeiIWa6NE=; b=GyHj/G1e9pC2epGMfare4ZzMBUzYd4WEAhiPL9Gjx8Lq8stF2i+dNMR98kJWcM4WWFncJ54uOPkHJQu16DztDqDak2/Sq3SurdGAIYvsbwTlM3kDVy4v5uGNdV/nNOrgLodyVYbHZ/vbsUlqVMb11Et8TONQkcwv6qwFqiXLyAs= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Suravee.Suthikulpanit@amd.com; Received: from Suravees-MacBook-Pro-15.local (114.109.128.54) by MWHPR12MB1742.namprd12.prod.outlook.com (10.175.55.13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.260.4; Mon, 27 Nov 2017 08:12:32 +0000 Subject: Re: [PATCH 1/2] vfio/type1: Adopt fast IOTLB flush interface when unmap IOVAs To: Alex Williamson Cc: linux-kernel@vger.kernel.org, iommu@lists.linux-foundation.org, joro@8bytes.org, jroedel@suse.de References: <1510953080-5619-1-git-send-email-Suravee.Suthikulpanit@amd.com> <1510953080-5619-2-git-send-email-Suravee.Suthikulpanit@amd.com> <20171117145152.41fae930@t450s.home> From: Suravee Suthikulpanit Message-ID: Date: Mon, 27 Nov 2017 15:12:25 +0700 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:52.0) Gecko/20100101 Thunderbird/52.4.0 MIME-Version: 1.0 In-Reply-To: <20171117145152.41fae930@t450s.home> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit X-Originating-IP: [114.109.128.54] X-ClientProxiedBy: DM5PR19CA0029.namprd19.prod.outlook.com (10.173.167.143) To MWHPR12MB1742.namprd12.prod.outlook.com (10.175.55.13) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: b0db358f-bb17-4f8f-94a1-08d5356e9d7f X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(4534020)(4602075)(4627115)(201703031133081)(201702281549075)(48565401081)(5600026)(4604075)(2017052603258);SRVR:MWHPR12MB1742; X-Microsoft-Exchange-Diagnostics: 1;MWHPR12MB1742;3:VLU7uvhFqJm3cOC3BDtBkH5bkkfQlCTalm3RcQ1bmUc8vQ2xsRA6OXYnKw5DPSRNYFY551VIqfhTnPKFhAYSD+Um8nYsdIbEEWEIBvOJRyYPK4HLqbACpz9imlz0F89X+kVz+Vx5BShXTIAdW2xs2puFNfkYmTdvfP7a3+xZdUcGG+JfDkwHN3dsCJ2ZEiXufMyX+0IkY8OZvtJ0Wivj9ZrpkIJETnrVJ+qB0qvErQeQgi8GR5fHLuvkHeWlZRFI;25:9+DrvUybunu3mccS4QFKz9JnVoxeo13sytHkjQ6UFcnn6kz7HKy5jrjiB/3qk7e7ANS4P7ZvwTlwFU1pC0pqcJUCatPpXu6GfeG1i20OSDCm8BzP4Q7QomV4kpd2DEn/wChYfjZJnsXCmO+sv5GYD1Wz18YYzk2becUmJums3lSpbHu2WNFJQT8Ussh7AP6IyHyoTAq4gyLeVO2VUJN0CN+xsTJA7W4/DLa7D5/pufrP70GB7zJ/sAe7JFxXebl3QjQjbSwdTN94k/0ZPAQmDtLvmj9u7/qVd+fCTIM1vWK6JBw9LnXP+nvnx06lTrOzCTvlMy7OXf73R0IXRMydJg==;31:970getlva9A+K/+6O+em91at2Ucs4d2UG8syzm/k32OsGJ/vkX9bJHCcKwKXkR4UapRA3Ui/MQiZoNypdxbHwYgREVZPnxoLzBjPErfuen5u2KdeXFPM+Ie6JtRBzQ0oI2kUxbkuMV0H4zKnJi56g4TrWiCl2by5DvIJdTOzSAkf4PGtq7r0BPNAzF1VWySl5QCRbH2x7OVxHyBfJNqbfH1PFW5+PKSBc9DhVw8Q0As= X-MS-TrafficTypeDiagnostic: MWHPR12MB1742: X-Microsoft-Exchange-Diagnostics: 1;MWHPR12MB1742;20:vfm1N5PzA2svb8B/p6lHrixNaZHoSkBGuuRAJa3n4FlkRNsuwNB36v7HbilASFD4sQ3E2PKw1l2MXmNinKjljqIZSYv+nUtERm/CBRJ3KMwVwGNasjT12EQPGIlOCCUQhtTHyFQEY4r/6UexHV/FSVv2NoQpqr/eJtMwR+qcz+QQ5PSoFk6TAMfBMSCXmwF17kwfTOS375xU/PnBHkYnXYmLZKkDQ21J5nxJY1Q0hwlBEROe39x5ySPzvYB90u13Tjfc4JcLCzJlmquwnvX4XWeViBaRXvV6/ZmnWJjNL2GtVAn2yR6UUnFa8w4PMs2yc5PxTc0yFcmJBHD0qy9bXFs2yAbitII6Ul/qjUaSYHVo1Bis9whzaeX+dhn/OriRehtjg5dkYGFBuX3K3114viwu8FssI1WRM6FOSP8GuV0nxtG/wn4I4KkinIs/+wOZvcJGxZQ5Zrw0CIqEq5Y5oCRBpXVkgPGvrTzhlI7TUoctLxeA424vvjtXmSTvcHuw;4:qYXgYdQLJQFNcmn/zt/yqXSLwykNxoG+/D7397q3XxgUDhDI3bTPv2rU7CSmQBwl8Mj2iHUqtRHMqXzoWWk+BzeDoTKeiYnUdehmXz58Ayh6VakGTQx80pDnFflCkjdaBdAhemOVLJYxxWx5hhpU09abvLKhT3nIDIfUnrXod3KOQ8x/8NhkQsnPlXFQLK5a4cEDwIlSfL+j0mPqH7o05jUDCK26tW4NZ+iQ3bEfAev16ACDqgn7qHm+Bf8Fy9SdBD0dqb2b4aHSHwfCY4z83kpxnDtGujd/5b9duyqXofyRHojBz8S1A9J3PYP9yICj X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(767451399110); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040450)(2401047)(5005006)(8121501046)(93006095)(93001095)(3231022)(10201501046)(3002001)(6055026)(6041248)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123558100)(20161123564025)(20161123562025)(20161123555025)(20161123560025)(6072148)(201708071742011);SRVR:MWHPR12MB1742;BCL:0;PCL:0;RULEID:(100000803101)(100110400095);SRVR:MWHPR12MB1742; X-Forefront-PRVS: 0504F29D72 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(6009001)(39860400002)(376002)(346002)(366004)(189002)(199003)(24454002)(6512007)(31686004)(478600001)(25786009)(67846002)(81156014)(81166006)(8676002)(36756003)(83506002)(54356999)(76176999)(101416001)(7736002)(305945005)(2906002)(50986999)(106356001)(105586002)(68736007)(47776003)(65806001)(65956001)(66066001)(230700001)(86362001)(53546010)(16526018)(229853002)(6116002)(3846002)(65826007)(5660300001)(50466002)(31696002)(6666003)(316002)(2950100002)(58126008)(6916009)(33646002)(2486003)(6246003)(72206003)(53936002)(52146003)(23676004)(189998001)(64126003)(6486002)(97736004)(52116002)(6506006)(8936002)(4326008);DIR:OUT;SFP:1101;SCL:1;SRVR:MWHPR12MB1742;H:Suravees-MacBook-Pro-15.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?MTtNV0hQUjEyTUIxNzQyOzIzOmJvby9lbzJhWHlyV3JRREFwQXd1SlVIbTY2?= =?utf-8?B?Mm1sb3RxRE9iVS96ZlJ0Vmw1em1BdXh1WnVKZWRqNkhXWElNMDU0TkRIZmpr?= =?utf-8?B?djBBb1AxYzlRUVF4RU1OczZCeFVvQndBTTJXeXZQaXhtT2ExSzJpVlJpWHJv?= =?utf-8?B?cnoxZml0aUFSbis0OFpWdXR2MXNmb1FqVkNTOFRrTzdVbjgxN3cxUVJhQXI3?= =?utf-8?B?aW8wcHFoRjFyZUZOK2pUNmVEanNheVpBWHllWll1dVN4WFFsV1F2RHl4UEFz?= =?utf-8?B?OFIzZHhOLytTQWg0U3FaaGNlelIrTGNLZVVxMEdFVGZqM3ZZWFhxTWNFRkNL?= =?utf-8?B?YXh5ZFJlSDJSM1BaaTEyNStNelB0RVgwKzFybVpJN28raHI4NURMbVUrZkFm?= =?utf-8?B?ci9VcllNeE45bGJjeXA4YjhKWHIvZkQ5N3JIaVA3d1VJTEFLWnA0UHE2NVUx?= =?utf-8?B?S3dNK0RBdHYyL3NpNFc0NjBhTzRpZzhhdWl5cG94RndUQ3ZlL01FOEV0NXll?= =?utf-8?B?eDQyQVgvK2FraThmNDlSUlgyMjZkMDR3UlNEZ0pVUGVhUHRxRVNDKzNGU2x2?= =?utf-8?B?ZEIyZVFwUzZHejVsUkdnNEdJUUdDNXpyd1VQbmtIMWczNW9TUG9OaEhKUm9k?= =?utf-8?B?UitSdVJVQWtSVVM1NUV6U29pUk1FQmpoaTJvSU9MWkp0RGdyalRad3NqTHVy?= =?utf-8?B?YXZrY3R2WURxRisxbnRmSGhpYlRDWW50Z0RrSndvUU9adUpyNTdSMXRLUWhh?= =?utf-8?B?TG5mT1NoWUt0T0JNZzhKZ3RDbE9KcmVGbmhzQVZjRUorbVl4dy9DRU45RzdG?= =?utf-8?B?eWVuZlErdWR2c1RoSTkwU3l4WWJJd3A4cGdZQ3N4OURTOWlDM01PS3pvRHJj?= =?utf-8?B?YUVQRG9yS0ZNazFuRVlPb05KVVR2b3VzMDhTTHBDa2tpdWEyd0poQTBIVmxC?= =?utf-8?B?QTVUQVJCRFVEeGZlaVZIekdTR08yV0hTdFl1KzJtdzVFbmFZNGdqekM0SE5X?= =?utf-8?B?MGRHa295TXlOaGo4UTBPRzZHNllqQUtzZitMZTcvaTZuRGt2aDdzdDlPdi9D?= =?utf-8?B?VEhyaWVkN29aNFJabkt2dVRJVWQ0TUsrWEltSlhWRElBR0dPb0dQQW1WVlFn?= =?utf-8?B?V05nZTI0RHhnUG5BUGxkdWNUWnZnWFV3WlF0Q25pZU0rVnhiZXVzaFFDaHQ0?= =?utf-8?B?S0o0enNhMzZMVkNFQmlNNUg5S1hDK29NeDAxWTB6Wi93VlBzT0N2dDRBdHkx?= =?utf-8?B?UjNYeUROMngxbWZSNFF4enFNN3JxcWpVNzFpeVp1aDd1Z2tZUG9wVUdLcmt6?= =?utf-8?B?VHVya0tJTnBYQWNaVktZaXR2SVFQbFlmTUpOMDhJODVkY013Nk1Tdm5lcnBi?= =?utf-8?B?MmlIbEJjRDhCSVBlQytnRkpSYmZSYmdmYnVlTnZMQ2gzaGh4ZjVxd3pCTGJw?= =?utf-8?B?SE1GbUxkLzVSV3o1MTNCdWl3aUs0amVqeGxueE1TT3RMU0poVGR6d2NrWnhJ?= =?utf-8?B?QW9wZHhtdzZoK1lhTWk0a2xyZU5TcFBuUHFEUmVTR1pIK1JQYVJZcUVlQ1l6?= =?utf-8?B?MzdhMGd4b1NtTGZnVmFGY2p2ZEwvZ29KT1lnRkVjVmlUZXhMQitreHlkTTN1?= =?utf-8?B?ZmI4anVRZGorUjV3bnlxK0ViY25GcjVWWHpXMW1CVm1vdVlEZ0tNMmUyQ2Vo?= =?utf-8?B?TFdWYlBJMmNQSUVOSXFXZTNSRzNWQTZVdjNNMm9YYWFaQkx5S05zdlEzZ2Rm?= =?utf-8?B?UkhBYWdFcUZ0MzQ0cm5yREFFdXkrVXJCd2U2MVNoNkRUWTJMUkJRTTkzdW5S?= =?utf-8?B?ZzRBMUpHd3ZOS2xPdUlsM3BGaDQzaEdGL084ODZTOU1wVGpvVXJLNk9iUFVT?= =?utf-8?B?VGFFMzhCamZtMGM3aEpXNFNhdlZ5Vk9HYmVacThzVkVrZFAxSmF4TVVRS3BR?= =?utf-8?Q?XgbrP0FxpfwNeRPbQI84HDoWmcrblg=3D?= X-Microsoft-Exchange-Diagnostics: 1;MWHPR12MB1742;6:Ir9rWyLntP/OtaFL0IMVK1Qnm1SuAm5f2of1T7p4xSyF7DA6VSNCXILfPk0QEPNG2inbQrD3EPsEM/m9woyVDFVzJL6YJ0cNS6iEo6xU3MIvjmTmMzRatLsN8b9D1AW5fj5zjvKsacJJw45Hzixigwz7xLpDwIyTPcrK5wtp+PZQRMTsp1EyjwiTS/YN1KTJZph5CD7Q2GWk2x6BvNlpFoC38uvVSBik2XI63ZTmuqPZqPMAmBCCmlRjRmY62p7ABRgKUx5/Yratws2nQbb+O1TAi+FFtX+Bjlu2mTnrn/WlhMIIO/hJD/b5FLKl4ogf4SGznA3/p/BkQuyJZO6DyKkC9t7gkNtIiXFS40zAuF4=;5:9+5isvYIdLsM5wxEKyHjx9EwLn2Y45HKZdUgU+5uOZ9dpaV2uGpE4aA2QcwtXlmUbBx33GSDbpJM+V8zrD7yN6GjvaMLgvopRsAzpWOQYUcd6y7kNXk/+PlLLB00q6cttbgZ5rQVtHAzwoaBhyyzV3qrhQ2s8IbQaNG90JzqkLo=;24:Oh+vPgIwulorFNTAVYeiF8aRFPovoHj/X9GfmIQoFXZOHUGy944KeNUJEIR42AGSPOAgM0zX58L3xMku0DNdqQdGlJ7PP/MRvfNvPtlK5L4=;7:KaSXtW1XXciFbwoWuxwLJRKfgE+kSsVxhGg0xo7Mt0K2AOCMqOjklzVpnv5UzQssPFQhsxi6oKtDzD0yPktQiJ4r+SRkybAUMf5LVa2VcBOXnCTpXUwaU5v+1m9IeoWmUZFrdae81vpn8D4Eg5Pbjlzeebyrp8wUtMGKGSEWgGxTch94g/XUq6Ri6BRwV1gZ2CMJ19kXYwfA9VpJVmJGpm4sCM3U1amVx/XSKT5zjroMOraOCImHSTAkNqRFAJcR SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;MWHPR12MB1742;20:N2J+ZX6NYyA7TGOnNXq/u/6kG5zpVtuV0f334JHlZsrtZposOP28dP96XDjLCpGWQJPAJR5gYMI4qlIWJWUGl2jU+MwKgLHgfH+njgg2ce4WJ5tG/mLLSw4K6hz90COCe0GPzCJmKECQtGImOWiViHNDIq0bd+YvizbXvyo5IE4dSpum4fg3vaDhF0MrQAGYZH/KiY+5Llg7TJ9Ts9dlr4jtX0oKNrI4vsdoNimWcgfRyWNrrAYShBrQmHDBGvN7 X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Nov 2017 08:12:32.4883 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: b0db358f-bb17-4f8f-94a1-08d5356e9d7f X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR12MB1742 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Alex, On 11/18/17 4:51 AM, Alex Williamson wrote: > On Fri, 17 Nov 2017 15:11:19 -0600 > Suravee Suthikulpanit wrote: > >> From: Suravee Suthikulpanit >> >> VFIO IOMMU type1 currently upmaps IOVA pages synchronously, which requires >> IOTLB flushing for every unmapping. This results in large IOTLB flushing >> overhead when handling pass-through devices with a large number of mapped >> IOVAs (e.g. GPUs). > Of course the type of device is really irrelevant, QEMU maps the entire > VM address space for any assigned device. Right, in this case certain high performance dGPUs map large address space. > >> This can be avoided by using the new IOTLB flushing interface. >> >> Cc: Alex Williamson >> Cc: Joerg Roedel >> Signed-off-by: Suravee Suthikulpanit >> --- >> drivers/vfio/vfio_iommu_type1.c | 12 +++++++++--- >> 1 file changed, 9 insertions(+), 3 deletions(-) >> >> diff --git a/drivers/vfio/vfio_iommu_type1.c b/drivers/vfio/vfio_iommu_type1.c >> index 92155cc..28a7ab6 100644 >> --- a/drivers/vfio/vfio_iommu_type1.c >> +++ b/drivers/vfio/vfio_iommu_type1.c >> @@ -698,10 +698,12 @@ static long vfio_unmap_unpin(struct vfio_iommu *iommu, struct vfio_dma *dma, >> break; >> } >> >> - unmapped = iommu_unmap(domain->domain, iova, len); >> + unmapped = iommu_unmap_fast(domain->domain, iova, len); >> if (WARN_ON(!unmapped)) >> break; >> >> + iommu_tlb_range_add(domain->domain, iova, len); >> + > We should only add @unmapped, not @len, right? Hm right, I will change this in V2. Thanks, Suravee From 1584455842194466694@xxx Sun Nov 19 01:27:22 +0000 2017 X-GM-THRID: 1584393640782294553 X-Gmail-Labels: Inbox,Category Forums,HistoricalUnread