From patchwork Tue Nov 27 03:10:34 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Liu, Monk" X-Patchwork-Id: 10699615 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 25A9B13AD for ; Tue, 27 Nov 2018 03:10:48 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 1356C2A7B3 for ; Tue, 27 Nov 2018 03:10:48 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 075442A82D; Tue, 27 Nov 2018 03:10:48 +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=BAD_ENC_HEADER,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 3E1B52A7B3 for ; Tue, 27 Nov 2018 03:10:47 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 043C289E52; Tue, 27 Nov 2018 03:10:45 +0000 (UTC) X-Original-To: dri-devel@freedesktop.org Delivered-To: dri-devel@freedesktop.org Received: from NAM04-CO1-obe.outbound.protection.outlook.com (mail-eopbgr690080.outbound.protection.outlook.com [40.107.69.80]) by gabe.freedesktop.org (Postfix) with ESMTPS id 7CF0589E52 for ; Tue, 27 Nov 2018 03:10:43 +0000 (UTC) Received: from BN6PR1201CA0021.namprd12.prod.outlook.com (2603:10b6:405:4c::31) by CY1PR12MB0619.namprd12.prod.outlook.com (2a01:111:e400:c43c::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1361.14; Tue, 27 Nov 2018 03:10:41 +0000 Received: from CO1NAM03FT037.eop-NAM03.prod.protection.outlook.com (2a01:111:f400:7e48::208) by BN6PR1201CA0021.outlook.office365.com (2603:10b6:405:4c::31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.1361.14 via Frontend Transport; Tue, 27 Nov 2018 03:10:41 +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 CO1NAM03FT037.mail.protection.outlook.com (10.152.80.241) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.1339.10 via Frontend Transport; Tue, 27 Nov 2018 03:10:40 +0000 Received: from monk-build.amd.com (10.34.1.3) by SATLEXCHOV01.amd.com (10.181.40.71) with Microsoft SMTP Server id 14.3.389.1; Mon, 26 Nov 2018 21:10:39 -0600 From: Monk Liu To: Subject: [PATCH] drm: should return upon the best size(v3) Date: Tue, 27 Nov 2018 11:10:34 +0800 Message-ID: <1543288234-12155-1-git-send-email-Monk.Liu@amd.com> X-Mailer: git-send-email 2.7.4 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)(396003)(346002)(376002)(136003)(39860400002)(2980300002)(428003)(189003)(199004)(50466002)(126002)(26005)(77096007)(50226002)(336012)(14444005)(48376002)(476003)(2616005)(51416003)(7696005)(478600001)(305945005)(316002)(486006)(6916009)(16586007)(72206003)(426003)(8936002)(97736004)(186003)(1857600001)(53936002)(53416004)(2351001)(105586002)(106466001)(81156014)(81166006)(5660300001)(86362001)(47776003)(104016004)(8676002)(2906002)(6666004)(68736007)(356004)(4326008)(36756003); DIR:OUT; SFP:1101; SCL:1; SRVR:CY1PR12MB0619; H:SATLEXCHOV01.amd.com; FPR:; SPF:None; LANG:en; PTR:InfoDomainNonexistent; MX:1; A:1; X-Microsoft-Exchange-Diagnostics: 1; CO1NAM03FT037; 1:Gvhfg8KIB5aNah5eOuxl9T0OEiOOUgwf7F6PDe+hUlNwkBuHjEeT0WtNG6EyYLuAUbXut2grx2JPJUMz2mIyqiLpQtB/f2Y/JL9XXYb/73rWjca3V3lXfjUYa0OWHqK2 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: d69ee84c-5726-4e6a-f172-08d65415e998 X-Microsoft-Antispam: BCL:0; PCL:0; RULEID:(2390098)(7020095)(4652040)(8989299)(5600074)(711020)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(2017052603328)(7153060); SRVR:CY1PR12MB0619; X-Microsoft-Exchange-Diagnostics: 1; CY1PR12MB0619; 3:GA3fApeymJ0m0nBv6ckDm+37zsjG8VvR3jqo9F656MdaJsE9emSN7+dC4FRrSDLW85KvzuII4Ciy02FkI7T+yvpN0rtvD9VZWCX+cebldT+gvjlqPvxnUlYuoO63/wGOMD1lwQ0MsBaDUPLpkNKcm/RVzjj9Kk1bl3exEcD6b37ABcK+GE5ESTpDFk4rWJFqK6Vyc8NXWxwfo7hqcHydauOVKwp0sfg0cbfLj0Iahf1zpSXWoio52HUadYypYdoXdOKoT3pqlg2apV58IzrbOco3MNnUK/qj7TuDtMAh1U5Z3DL8l9YO1CvWSCwsVk5t9xCTA5ajLBjq7YgA02qRRu7vOzJTaNGGV8UAww+q1O0=; 25:CDXpQ24T+Uia0l+H31r1PuYpXo+Klmz+cpdJ9YwHF4zy5KVuPhBszrEcYJhGKGJrrsCOhf253JxPMVyPw5LkSVTOL8yXZeQUJg8qgTVmFYWrFFR3xOrLK26pE+1hJGudIBYjnf+GYnf1c3syLPZ8Bvy1gHSWLoIYSjOzvBnJRQfC3rFKn7O44yFvb9TidkP5FXKYI+BqHEseWHyUi8cTQJlrXzhvqtQm/F7wOhDan4fued+q4ehzy1ARadPrFTN6HCeFtDoPw6H2I0epTNJ4Vlj4npwGB1j05bwGcdODhPbdpPLacVTa5BjozqsE35P/ozrqXmvEdYGHCiuDjueZQQ== X-MS-TrafficTypeDiagnostic: CY1PR12MB0619: X-Microsoft-Exchange-Diagnostics: 1; CY1PR12MB0619; 31:tBZWAdmLUnHdmcsNtQpkzjDlhFc5lvnxnuSW5HXIC6M+JphVwpWTOJgIK6Bb7NIDP144/v7pYS2Zq6l4oSgIs1HXzcw+fJV/bOP3hu0kX8rK0S4mLyroyoWlEWNy53SpL8Uo6n/zCZ9YG/bUalz+l72y7X56PeD0jqyyAiwB6lZ0O3jmJ8MpBId1cbDUtgM0IdB0kdoq1MYGMxfaCruml84bdyt6oOMXfg1TWf7NYx4=; 20:AbgZHv+QTXwU6Fc/s7m2KsQK5w7NfOUuJ1cbj/DlvLxS649UbeAdezN0CkjOPKFBHcil92znLw9PtIPEm52tLl+Zbng0b+2DHHaKL0o2B5bdWSkWDWiUWHSXU1gKdVGW2ShBBi9fnAVYyVTdebNKxzzx47k3EsLo5/DpWmXbGy20ADtrPemjDfInBVqzHHBibXlOAqjcNan6Qj3NvAzmeqZ/bB+7Rki/XQ0VJNiOxydyQb4oomU4/qjdz8GpJgzWbaMc6flJqmg5JmZfZ1/8sQpajTJPjC8IxPDrlczUYfxwnky6AzSkIl/ROQp6tKZrhxbcWaW5G4J1RGHD9wvRqrwaGddHcwq0xiwIzfNIc9FJm8bQvt7h6oItXUdN+YTclj1qFPIZ/U1tg/gSNxuzOecZYyiFSsnVg2WWXFJ0UEQ9E2nstNGRJIE3tlMyp7aCo6XBNDR8yKCIkBgz+UuIWPybTqv9FI5juZOUUxkwHFYs14Pa6sUPUt0YZUWVrrw9 X-Microsoft-Antispam-PRVS: X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3002001)(3231443)(944501410)(52105112)(93006095)(93003095)(10201501046)(6055026)(148016)(149066)(150057)(6041310)(20161123564045)(20161123558120)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(201708071742011)(7699051)(76991095); SRVR:CY1PR12MB0619; BCL:0; PCL:0; RULEID:; SRVR:CY1PR12MB0619; X-Microsoft-Exchange-Diagnostics: 1; CY1PR12MB0619; 4:o2upYUMAq/x9qNzEIFIjGVRfRjR6SKsXugE9g/rWwTs260U52eLEgtI7DthlVP0t464e0CmTKjbcymaFD2wPx5EDTVmD7C0XroxQPosKz2nE9TKFmnvdTa2D70apKEkypm2xg0o/27jfsCFTn5X7Y2J++vKv49btv8hMR8VD/pQT7WUiP/iJ1/12kdw+7d5JA1+atV+M50m39bDyeyXHtiqyF9twRFJlMYV95BWxeNvu5YcjqZEHPrL5ATcdeMsTOWoMNrUJ7avWMyFRkVqSyg== X-Forefront-PRVS: 086943A159 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; CY1PR12MB0619; 23:xctnnWumypTtgokKZ/VK81ZesksscelcjCMrp/Toc?= yxffZWSs0SHl1DTvAowBBZGsZEB/8WGDJwKZdMf0/gR5c1/mwxAWFE3+q1g98BdySEMkxm79s/hzS+VkQQYiUbwuXsEOyUlVgSM0ovCEjP2wf4vJt+2Y40DglP18sdO5EzvAXIH86siL8bLdRTh8kYD7IxgBYJ7pU3eSK0OrI9wIk+2Q7UlBU13O7HdMIPNjpgFIOce+aFKTv12jF/Onqa0SPodJU9OepsH7Ofe3lBL/7ZNkdHRS6x1oTpPNMOhOJEJl9ApebuWbVJeZWrr+Gu0P2owsQnbFxEy0dRG/V8Rw807pX5Fum3Hj4BOsrMboyRtzmR0qSxAeQXTms+TZT0ffbLbZprd4uRThGMiGZ+jdKjqH5gHoeRjwK3ShSaGHbe/1mO0KxQfYblCltYfHrNh9nQz97Yj0zKgh2oKu+/og49FaEVcVwRUc4TP2j1vTXU03xq0NSk/uL+7kyNmYBhie0ogibvVMt4ZFauGFT0O51wVfdwYS1RoCookysydd/Uh8zRVxrDSgno70oxSr0Nfrf/IPNaWrO2tbyJJr8PXVEXK7Gwl2n5sXqKiLJSrxf/tQ8WlS5sT1W07zOJWHDAbZ1f3Dgk1ifaxuh+HXp+9Htc4IXb5IpqbIYFl/jk8zwmk9eB7f18q5jVlvalYM5kOB3CkO/Lb3a3JppvHrQuns98ifYfhtsSdivI5qF/mJzg4JJV0eSvDaTUizZeZUDTp25gLzzK5MayCR6iB0z5kC5RsmHWPlBUVdpv+xRTYduoU19tTQFKRtjBBjUR3WUYFP/6v8gFw5PmbrtYEfZqpIDpOxC/pw29cq4iLO36d7NIdK+YMYGCvroeiigH62dywIzrkILZVsae0XcrVGo3XehEtF3n3o3wmoA7Pz2xdprI5nLvRfLO7CnUrihmBU9wmjawXY7IpJxyqQZSmm3arCovV+vJ+G4E/GHM2LtFNQWTJ2fp/ru00tBK9q9xQVaGmPqCyKHjPL20mwUhiVnSQVfc02Ps//nvRz4zS2yltN88ioyfyP0OQ0R85u1bYPf/71M3z0tnGTOpty9nGaB76tFeSVPDCuC2rD5lauUDJIw9ZSlKmc/Bx4H5PTNvC+pJ0 X-Microsoft-Antispam-Message-Info: dJaz48KE4pxI6RGuVP8XOXcdtJ9MYkpFkAWfLxk8bZ00b0R6ctMWmHDk/1B2t++jZmBuetsYHsQIR4bra29nUA/z8ZkbxRUSoG0ZivnEtf5REVa8+9CAzK+2EIstS1w3+FooNeOh9LFUmkBTNn4RlpcLEZvUyNCSCnAhOmQTyBFpaxDO1HVJYOYiEbyyJtOaOnWE/C/idJVxBeL93DfZDMRF3UrZM7xJ38q4wq5yNJTdsYswGSyCTCDXkxdb5eizs1KPkTnZl5PrW4yuNT7ESA5vgpddb1Jo+tZpsGV4Y5WS3w6U1a9gCXeU8Z5n01ETFLsIWgU9VYblkpukgYdWJo5eAu/e5TV2ZAoZWBmajmE= X-Microsoft-Exchange-Diagnostics: 1; CY1PR12MB0619; 6:2D0w3Z/BKuLiJEIUpquM2Nnzcg9FTwv6rtcttOUNQI/F0A4bOrixgaXw07M6vWsrrz0TUSTIdHd1rJiCcPMeOUi2uJ0PBsSZX3QBt7m2iXRdVlXP9xoPt8RbYYTPsWHASp9vEeCwsVPOfMOWdF0FzJm3P4s/hegg9Pom10VQqi/WXyOICzeiv8LIPlKhZecqvIpe7UJbfdm07n0Kxty9H/TmFSWAaUVQisG4BhEy/jZ3RaZwOedA9/J5JSbizFWrWT+iZRPpkedT6fFL/nLV+EsDRDsBd5tPTD9MD3+2B2jB86qkCT45g6B3+RogejzB6FQ3OLUQHFXoCvQPgNJ6vefAWOUHQHiCTX2PYoSFX1XLwAmvjiJi4mqtvKx+YuiHUFXBN3lQGkcEV6wCQL+wlQYn2rGNgl3UNM0C5ej8ShtZ73dt59dCApr6CEs26I5apuojTF3sBiUTncYoL2hpSQ==; 5:Okak2gW+eLNOw2FCMOir60zsG1KM/THnxFx810/G83PS+ub+FfDkLtmzfiSFTDWqupUKjdC2kC+HIIk83zmVes/uuvOY9bBZYQSyXIG0Hh20RyOQJm7YNiHZiJKdpC0C1V65oG+E/TsiwLR4rhlKiSFX5WPIYOG0OQzvOmhdMpQ=; 7:eHO7DDrs5T6Wa3cAc1/JSHqyQi/TZvzHygSxsdUnhbe4ORJXasIQMMSPsYNhzQzGzrDztCMtKfoKLAEa61IsQfxIwQ+9QNyOaE035RB/Gy9WEaWg2XbHec4PjgoVg3G85kVMLGoIAoSgmHgJ7zLJRQ== SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; CY1PR12MB0619; 20:HOZFfLA+ZZwPhktzDMvsVX6/Xx1TVJrDNsU2SnoEryC+bLQd27/xVjcvUig6uTllwSW37YWGFmxbn18h8x+kOxZmsQUy7ZGWyPm/NI0WjsgJe/iYlrpzkY6JanjygPgBLfBe6hXvRcXr8zGWKu1zEax/xsk2F+QHQoSc/4Kt8ThE3AMuZTqe66kLcpNLefIkO+bLMiBTyCtWEwnovdip1xlTVQvahk5IVaHQbCzWzOE/TNQU4xvfpxbD4blY5AQL X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Nov 2018 03:10:40.7633 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: d69ee84c-5726-4e6a-f172-08d65415e998 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: CY1PR12MB0619 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: Monk Liu Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" X-Virus-Scanned: ClamAV using ClamSMTP v2: amend description: for RB tree traveler we don't need to travel to the bottom level if already found the equal size node, thus the search performance can get improved. v3: split "<=" to "<" case and "==" case Tested-by: Rex Zhu Signed-off-by: Monk Liu --- drivers/gpu/drm/drm_mm.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/drm_mm.c b/drivers/gpu/drm/drm_mm.c index 3cc5fbd..c966610 100644 --- a/drivers/gpu/drm/drm_mm.c +++ b/drivers/gpu/drm/drm_mm.c @@ -315,9 +315,11 @@ static struct drm_mm_node *best_hole(struct drm_mm *mm, u64 size) struct drm_mm_node *node = rb_entry(rb, struct drm_mm_node, rb_hole_size); - if (size <= node->hole_size) { + if (size < node->hole_size) { best = node; rb = rb->rb_right; + } else if (size == node->hole_size) { + return node; } else { rb = rb->rb_left; }