From patchwork Fri Aug 17 10:07:58 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Huang Rui X-Patchwork-Id: 10568569 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 AEE3814BD for ; Fri, 17 Aug 2018 10:08:53 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 9CE3F2AFD2 for ; Fri, 17 Aug 2018 10:08:53 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 90E9A2B018; Fri, 17 Aug 2018 10:08:53 +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 2AC812AFD2 for ; Fri, 17 Aug 2018 10:08:53 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 2439E6E5F6; Fri, 17 Aug 2018 10:08:52 +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-cys01nam02on0057.outbound.protection.outlook.com [104.47.37.57]) by gabe.freedesktop.org (Postfix) with ESMTPS id B8AB96E5F6; Fri, 17 Aug 2018 10:08:50 +0000 (UTC) Received: from SN1PR12CA0027.namprd12.prod.outlook.com (2a01:111:e400:5174::37) by DM5PR1201MB0122.namprd12.prod.outlook.com (2603:10b6:4:55::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1038.23; Fri, 17 Aug 2018 10:08:49 +0000 Received: from DM3NAM03FT014.eop-NAM03.prod.protection.outlook.com (2a01:111:f400:7e49::203) by SN1PR12CA0027.outlook.office365.com (2a01:111:e400:5174::37) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.1059.19 via Frontend Transport; Fri, 17 Aug 2018 10:08:48 +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 DM3NAM03FT014.mail.protection.outlook.com (10.152.82.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.1059.14 via Frontend Transport; Fri, 17 Aug 2018 10:08:48 +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, 17 Aug 2018 05:08:40 -0500 From: Huang Rui To: , Subject: [PATCH v4 2/5] drm/ttm: revise ttm_bo_move_to_lru_tail to support bulk moves Date: Fri, 17 Aug 2018 18:07:58 +0800 Message-ID: <1534500481-15123-3-git-send-email-ray.huang@amd.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1534500481-15123-1-git-send-email-ray.huang@amd.com> References: <1534500481-15123-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)(346002)(376002)(39860400002)(396003)(136003)(2980300002)(428003)(199004)(189003)(4326008)(77096007)(2870700001)(26005)(336012)(2906002)(53936002)(2616005)(47776003)(126002)(186003)(105586002)(5820100001)(486006)(446003)(11346002)(53416004)(476003)(106466001)(72206003)(76176011)(6666003)(426003)(23676004)(97736004)(110136005)(81156014)(50226002)(7696005)(14444005)(50466002)(305945005)(8936002)(5660300001)(8676002)(36756003)(316002)(356003)(104016004)(68736007)(81166006)(478600001)(54906003)(450100002)(86362001); DIR:OUT; SFP:1101; SCL:1; SRVR:DM5PR1201MB0122; H:SATLEXCHOV01.amd.com; FPR:; SPF:None; LANG:en; PTR:InfoDomainNonexistent; A:1; MX:1; X-Microsoft-Exchange-Diagnostics: 1; DM3NAM03FT014; 1:kprbqTwttRngW9giJXmdjG1v3ajrXlIeYGqB/AheMQ+7sF9ra0a8HGbIzHtpTPrRTBTy6HPUE7qCiwdb6IVKkHXjUU3qEi1X37GQcwRr6HYVJBkArIcRJIs5+N3kvirS X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 66469a50-d13f-4707-377d-08d604296ccb X-Microsoft-Antispam: BCL:0; PCL:0; RULEID:(7020095)(4652040)(8989137)(4534165)(4627221)(201703031133081)(201702281549075)(8990107)(5600074)(711020)(2017052603328)(7153060); SRVR:DM5PR1201MB0122; X-Microsoft-Exchange-Diagnostics: 1; DM5PR1201MB0122; 3:Ynwqc9mdMQNBYtrOq/xxvYGPcx3qnB++7JpsAlZSmnuhkRHn0K22iH8JmU5S7OSIGcps/wRTmHyrUj20MvVNOvlhBm0+lgZZZtbm0jWvJEc7BF/C3LhAgZPhkdCbqe/PNGfAwynClqUou6fwmhn6XsQ/lprBXSZRh7zrWCcXH7mIRzlyKCv6c1cKxrycve0CduM/eZDIaHHm9zgt/4jYG3Cewx2bF+VKWzTmA3biJ/vk3MKmtU7RGbWNzTtE3TfQ0wBmtNkQO0Kae8+6VHkylFdAnYqPX/mKrO4zRp5rvUZj1Ag216SXauU8PSocJrMFx1opnlXJkjLffLldL9fZ+Qnk3G8Dr2Ae4IGGCXPIzLs=; 25:YseaXTtb4XZwldF8c0bUYkbU//TvmVzURiAthHBUDMBrovmhsQJ9QZN1Z++I+kVh4r++ObB17U2EfoplR+FQB1GjwNPYbGM1gZHm8hThQL7eizER7jN1bn+QZSiL7xnaWejb2qT0slUuzfn4T/Wt+vyJyE7Ns3WfoFCnr2Xo2+V+B/e78PLOwxm80gdnZZCTuhWrJp2Z6nz+vcRApfoMHnxnfalxQ/XFE6ciWZHTMDMcdyGVSSt+yoVe9RKYvFNH00V24FVjf0mnk0P73lPHJpKzNEPETFeaQ4zXo7B0FjcEDeU4UHdwju8h1SgMQ+pEvElxnqq8Vz63TNJlkZCEYg== X-MS-TrafficTypeDiagnostic: DM5PR1201MB0122: X-Microsoft-Exchange-Diagnostics: 1; DM5PR1201MB0122; 31:CFi9WZ9cOsONc2O4yhpB5X1CsU1NBq6ElmbL29vTGSlEU8zQZYyYwp0nPvsaKr3ObiTb0AxUyhfCvsMJX/qlYauhIUcDF6M0Ood6LfMlqhDN1OiuJNYyTUF8SaiZt4jkgDIdmZiLNHpDMXelrb1WVFywsBY6rMxBMQ8Xj33Fh7VbxXAbg28Wa/oC6/SSRJlee9VIPYpSigF+BOsqmLO4kwH7a5kp5R+s/JVi8Hqvo3g=; 20:3ojYEOaXXOEEJ6LqVFQ2GiCL6nEI0KXE2T+vzKcyr9MbiNRvMlz54eaJxVVn6qUBuf5e9e+Nk66ubkam5Toj700AooJDX/N6kJ2FE7IMx7QyNCn/jnvcQuSfB7/OOad/UE9155jelnVrX4VCRKskygUX2yE17O5eZtn2RHs4vcDlOvgGb7mxcxg5CH0pgYs/csA5G3bB67z4c6+TeWXgE7165FRnAWhEPx6qqaukoKY+W8ikrNWwavUCoQn3BCN/PMHHuu0t9k6yCQXgu0tdfI0IgyzuU0/Q4ku+QNDQIIv3VCBnjicGjNeQu1mDAohuz8+NXxaUl9rpYjgZeRmPYOPDPvc8q4fM7W9si3UJLqZhCu9shFNosx7+VMV71kEv9dXrTvgL+9AjByJ2J9yecYfFD3ZBVVWrVCNThfjOZXF/A5Tl2AOR1n0dV4J5qC+OyPHABfgxedmvl6/EVyM1n/IgP9jbTwcg8OawTnKZ56ZPYAVuqzEpQ938k3uWQptU 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)(5005006)(8121501046)(10201501046)(93006095)(93003095)(3231311)(944501410)(52105095)(3002001)(6055026)(149027)(150027)(6041310)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123558120)(20161123560045)(20161123564045)(201708071742011)(7699016); SRVR:DM5PR1201MB0122; BCL:0; PCL:0; RULEID:; SRVR:DM5PR1201MB0122; X-Microsoft-Exchange-Diagnostics: 1; DM5PR1201MB0122; 4:gjhxCyVVC1aGZCatXVOBdYsVdTFCouuaE/3QDSj2GdQVztOb4BDcL4jjaVALOgdMaprqwdE2h2w36k70S5bDVoJc93qB03tkHYm8HZThbDXSsQlYjH+t7ZQ4bnn6v6Ef/C8fsWeUUuicEuQMKbVnszHDHcxFCzV5oFpIKuJcDqoP+nxKeQQQzTqTV0biF7jpC8R/oWgPaCZp29fSSxYWi8aJbMFjSK87v4JUdVyPYmR3tEDCz8Jo7k5oYSvjWk3ERjGtt9Sh85IV/bNvT/S+BKoOns0KnOqXfj+hvlgI3RDNiOjr+ZiC4hpC8ocp3klS X-Forefront-PRVS: 076777155F X-Microsoft-Exchange-Diagnostics: =?utf-8?q?1=3BDM5PR1201MB0122=3B23=3AeMRiR?= =?utf-8?q?u+YrnSnI9rv5AOfKIE4wJoQtA0ZuGhx6vPzbmxjZ070JM5eQwPmCxTa60h34A+8iC?= =?utf-8?q?bRmjSFC1RL0rBqWbelFzcn57gh5eTy4juE4Zc6vvcKYtsQh9T1HiglMdW9o+bOR7g?= =?utf-8?q?1TbyIf74CP+G50c2vXkV6ZL4/YeqAI9DoUm5Fcd1FinecGsHMY9tDdZBoEG/BWwlv?= =?utf-8?q?NGSjiosYMS+IPBlqqdi4q9YM3OTlOJ0VLFQEFmeI8qJ5tJT7uCcNV/gMRnuA6U8yc?= =?utf-8?q?GHKZAbYNsByPVtMkS0gapTcTPY+RBdG117zbciU8TOSGPcvaJtw7k5kcZ6M9QbRQs?= =?utf-8?q?JdMJk2R91Nekh7a4UsmRkh6zK9Pjka3gm40Ccs0lD2qirlM3AUIGHjBag/ICzkEo1?= =?utf-8?q?kolaxqt/AGqhLVdHtAljYoT7TAIU2EbG7twfr+WmaR44jYbr4Dga2mmDIglleJrA4?= =?utf-8?q?bdm7+Ut2aDTZRceWr1vD802HEMHGHTye8CIjoJGylrUdVkGleK7eFSvjl0fNqoM2j?= =?utf-8?q?wYIosfVhtX8cdG+CzEojwid/8hT7zPLQiY+tsEBS/0PmBtOsiSmcFNjb6mQ6wj1AN?= =?utf-8?q?717UW3GyDkchuCgE/iJbBnsNDCG4ZJD+jMbK1FzFNFg2Sr7/AR5JmPsmuk0QWX53W?= =?utf-8?q?nCyqn5AtAMtLHMVYrkIbhPr7IRkqZhMAoblzHaMD6wAY/2pE2oKpuvOGAfG3ZNV05?= =?utf-8?q?ty7zSWURmll6D0aFOjE4tC5wvyLksGdFRAjYXQhYG5UjjTtFKQ7XzsdLJM93UZgBq?= =?utf-8?q?zkc01r9DAVUdk+JdY+b5Mc7RJzMqhN7259B0Md2Org04nIn9b9TBma3NKKIQgAnxf?= =?utf-8?q?Q7BSL303gqw4msL+5fGSC6X2xXipo7MAefCh96euzlKbz+ih/yOoPbhVGSyXylTk3?= =?utf-8?q?FLTa9ilz/5HI1pqOOkFaMQq4bwC1MBAnzh6GNDRGXN0HnUW5qB/WZK3Qz0a0jmw8C?= =?utf-8?q?tvfKMuQO9dmBHjMofR+RYgn0UtE6f3r/nLMR9Hgsh3ydEW2cnlZlb9ZJT8umyyC1W?= =?utf-8?q?vpaTTPrI+LpUQgbAAs3Fr7EHrwvD6Gw18OUeGbMRf4Z+MZwfQFVxpn4dEPEOQTV7h?= =?utf-8?q?jU0Tq6oP9HqsTVAbw5qoRbn7dhH1gGnDDOWWinlBoxKP+oKnZngRr1Gg4POjjGgLK?= =?utf-8?q?F7ppkapRQ3uYOeDLS/rnW7vA0jzxgf4CIAcaG1nPj?= X-Microsoft-Antispam-Message-Info: Z5Mk6UK4BFr3FrAnj8ZKbAmovP1vnKB4hayk54vfkr4MtPdiUo00rHaPfyixJ2zYDklIgOH8kcGGpihXDV89etCVFT2XRGDxzzdE500CybbU57FKBZ9r6mmSwSPB5rrUKuRa/NBYcqgpJILgfUbr9zVkD2cy0fMEeWyKlWaFG0+e5no5vdJVpqnNKdHF1DMsyr/mIE9qwB+u16gQwBppxgvIwx+Wgjrp6Ml5smAZH7o5+jiDSMoAqJKzYMpqU9xaydRvB7VKC7yqfPC4uQMTPIiAMyPuHVjj0tjMV4T58Rs2a/UwsqxHLLaEQ8Lll6WnT5FuhYrpzJRtF0iwJp+EnW33POHAIdyXDK8Adqk1Vas= X-Microsoft-Exchange-Diagnostics: 1; DM5PR1201MB0122; 6:bvcmpUx1IjBQA+VBqUXG02G8eAMAxDo1toD5PaSPLtgcJnXUiAGHei7goYQxWEMrY5Lprw8Qzi9q+3FyS7wmTTAU2tFLPNGe9I2IixItyIazlPnKxInUMJQvxDXs3sPyYbnrZyYM2O7d8agxiwqhTe5S7hqY9kk0E78OiL2+Sx8qwvOC5TI8KT6IaQ8SdiFtmpUAkfVbwn6GZvVR0vl4KkrhSk7nrgI42kEOpQbW/xDpzHpxy5NHVddgwG1bzXnmqeNe2xxfynMEnrR7XlLMkiVSAfaWt2ksbwyhU7oaKUGq4qK7GriZLMgYe33N0xClX2wxAQET4a90HE+OWQKawbsrSeyYcWTs0rEd8WOEEm14r8yJOIZUgyl8IoLjJusY8SFry5exBgoMtp9gZnJCkAjTno2EhOxJnHpwYV7aJ6JVlWAqRqFxJScOmgjRE5QWWcFg3Rvp7YYx84OXxmlzQg==; 5:rbcr4hKMM9bPEqKaZfISWGmELsXesgM0Urf9h73rmKFkZLgT/tVcl9MvpQRJ/KrLAOB2OeDZSbMyEEWvCNa+OyEOH3W7oVdxZFQDqTilRdGPnXRvirmSzx4iZw6/GtHPT9ZuJAhw3XMr7QsvvAT4w0Y4QTR1OX77wgVfbrIrpL8=; 7:z82uaGwha9/VZ9WudlXsGnT9UAWfTsRcJl7C3AfJg2Eh1c2RPYa+3z0TiAlNY8oOM0lv66MHAvtv+WwMW0AWKsxGw6tR72R0kFRLvFFJJy4IUrJS6gER/WAog62MOB1Ay6zE34aJZkyL3+BebhZfJNDe8vhxXifuLPIFBCl9dr5kAeHvNsHH9dga3C/0N9C7ODWrUbKkSeAmTx/5DgJxvrcNuzXFr6VJWehfHsf9u3/33zAvN1KMRj/BTPJ4NmQf SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; DM5PR1201MB0122; 20:KCK1AoHEfOOoyzhTQxa1QX+p6WEDnl3g5XZ28iO4wZ1E95A/8UiLEzAQy7wFaQowt1n3HlV/vPyTCg1mHkezQxCyFuVgi0kvqhXOp7RxKo2EOSBjYk4zUa9w/odZ+QUzM/um6beJSFmXQmNLsE0lGs8GWU/BITfU6tgb/6h/6U5N3lT4UBrCrEi+fCh03Px7cNaKiBZ8hZDZyRUvdiHspckkPtisxwz3VszYFZEkX+SQLWUvZhlRdlz36619OYbV X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Aug 2018 10:08:48.3212 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 66469a50-d13f-4707-377d-08d604296ccb 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: DM5PR1201MB0122 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 Tested-by: Mike Lothian Tested-by: Dieter Nützel Acked-by: Chunming Zhou Reviewed-by: Junwei Zhang --- 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