From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1762177AbdKQVMB (ORCPT ); Fri, 17 Nov 2017 16:12:01 -0500 Received: from mail-bl2nam02on0089.outbound.protection.outlook.com ([104.47.38.89]:20274 "EHLO NAM02-BL2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1762158AbdKQVLr (ORCPT ); Fri, 17 Nov 2017 16:11:47 -0500 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Suravee.Suthikulpanit@amd.com; From: Suravee Suthikulpanit To: linux-kernel@vger.kernel.org, iommu@lists.linux-foundation.org Cc: joro@8bytes.org, jroedel@suse.de, alex.williamson@redhat.com, Suravee Suthikulpanit Subject: [PATCH 0/2] Reduce IOTLB flush when pass-through dGPU devices Date: Fri, 17 Nov 2017 15:11:18 -0600 Message-Id: <1510953080-5619-1-git-send-email-Suravee.Suthikulpanit@amd.com> X-Mailer: git-send-email 1.8.3.1 MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [165.204.77.1] X-ClientProxiedBy: SN4PR0501CA0100.namprd05.prod.outlook.com (10.167.128.17) To MWHPR12MB1742.namprd12.prod.outlook.com (10.175.55.13) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: dfc37416-db4a-43e4-21fa-08d52dffceaa X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001)(4534020)(4602075)(4627115)(201703031133081)(201702281549075)(48565401081)(2017052603258);SRVR:MWHPR12MB1742; X-Microsoft-Exchange-Diagnostics: 1;MWHPR12MB1742;3:GIJeJezAaVpmPmA5eAEY/Fl4ozf9Q6JpbNbMZSGFuv8G+rPt/SGnV0yPd2JxBne/g1MOs1l5w5uG5+myXKDI4kO3UPNCJ26JHumS9nuO9nhFqrvLKQHyYDXSm5LDq7MTQqwtV2UNEPqKXtE7rWveT8pyusfR/oIemxPDlU42CCWjw5a7PRpb/s1oy0qbJVugyFyw1www8j1f/rB4w0F336bVWlLWqdETs9ztgj1jDvIAcotCdWZ5mwjL7rhegYrS;25:Ma+GUcRnvJSSMKleYQSJNTyVgcZjQXvZ6w23bv60mc7ttjyRpSy+jCf+Shvpf9NMwoTa4tIZTynf5uEvCIsVDQCjMn1r1q64XVYJ5joSj4CY6LJbGFIAX7SAfpiwfckvQxp8FV/dqZm4X7XbyXRiOVBxlxeXi8lJxUhoJYb9PvE9RguoRsXR25F3JObmduk8RbznhCIoPIC7JJXlGD7lUXLP4Y870VxwBOPW4pi/D14lvn5i3Pn9+UG5YBTL57BpAYsFEUKOFn9uh7uIMCbM7c5vZ4Y2I+VPdGZipLGwGyZDnCH7KS2BZA1ZcEiqsuSSGRUy47d1wGwOnzkgE6Hfkw==;31:rEDGxDted3QKeIXKpPK9KhI+D16YLDDCLHMZzKlt631esVpVx2FTOeM7EkPiemNj8jxJnkTIIl99LJCmVuzZ7GVrXsHbNRVLpiruqjddvyc3yC6PwOT51soMh6KY7N0ywDJAohTCcc/FIYXVgeP4Ma6yvrl/TS3k7tXRJBOuv/wL0bb7Ei7Z6VHOCZQ1GmVvk+B9MGqZkgPm/BWJGk7Vl5UMnoV8flhTPKcDXtv0rjM= X-MS-TrafficTypeDiagnostic: MWHPR12MB1742: X-Microsoft-Exchange-Diagnostics: 1;MWHPR12MB1742;20:fqUScPgol80VcsrKrash8IdKPN7W/IK0pXsCbMBuzecaSkzTayzbBcP+yTdqvZCjCEWDCeTJvJjQF8z9aQIHNgGPer+tIIpXHXcTNpcYU2LnKFqh/nxtz3r2QlymfQBYaUoIWb9x+xjH2o/H/JeQv5rJifGuTJxV2bVdRXR6MBmTZxeNIyRBIAIU6JWw0c6w2dY3GbTD3yT3pUgW+RXqmLUo8HyKXtCHuxRClkYPsd7MXiANGE8mYR/wgYSjcVAimh7hyz7eYvnW2ruOGZVqQe1oPn3ZhSI5PhRNkBOMgrxpwG8ujrW1py8RKtOAItWn+NU3kL8TRFJSsr2cB2VyWjcJtySqn7UmakiC7Ue6mhdKrHJdg2aFPZbQLAgLxbiLqFac7Lmcr77y0LklDKsA2GK72K/UEM0oIjPlX6N8F3GV7cThihZ5VLaVL+anGetw4GP3YHSi3LIX9QRKve4r48QNahsbZ3xQaRH5PKhk1BLL95wR+8mMDsaVNZ43dTRF;4:hHqP2dk586JL2fgyEksm6/QoFdoMmdaZbrAfSGTjRma3D5o2D7vfMizaIIjJsqCtZBq1UhldLkv76ru/j6tKeJyl/WxDKm0gux5zET6/QL2tYC4+ubd6QuLiRzzA8nYcRvyi9Lva6hZZLFSysqjKfWYXX/qYYGC/kSUrNy9vUVC05ZLsz7Oa7//RK3/uOjQENjM7tA7ccDLsfjj67jTlDB0XE+r0l5fvfI5RgFLd/J7pHEJf6pOjg3uO9l+mdVWosfj1fmc7BSssKE9b8EsjgnPTuzFji8PvlQpWDIYsEGW7JGY+YdwTeJ3qW0ujzXRH X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(767451399110); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(2401047)(8121501046)(5005006)(10201501046)(100000703101)(100105400095)(3231022)(93006095)(93001095)(3002001)(6055026)(6041248)(20161123555025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123562025)(20161123560025)(20161123558100)(20161123564025)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095);SRVR:MWHPR12MB1742;BCL:0;PCL:0;RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095);SRVR:MWHPR12MB1742; X-Forefront-PRVS: 049486C505 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(6009001)(346002)(39860400002)(376002)(199003)(189002)(36756003)(48376002)(50986999)(478600001)(6116002)(101416001)(3846002)(81156014)(8676002)(81166006)(16526018)(4720700003)(189998001)(16586007)(305945005)(2906002)(7736002)(6666003)(72206003)(86362001)(316002)(50226002)(47776003)(5003940100001)(6486002)(50466002)(97736004)(53416004)(68736007)(105586002)(53936002)(8936002)(66066001)(106356001)(25786009)(4326008)(5660300001);DIR:OUT;SFP:1101;SCL:1;SRVR:MWHPR12MB1742;H:ssuthiku-rhel73-zp.amd.com;FPR:;SPF:None;PTR:InfoNoRecords;A:1;MX:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;MWHPR12MB1742;23:M1z0pMt/56hpwy7BPOS2Ef70QQR+jiIQYhOpBv1jq?= =?us-ascii?Q?uxD1BRwbrDQ4kD1JdavC967jzGlPivLix8JYj/wWHvYiOT9gYIGUWJWUhcjh?= =?us-ascii?Q?76OmVfSQIj29oexp59rOnN8lr2vLu3GrRsiSNjm8gN7wcybDBOdJLODaBsEM?= =?us-ascii?Q?G61zBn+LZxu9+bazh2L0hETo6wnnNBQq9XVmpz9U/iXwaur88HmGEnMXf8Bo?= =?us-ascii?Q?ZuU1KI4fJRxZoGmljBT5b8hzbKIz/16jhm+2ntGxHjLgJu1p1r/xqlYhIbp2?= =?us-ascii?Q?FntCF5mmc4R/Aiw55EMOab4+eR4SEDbJbTCeLBIndE4Kh4CiXA3VEBeFXw0Z?= =?us-ascii?Q?ikb7btEreWnHjWgMamPK+jHo720tBvAE2uKo969HyTnrzi9a0B4eMCjYgKkm?= =?us-ascii?Q?0B7XwygrIE9Ow5pOlpAqaKuIMoxiQjTbD5DIwxs7qOlV256Aj5hDfa7Prqjm?= =?us-ascii?Q?mBCv3FlkVMXWhZ99JHaNtxRLI76eo9xEcbLJHfZAo4vNEVipqot/8Ecr4kzh?= =?us-ascii?Q?sn/A6U+eIERxyuRU10kPn2eZDQ5WildLXwnoei7/nvr+bPYmJihP5J3xGvIA?= =?us-ascii?Q?gD85mHPUd32nWJ41mrvI4Ib6K7KSJInbNtPZSWsmAKoGF6Xe8MPxHfqYoHNu?= =?us-ascii?Q?WlJ+Wd2MgICpg7qUrEIOlEljGoXNUCz7uT99Aj4ioL00FFbd7By8Eyr6uiHf?= =?us-ascii?Q?nXqIefxVheudOvSOg+YHYlVuvdfAn6qfdAHQ07dJ8s7ZlF+ObvzXijRkdSOU?= =?us-ascii?Q?RWCXwdyhO/XqYYyOkNL2VzCp0KLQnxt8aVsiIIQEYeebs7N0aV2i+kSQoGy+?= =?us-ascii?Q?V3/h46Wr529yskQZHMcA9zcb4Cys7iPs5bjnkK98Sxq9p/SDMCz58FnRxNt1?= =?us-ascii?Q?vTwV4UfUbUrXN7qQWDNzMRADSAxu1377ZeNaWfg8vZAWKCCmtYy+GaR5YPRN?= =?us-ascii?Q?/VBp6IvcUO7zelhfhtDkeaqjpNV1hSIzwCtfdaEIFoRQHcM/cwOhcPZVrk5C?= =?us-ascii?Q?2qz9s24NZKUjyg82nWc7MzOJBeMK/w+vf855njYeFMRyg=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1;MWHPR12MB1742;6:Zsh+e/G7pKic36rsydFHNlIgjLfN7+QV4e8BlNifwE9aEsAqFWJzNactS1b429ysD1hqtSOUfXbjiseOrM0ppGH4dcCNzDLPPAlLSkgKg/Y/QFagETzwFpTpPFiu0Qr87vDmTxGLIoTNER6zeSOWTZNQ9LfD618sOL9Ahvyfzw1VhLDwL0cGhrY9RBqTIMz/vMgmpxL0wH7AecTRy6DStM+abEpB4JUO8cUDM0mkESvy9aY8UdwuOEb3IELty3KozjdC/2Ppx6/dXg2zFQnhm9UbxoI77ZdXS5WF1kkl15YfMSoKuFbOFpFKgwkeEM947EiqIniBJ9uQVNKJDrvGmHONS2jJCyoytmmhHEUR63U=;5:qMwpsCf4TzHUwiDw1ocU2uLJen0iB6Lg+uH1Gktu2O/ABlaShitpDGayJHz8f9C13JOrqPkB6d+380b5c3LmXkquSCrIadgN9Gljw4oIveB8bF7CdMrYqaJSmHYBTuhAOvTQjkgB0fft502nQrz1gJAkb2Y8L9mJ7x438dsb3ms=;24:t07BbQo2QUbvJPnRnUkZVxoIegr/aAeEnUtla72SrCZI0S0mq4fMIr1AhKfFLrTspo/ckFFYQvjPLg/eXZDURdXYfunIXAS8IZxJaiAPr9o=;7:AVE35MwzD4EU3BP3RSbifac1n0Zfa7etDoUZPhm5LpkwRQXbMwAL2snPy56h3Vw1YloxL5pZCu2XGKLIS5A3jxFLaGrKiemMw+y+iHm87LdD895zhPC88ekBXHGuPfXpvtpKsflJcqwoHfigsJruS+U43DN1GbHQSc4asJYOSiXVgwchpr7jxfkKrTmZJDiQmvCapMSZDJEroka83jo7V421Bz1lWcpT7cZpazlFEQ0yDpj2ttnEivxzS/+u5vXv SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;MWHPR12MB1742;20:zU4tLnrGCy0ISLFNVX+FblbkA7UoFAH5JxR1Z47mmYcD5d6KFtWph4TsYagRKe/RH1nayLTXzFqsAELWxVTPTMrzP0UIvdKGbE0Tdfg7RGmm+Q9xYMkHtIsA8HZTbbBZ6k3tq0XEBkldND5TqzmoZWm2SH2+j7rnrhqOTptChwPny10jgH9/PWW6MqkhUYU9TW1iP8rgLkP4DnNDSs4Lw6rhqkqY4FbHgCnjcflqnlFGR+KaeBkAGkBbwMakmIpK X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Nov 2017 21:11:44.4647 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: dfc37416-db4a-43e4-21fa-08d52dffceaa 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 List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Suravee Suthikulpanit Currently, when pass-through dGPU to a guest VM, there are thousands of IOTLB flush commands sent from IOMMU to end-point-device. This cause performance issue when launching new VMs, and could cause IOTLB invalidate time-out issue on certain dGPUs. This can be avoided by adopting the new fast IOTLB flush APIs. Cc: Alex Williamson Cc: Joerg Roedel Suravee Suthikulpanit (2): vfio/type1: Adopt fast IOTLB flush interface when unmap IOVAs iommu/amd: Add support for fast IOTLB flushing drivers/iommu/amd_iommu.c | 77 ++++++++++++++++++++++++++++++++++++++++- drivers/iommu/amd_iommu_init.c | 2 -- drivers/iommu/amd_iommu_types.h | 2 ++ drivers/vfio/vfio_iommu_type1.c | 12 +++++-- 4 files changed, 87 insertions(+), 6 deletions(-) -- 1.8.3.1