From patchwork Fri Aug 10 11:55:56 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Huang Rui X-Patchwork-Id: 10562645 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id EFAEC13B4 for ; Fri, 10 Aug 2018 11:57:20 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id E0E4A2B9C6 for ; Fri, 10 Aug 2018 11:57:20 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id D49182B9C2; Fri, 10 Aug 2018 11:57:20 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.2 required=2.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED autolearn=ham version=3.3.1 Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 705F62B9C2 for ; Fri, 10 Aug 2018 11:57:20 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 725D16E897; Fri, 10 Aug 2018 11:57:19 +0000 (UTC) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org Received: from NAM02-CY1-obe.outbound.protection.outlook.com (mail-cys01nam02on0086.outbound.protection.outlook.com [104.47.37.86]) by gabe.freedesktop.org (Postfix) with ESMTPS id 5F9536E897; Fri, 10 Aug 2018 11:57:18 +0000 (UTC) Received: from BN6PR1201CA0007.namprd12.prod.outlook.com (2603:10b6:405:4c::17) by DM2PR12MB0251.namprd12.prod.outlook.com (2a01:111:e400:50d1::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1038.21; Fri, 10 Aug 2018 11:57:16 +0000 Received: from BY2NAM03FT006.eop-NAM03.prod.protection.outlook.com (2a01:111:f400:7e4a::207) by BN6PR1201CA0007.outlook.office365.com (2603:10b6:405:4c::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.1038.22 via Frontend Transport; Fri, 10 Aug 2018 11:57:15 +0000 Received-SPF: None (protection.outlook.com: amd.com does not designate permitted sender hosts) Received: from SATLEXCHOV01.amd.com (165.204.84.17) by BY2NAM03FT006.mail.protection.outlook.com (10.152.84.100) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.20.1038.3 via Frontend Transport; Fri, 10 Aug 2018 11:57:14 +0000 Received: from hr-intel.amd.com (10.34.1.3) by SATLEXCHOV01.amd.com (10.181.40.71) with Microsoft SMTP Server id 14.3.389.1; Fri, 10 Aug 2018 06:57:11 -0500 From: Huang Rui To: , Subject: [PATCH v2 2/5] drm/ttm: revise ttm_bo_move_to_lru_tail to support bulk moves Date: Fri, 10 Aug 2018 19:55:56 +0800 Message-ID: <1533902159-14232-3-git-send-email-ray.huang@amd.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1533902159-14232-1-git-send-email-ray.huang@amd.com> References: <1533902159-14232-1-git-send-email-ray.huang@amd.com> MIME-Version: 1.0 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:165.204.84.17; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10009020)(39860400002)(136003)(376002)(396003)(346002)(2980300002)(428003)(189003)(199004)(336012)(486006)(72206003)(426003)(476003)(2616005)(81156014)(8676002)(106466001)(11346002)(4326008)(81166006)(450100002)(305945005)(356003)(126002)(47776003)(2870700001)(446003)(2906002)(5820100001)(76176011)(478600001)(53416004)(105586002)(86362001)(36756003)(7696005)(5660300001)(23676004)(50226002)(6666003)(68736007)(14444005)(8936002)(50466002)(26005)(110136005)(54906003)(77096007)(97736004)(316002)(186003)(53936002)(104016004); DIR:OUT; SFP:1101; SCL:1; SRVR:DM2PR12MB0251; H:SATLEXCHOV01.amd.com; FPR:; SPF:None; LANG:en; PTR:InfoDomainNonexistent; MX:1; A:1; X-Microsoft-Exchange-Diagnostics: 1; BY2NAM03FT006; 1:F5UGgEUu+5OquDirkzXNpzbPaiBqUopQ0ib6CFoceehVzc7LOiEPY5kkov5ddihwJWA7bTyQRgkUxJqr+je/En3fHyVWEYfdcV4eTuAcZSra8BwlDLnCPlwoKU7G9itM X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: b8e94ce1-cc97-4c6e-58e9-08d5feb86a1b X-Microsoft-Antispam: BCL:0; PCL:0; RULEID:(7020095)(4652040)(8989117)(4534165)(4627221)(201703031133081)(201702281549075)(8990107)(5600074)(711020)(2017052603328)(7153060); SRVR:DM2PR12MB0251; X-Microsoft-Exchange-Diagnostics: 1; DM2PR12MB0251; 3:ejdXTlWyx5lnYtqMKG2mQBvyPUAjSyYMq81iQyvYXqivRBSicgl9lh79Qv0FANQ9VZl4GhvjCyDnxFzqOtzweyGBnJFNPoZ9aPL1AzFFv4G1M/i1P7M090yCeHhejvu883QXcIPL7ytOsJpdHO5fKgtPjYuqoBEd7hmOE/NyoPA+kPjOhOPXFgejDIX92Ot7cob98P0jKYnrGssasOv2DA55UwrG+lse7AHUUaR5VOCdGeISxkdBXYO8iFVH5s7GBtm1STsyWf5V4WZPnOuU6bX2Cl745XhSNc1t4diQGR3nAIt9u6Dcn94fhOih+xqeykqHD3D9vEeUpgus+Uui/tA3hyJNiVh4/mtFd/rgyYk=; 25:lTX0ICq9p2nFNysoQovAQxJ3OZrqVT8J1VEliwFVfYxWWweSxrbqDJbeoNmWmu3FBePvGsuP8RbyJ48QsGcRtGCQMI1sIDHXw7J/QgP5hTw44pJfputcr6+VRhMDTD+zEY3z6vLQkIDz6ZWx3d/KVefn1+4DtcwVt88AZl4/vD60FpzYoPtKVvqa3FIz8vOrVKhFblIOAy8kSeLay0YPCnDU4cXbDxv013qICn+I8E0a0B+nv+UY8tAzAGVGDwZikD03UXHkWmp3c6/rhH7vveicM0+iEkjBdHaH8ANGezaLOkKLmZjpt0dGupPWwuQ8bwCOfyI2XFPsecodKNchpklGUsC0pCpjLblP5IYlZak= X-MS-TrafficTypeDiagnostic: DM2PR12MB0251: X-Microsoft-Exchange-Diagnostics: 1; DM2PR12MB0251; 31:yk3ImcjsDrPse2g3ekkUHpFYRgxUOtAQNCP/v3DYTwRT9FBjbqcnxUmecJOSxrLePcu1yBYf0T7FmXyhotC3VXlTapVI6QlEsttH5BdabLyq4NWpSA/RbM4kA3hIcVk0RZyZ4igVkaezOFN8bKIRdEodk6ALaMdtcaS6xP3suPBMwU40icVU6aYJkyJmW9F37DxTFFQTB94B9zdeDMcuxIxFVw9wu3DAicb5U8X14wo=; 20:8L5RACk2McQdbtcjTNvhv9XNtkN9eJMDJjt3qRfgpt3dP3rLhVtQ6wgtxR6oX5NhazHwz7s7zdG3saCXSSFiElmro+H2OveH1h36Ju7Zv3cXCCbwsSYAOagn9pnA+8xZ4kkamvd6MpeMDOjFoQL5F8X6Kqf33wmjoqyWBV5wezIwbvu6fNOK2EkO8rTogRMOwUNy5x5/Pn2qEXgU/f5vGZ3jCwYeV290Z6Yj28dN1JniQixs4Ce3xYroeUY6eg03+cgDKJQCVOS4ZZlC4JihWAO8l7uBrzDKf+67wlSqP4SmwPSdmm1ao66stugMuv3cuV20zIGr3DDxK4Ro8ZTpyP4WMro3ne6gs23+6G+kOQRxEfi4CmjvkC5iWjap7dawv31XL/kuoHgXOMlt+y2l4muJFqX8rmOwKxZJUK8puQL2J4FJ9Jpcd4IeslaShAKF6t3VEBW6kVJi8t8Io9ZchVAgxBjDWW5vQp/YLxzKCoyiSmVde+8sy3Nsup2ZOfJj X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(767451399110); X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(93006095)(93003095)(3231311)(944501410)(52105095)(10201501046)(3002001)(6055026)(149027)(150027)(6041310)(20161123560045)(20161123564045)(20161123562045)(20161123558120)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011)(7699016); SRVR:DM2PR12MB0251; BCL:0; PCL:0; RULEID:; SRVR:DM2PR12MB0251; X-Microsoft-Exchange-Diagnostics: 1; DM2PR12MB0251; 4:W9OQ7rqh6b1WioEjr+rqsmnVt7pvQz8VBAedCIp4HoQhsAh8NHVbE8Iw+lKjABKpVAha2Gc0Y6F13cGmPC6p5s9rjkbBpTUrtOhbuo4+qMSLdYaiQ93xjsmqNYfgkRStz7yDTvQJe0Sm3RZVnc0mCHI188GVXVJeXMSFIMO+k/Bbsqap4phHTMjhAbmoeFFb6HdgrpiUNS7A6f/l3SPxqJZobwnfEyIK0f73/V5OMgiYkrUA5l9mBh7CHcUsT5GFc6AEYV9BZXmaPBAaS9XE9ObkRzhwnDnmi0EllVh1mc0N8gMkdkrRMezb06b2qt7+ X-Forefront-PRVS: 07607ED19A X-Microsoft-Exchange-Diagnostics: =?utf-8?q?1=3BDM2PR12MB0251=3B23=3A2mMV8ZN?= =?utf-8?q?33TjCt+tbi1ryjgTs2223CTscbMdro4QZmq9qhBiEHETyZD0+YS8CGPqHByGQ7OXp?= =?utf-8?q?CM6VGetav8W5xsDVVO8hv9nRveEnHS8KelBpfyCc7wMAN+9SwC4HfAVxVmM+GrEVw?= =?utf-8?q?yvHlc1i+qqabyh9iNNAqBeU93EiccPalaTUzO4cybGmPX++k8c4/5vJQZNOW4oHnI?= =?utf-8?q?54Wn6Enx3cOW9Wcr5MnwF7gKkiXBQVrnvRsjySyIg4ZKWbYpKESyPV870Pl3WAawL?= =?utf-8?q?Mx8E3YxG8zNoToh7p8MuvnUukWSYYFfkHmPYioHjFkBeJg9gcYZwiVMiITAHTTSVp?= =?utf-8?q?Z+bJmEqctS6eASy0Ow1pQTLWRyo760g0KVxUuIi/scjvzcsWfNl+84HlFaFnReqle?= =?utf-8?q?u31EzS5iOyWlRu7FL7ekOdP9q/bEEIyCMN4Aa0t41ijR309bcsCMgK7W0eOHFAV59?= =?utf-8?q?1pV+6sAiaczxRjivUsBdEYwvFMOiUZtneFCtUqGSV8AwdCWKKr5iA5lnn38RhIx0c?= =?utf-8?q?8HlL0gN66+eK9kHQM3GN4qUSLnPMoXAnY2/w59hEhNy2isu4tHV3I6macLQA0Mkui?= =?utf-8?q?jr76Zh7cMGyO0wSyFKi31QHwMgcz+fMR2Rh0HyHotGHELScEh5Vk3O5CCvP5s0FRu?= =?utf-8?q?jGWnzQudSfLoFoEqQAMiD+QTTQejbkkLoXqn0PWktO8EahlDIQMm/OQ6lpu2sdBWS?= =?utf-8?q?8vnq7krX5nG4ZAH7DbIk1Wh6QF/uoGHwH0TcfP7YMaJLsyeYqOO9VGeINyFt/rvAo?= =?utf-8?q?EuAObSp6h6GUpM+EWsssN46LCYjhj6kPKOl9Y7QcpwuHDebmVYYMDXBgilXTE84Mg?= =?utf-8?q?F/lfzLJBX+mZvSSlbXRrkVtzHtbmIRxPMNVnBFUyTgAZOSyuuvgpjLi1ZYQIXUxhA?= =?utf-8?q?qMO092D6HfThEk0EoyuMKtUGUU9i/Pigv9XJs3QFyw93AxJb71/tTHUehc2ZpH+gH?= =?utf-8?q?aPbQHNxXpHJ+i8VudKrLQVUNvAjTz5d8Lti9WK2jEhZqiDrvnjQvJ9pbva6ftDGch?= =?utf-8?q?H/crdGkE5I2tMlaIW+fzQByTo8YBEkk9qea4tZkLZIqI2C/SRBvPUmv60uBpcU/RB?= =?utf-8?q?whjXw6HMvVf5Vt4x2Ad1ExdBc4tvBJdptjLJkE9GJfYN5+CVXirslCPbe5Nzfq7EB?= =?utf-8?q?tQipK+Du/yR05g8hEZyn3bOHJAmV6K76aVMkHLP?= X-Microsoft-Antispam-Message-Info: jkCK1QH3NhiICQwfXPiOSM2tx4dbvUR0uBfImuBIKyAygBnQnLOQL9YtvI9QjWevR5TdZEfZNj/DnmQg9ncaRUAxVmp1fxp5aeW/ewJCSSj+jYYeW7SP5bgfZmBeWJeZOcqDyayQoiD1udxoNLRq3a240icykyNOe5PaFPuGYlZmtUWnEady/Ea4Kdjke4Zji5sR7mlJ85VadTwaHFEGHD/hcYxprDf4wDpdh67j2+U6T9ZtCXyCfhWk9XjHiLBOH+taZLLMepu5stsazGtak/8nsrtwXTbE/lfEg1tkHyGBluf4RSkTw1LC7H494qhuURsYdYgEdwQ5U/c1Y5PlvmrlD+mNktU9utEzM0IMxGQ= X-Microsoft-Exchange-Diagnostics: 1; DM2PR12MB0251; 6:7AdFGfr4u7wEQSZg6S8Bi+RPX8D1M7FALumCsh4RQl6GX5PHEkOIv5N9TLdnFMyO7smVhgZ7AgJI+dACW/9H+PqcYfXxHtgXgkRuzIQ9HRQMSaGadTmomwMqbN0GC7OCGsxR5C0TdEd7hoJQlISLXWJc0Na/cQaGvIZZqYZAoajA2wjWXEZ5JFCf9FzI75vwR1Fzu2onmBIqjhFEqGQZF21Q6Y6z3ke1aE7q5D4YbKIhAsM5YdxztpMHqS0xqdRFOpuUsXaL/GUeRuJoyKLse7Up7tvaCEdo1udCUxu8zOevPB1aCWXq7JIeMcpUNmnSWhyfM4ZPDGs/19+K7qgG+sIAdunfE6E1p3Km44JFxB5PODHnL4Od9DrT2Cmvl/I/SChAGct+vxJeEbujZg9xYjoLP+DAQqtu9JMp6hTyYyJCxYQR/wrnJ2tNbi7FlYFKC0tXIjTr4IOmz23oN/D0jA==; 5:m/XSPfhuiu86ls/Hq7SU5ScoXmnS7hakIjRosqfa2Dswk0+67UTlagLyGtQ/Q+i/QzYQTYdy0XvctHUNPq8wqYh+e827hUKTGbbwQW7GudxedpoQmTgIRfD3oVnJy20TTZsKKC2oCCVUoLfVUUhnTn9KtwcPe1O0doELMk/esbs=; 7:xHFW2r2wXFLERqSSr2IJJXe0848FE/TgBD3PVrk6cejSedSyd+ALkMcnbfsO0xPUMxG0tnUJ1f7rOcUPdIzt3EZtPzni2/DkZgjplMrX09cpZ4tUt3j4XwwNdEHghXA9kDrDGBZb8mhTQBv7evfKy4bS+oEgEhTUx5QSQqmMeKzjY0i6nw8EoNa/jJjtIAUlmYhP8cH6NtxAKuXvsihd9+VXa1Z1hF/eGxUYRMkzEAFNdJkU8LYihEJLM1XVA3w8 SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; DM2PR12MB0251; 20:Tz2dwNPwNmSOgspjBanFTwclnpzy+/t20jDA+zBWE2f8kRBUoTrlJqCSCzdSpQQFpby3doEAudT2BgRIykKBu7WkIsQTE9rQfknvbplaOCCraAipiiP6kjndTrFYSbl51NsXzX69wiUUlK+6sI9sjvJxpzt+4qWHYLql58eU+MgKJbbbmbnHt0vi+S+oWp02BLl+PnO1xaW+2Nl/Wux547zKIAqMEdh2i9BTMUHZuAN8SMh78GLQCLRrvEJSNi1L X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Aug 2018 11:57:14.1501 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: b8e94ce1-cc97-4c6e-58e9-08d5feb86a1b X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d; Ip=[165.204.84.17]; Helo=[SATLEXCHOV01.amd.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM2PR12MB0251 X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Huang Rui , =?utf-8?q?Christian_K=C3=B6nig?= Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" X-Virus-Scanned: ClamAV using ClamSMTP From: Christian König When move a BO to the end of LRU, it need remember the BO positions. Make sure all moved bo in between "first" and "last". And they will be bulk moving together. Signed-off-by: Christian König Signed-off-by: Huang Rui --- drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c | 8 ++++---- drivers/gpu/drm/ttm/ttm_bo.c | 26 +++++++++++++++++++++++++- include/drm/ttm/ttm_bo_api.h | 6 +++++- 3 files changed, 34 insertions(+), 6 deletions(-) diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c index 015613b..9c84770 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c @@ -297,9 +297,9 @@ int amdgpu_vm_validate_pt_bos(struct amdgpu_device *adev, struct amdgpu_vm *vm, break; spin_lock(&glob->lru_lock); - ttm_bo_move_to_lru_tail(&bo->tbo); + ttm_bo_move_to_lru_tail(&bo->tbo, NULL); if (bo->shadow) - ttm_bo_move_to_lru_tail(&bo->shadow->tbo); + ttm_bo_move_to_lru_tail(&bo->shadow->tbo, NULL); spin_unlock(&glob->lru_lock); } @@ -319,9 +319,9 @@ int amdgpu_vm_validate_pt_bos(struct amdgpu_device *adev, struct amdgpu_vm *vm, if (!bo->parent) continue; - ttm_bo_move_to_lru_tail(&bo->tbo); + ttm_bo_move_to_lru_tail(&bo->tbo, NULL); if (bo->shadow) - ttm_bo_move_to_lru_tail(&bo->shadow->tbo); + ttm_bo_move_to_lru_tail(&bo->shadow->tbo, NULL); } spin_unlock(&glob->lru_lock); diff --git a/drivers/gpu/drm/ttm/ttm_bo.c b/drivers/gpu/drm/ttm/ttm_bo.c index 7c48472..7117b6b 100644 --- a/drivers/gpu/drm/ttm/ttm_bo.c +++ b/drivers/gpu/drm/ttm/ttm_bo.c @@ -214,12 +214,36 @@ void ttm_bo_del_sub_from_lru(struct ttm_buffer_object *bo) } EXPORT_SYMBOL(ttm_bo_del_sub_from_lru); -void ttm_bo_move_to_lru_tail(struct ttm_buffer_object *bo) +static void ttm_bo_bulk_move_set_pos(struct ttm_lru_bulk_move_pos *pos, + struct ttm_buffer_object *bo) +{ + if (!pos->first) + pos->first = bo; + pos->last = bo; +} + +void ttm_bo_move_to_lru_tail(struct ttm_buffer_object *bo, + struct ttm_lru_bulk_move *bulk) { reservation_object_assert_held(bo->resv); ttm_bo_del_from_lru(bo); ttm_bo_add_to_lru(bo); + + if (bulk && !(bo->mem.placement & TTM_PL_FLAG_NO_EVICT)) { + switch (bo->mem.mem_type) { + case TTM_PL_TT: + ttm_bo_bulk_move_set_pos(&bulk->tt[bo->priority], bo); + break; + + case TTM_PL_VRAM: + ttm_bo_bulk_move_set_pos(&bulk->vram[bo->priority], bo); + break; + } + if (bo->ttm && !(bo->ttm->page_flags & + (TTM_PAGE_FLAG_SG | TTM_PAGE_FLAG_SWAPPED))) + ttm_bo_bulk_move_set_pos(&bulk->swap[bo->priority], bo); + } } EXPORT_SYMBOL(ttm_bo_move_to_lru_tail); diff --git a/include/drm/ttm/ttm_bo_api.h b/include/drm/ttm/ttm_bo_api.h index a01ba20..0d4eb81 100644 --- a/include/drm/ttm/ttm_bo_api.h +++ b/include/drm/ttm/ttm_bo_api.h @@ -51,6 +51,8 @@ struct ttm_placement; struct ttm_place; +struct ttm_lru_bulk_move; + /** * struct ttm_bus_placement * @@ -405,12 +407,14 @@ void ttm_bo_del_from_lru(struct ttm_buffer_object *bo); * ttm_bo_move_to_lru_tail * * @bo: The buffer object. + * @bulk: optional bulk move structure to remember BO positions * * Move this BO to the tail of all lru lists used to lookup and reserve an * object. This function must be called with struct ttm_bo_global::lru_lock * held, and is used to make a BO less likely to be considered for eviction. */ -void ttm_bo_move_to_lru_tail(struct ttm_buffer_object *bo); +void ttm_bo_move_to_lru_tail(struct ttm_buffer_object *bo, + struct ttm_lru_bulk_move *bulk); /** * ttm_bo_lock_delayed_workqueue