From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-13.8 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 35903C47082 for ; Tue, 8 Jun 2021 10:14:30 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id E8C2261185 for ; Tue, 8 Jun 2021 10:14:29 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org E8C2261185 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=linux.intel.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=intel-gfx-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 8580B6EBA4; Tue, 8 Jun 2021 10:14:29 +0000 (UTC) Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by gabe.freedesktop.org (Postfix) with ESMTPS id 40B6E6EBA3; Tue, 8 Jun 2021 10:14:28 +0000 (UTC) IronPort-SDR: IA3p/xn+7u+u85zKGDUOfAhG+QiWGO2pSAX2x8ma7wTSt3eDnAbylq1pbHzwWHKkKQZLL74NAT Z5opBW79MBhg== X-IronPort-AV: E=McAfee;i="6200,9189,10008"; a="191923706" X-IronPort-AV: E=Sophos;i="5.83,257,1616482800"; d="scan'208";a="191923706" Received: from orsmga002.jf.intel.com ([10.7.209.21]) by orsmga101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 08 Jun 2021 03:14:14 -0700 IronPort-SDR: MumC4M/Rq+BplrmJKAM9a1WWQMvndxpmWwbeVdIye9oYv5/R8hFscKI+xrZJDJOs44SFd8kfEl o0yIz9T8dckA== X-IronPort-AV: E=Sophos;i="5.83,257,1616482800"; d="scan'208";a="418848559" Received: from mkayyal-mobl.ger.corp.intel.com (HELO [10.249.254.115]) ([10.249.254.115]) by orsmga002-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 08 Jun 2021 03:14:13 -0700 Message-ID: <5ff9b7296d0c98149b4c265f9b2549eea9bec345.camel@linux.intel.com> From: Thomas =?ISO-8859-1?Q?Hellstr=F6m?= To: Matthew Auld , intel-gfx@lists.freedesktop.org Date: Tue, 08 Jun 2021 12:14:11 +0200 In-Reply-To: References: <20210608084428.142676-1-matthew.auld@intel.com> <20210608084428.142676-6-matthew.auld@intel.com> <8e8a5115-730e-c892-a241-c69a5662b2c7@linux.intel.com> User-Agent: Evolution 3.40.1 (3.40.1-1.fc34) MIME-Version: 1.0 Subject: Re: [Intel-gfx] [PATCH v2 5/6] drm/i915/ttm: switch over to ttm_buddy_man X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: dri-devel@lists.freedesktop.org Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" T24gVHVlLCAyMDIxLTA2LTA4IGF0IDExOjA4ICswMTAwLCBNYXR0aGV3IEF1bGQgd3JvdGU6Cj4g T24gMDgvMDYvMjAyMSAxMDo1MywgVGhvbWFzIEhlbGxzdHLDtm0gd3JvdGU6Cj4gPiAKPiA+IE9u IDYvOC8yMSAxMDo0NCBBTSwgTWF0dGhldyBBdWxkIHdyb3RlOgo+ID4gPiBNb3ZlIGJhY2sgdG8g dGhlIGJ1ZGR5IGFsbG9jYXRvciBmb3IgbWFuYWdpbmcgZGV2aWNlIGxvY2FsCj4gPiA+IG1lbW9y eSwgYW5kCj4gPiA+IHJlc3RvcmUgdGhlIGxvc3QgbW9jayBzZWxmdGVzdHMuIEtlZXAgYXJvdW5k IHRoZSByYW5nZSBtYW5hZ2VyCj4gPiA+IHJlbGF0ZWQKPiA+ID4gYml0cywgc2luY2Ugd2UgbGlr ZWx5IG5lZWQgdGhpcyBmb3IgbWFuYWdpbmcgc3RvbGVuIGF0IHNvbWUKPiA+ID4gcG9pbnQuIEZv cgo+ID4gPiBzdG9sZW4gd2UgYWxzbyBkb24ndCBuZWVkIHRvIHJlc2VydmUgYW55dGhpbmcgc28g bm8gbmVlZCB0bwo+ID4gPiBzdXBwb3J0IGEKPiA+ID4gZ2VuZXJpYyByZXNlcnZlIGludGVyZmFj ZS4KPiA+ID4gCj4gPiA+IHYyKFRob21hcyk6Cj4gPiA+IMKgwqDCoMKgIC0gYm8tPnBhZ2VfYWxp Z25tZW50IGlzIGluIHBhZ2UgdW5pdHMsIG5vdCBieXRlcwo+ID4gPiAKPiA+ID4gU2lnbmVkLW9m Zi1ieTogTWF0dGhldyBBdWxkIDxtYXR0aGV3LmF1bGRAaW50ZWwuY29tPgo+ID4gPiBDYzogVGhv bWFzIEhlbGxzdHLDtm0gPHRob21hcy5oZWxsc3Ryb21AbGludXguaW50ZWwuY29tPgo+ID4gPiBS ZXZpZXdlZC1ieTogVGhvbWFzIEhlbGxzdHLDtm0gPHRob21hcy5oZWxsc3Ryb21AbGludXguaW50 ZWwuY29tPgo+ID4gPiAtLS0KPiA+ID4gwqAgZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVf Z2VtX3R0bS5jwqDCoMKgwqDCoMKgIHzCoCAyNiArLS0KPiA+ID4gwqAgZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfbWVtb3J5X3JlZ2lvbi5jwqDCoMKgIHzCoCA1NSArLS0tLS0KPiA+ID4gwqAg ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbWVtb3J5X3JlZ2lvbi5owqDCoMKgIHzCoCAxNyAt LQo+ID4gPiDCoCBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yZWdpb25fdHRtLmPCoMKgwqDC oMKgwqAgfCAxMDAgKysrLS0tLS0tLS0KPiA+ID4gwqAgLi4uL2RybS9pOTE1L3NlbGZ0ZXN0cy9p bnRlbF9tZW1vcnlfcmVnaW9uLmPCoCB8IDE3MAo+ID4gPiArKysrKysrKysrKystLS0tLS0KPiA+ ID4gwqAgZHJpdmVycy9ncHUvZHJtL2k5MTUvc2VsZnRlc3RzL21vY2tfcmVnaW9uLmPCoCB8wqAg MTUgKy0KPiA+ID4gwqAgNiBmaWxlcyBjaGFuZ2VkLCAxNjggaW5zZXJ0aW9ucygrKSwgMjE1IGRl bGV0aW9ucygtKQo+ID4gPiAKPiA+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2dlbS9pOTE1X2dlbV90dG0uYyAKPiA+ID4gYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9nZW0vaTkx NV9nZW1fdHRtLmMKPiA+ID4gaW5kZXggYzYxMjI3NWMzNmM5Li41YmYxZDE5NDVkZDYgMTAwNjQ0 Cj4gPiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2dlbS9pOTE1X2dlbV90dG0uYwo+ID4g PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9nZW0vaTkxNV9nZW1fdHRtLmMKPiA+ID4gQEAg LTE4MSwxMSArMTgxLDcgQEAgc3RhdGljIGJvb2wKPiA+ID4gaTkxNV90dG1fZXZpY3Rpb25fdmFs dWFibGUoc3RydWN0IAo+ID4gPiB0dG1fYnVmZmVyX29iamVjdCAqYm8sCj4gPiA+IMKgwqDCoMKg wqAgc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaiA9IGk5MTVfdHRtX3RvX2dlbShibyk7 Cj4gPiA+IMKgwqDCoMKgwqAgLyogV2lsbCBkbyBmb3Igbm93LiBPdXIgcGlubmVkIG9iamVjdHMg YXJlIHN0aWxsIG9uIFRUTSdzCj4gPiA+IExSVSAKPiA+ID4gbGlzdHMgKi8KPiA+ID4gLcKgwqDC oCBpZiAoIWk5MTVfZ2VtX29iamVjdF9ldmljdGFibGUob2JqKSkKPiA+ID4gLcKgwqDCoMKgwqDC oMKgIHJldHVybiBmYWxzZTsKPiA+ID4gLQo+ID4gPiAtwqDCoMKgIC8qIFRoaXMgaXNuJ3QgdmFs aWQgd2l0aCBhIGJ1ZGR5IGFsbG9jYXRvciAqLwo+ID4gPiAtwqDCoMKgIHJldHVybiB0dG1fYm9f ZXZpY3Rpb25fdmFsdWFibGUoYm8sIHBsYWNlKTsKPiA+ID4gK8KgwqDCoCByZXR1cm4gaTkxNV9n ZW1fb2JqZWN0X2V2aWN0YWJsZShvYmopOwo+ID4gPiDCoCB9Cj4gPiA+IMKgIHN0YXRpYyB2b2lk IGk5MTVfdHRtX2V2aWN0X2ZsYWdzKHN0cnVjdCB0dG1fYnVmZmVyX29iamVjdCAqYm8sCj4gPiA+ IEBAIC0zMjgsMTEgKzMyNCwxNSBAQCBpOTE1X3R0bV9yZXNvdXJjZV9nZXRfc3Qoc3RydWN0IAo+ ID4gPiBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmosCj4gPiA+IMKgwqDCoMKgwqAgc3RydWN0IHR0 bV9idWZmZXJfb2JqZWN0ICpibyA9IGk5MTVfZ2VtX3RvX3R0bShvYmopOwo+ID4gPiDCoMKgwqDC oMKgIHN0cnVjdCB0dG1fcmVzb3VyY2VfbWFuYWdlciAqbWFuID0KPiA+ID4gwqDCoMKgwqDCoMKg wqDCoMKgIHR0bV9tYW5hZ2VyX3R5cGUoYm8tPmJkZXYsIHJlcy0+bWVtX3R5cGUpOwo+ID4gPiAr wqDCoMKgIHN0cnVjdCBpbnRlbF9tZW1vcnlfcmVnaW9uICptciA9IG9iai0+bW0ucmVnaW9uOwo+ ID4gPiDCoMKgwqDCoMKgIGlmIChtYW4tPnVzZV90dCkKPiA+ID4gwqDCoMKgwqDCoMKgwqDCoMKg IHJldHVybiBpOTE1X3R0bV90dF9nZXRfc3QoYm8tPnR0bSk7Cj4gPiA+IC3CoMKgwqAgcmV0dXJu IGludGVsX3JlZ2lvbl90dG1fbm9kZV90b19zdChvYmotPm1tLnJlZ2lvbiwgcmVzLQo+ID4gPiA+ bW1fbm9kZSk7Cj4gPiA+ICvCoMKgwqAgaWYgKG1yLT5pc19yYW5nZV9tYW5hZ2VyKQo+ID4gCj4g PiBEaWQgeW91IGxvb2sgYXQgbW92aW5nIHRoaXMgdGVzdCBpbnRvCj4gPiBpbnRlbF9yZWdpb25f dHRtX25vZGVfdG9fc3QoKSkKPiAKPiBJIGd1ZXNzIEkgZGlkbid0IGxpa2UgdGhlIF9ub2RlIHNp bmNlIHRoYXQgc2VlbXMgdG8gc3VnZ2VzdAo+IGRybV9tbV9ub2RlIAo+IHRvIG1lLgo+IAo+IFdo YXQgYWJvdXQgc29tZXRoaW5nIGxpa2U6Cj4gaTkxNV90dG1fcmVzb3VyY2VfdG9fc3QocmVzLCBt cikKPiBpbnRlbF9yZWdpb25fdHRtX3Jlc291cmNlX3RvX3N0KG1yLCByZXMpCgppbnRlbF9yZWdp b25fdHRtX3Jlc291cmNlX3RvX3N0KCkgd291bGQgYmUgbmljZSBJIHRoaW5rLiBJIHRoaW5rIGl0 CndvdWxkIGJlIG5pY2UgaWYgdGhlIHJlZ2lvbiB0dG0gY29kZSBjb3VsZCBoaWRlIHRoZSBtYW5h Z2VyIHNlbGVjdGlvbi4KCi9UaG9tYXMKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5m cmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0 aW5mby9pbnRlbC1nZngK From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-13.8 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 7BABBC47082 for ; Tue, 8 Jun 2021 10:14:33 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 17F32610C7 for ; Tue, 8 Jun 2021 10:14:32 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 17F32610C7 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=linux.intel.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id EBAFE6EBA3; Tue, 8 Jun 2021 10:14:29 +0000 (UTC) Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by gabe.freedesktop.org (Postfix) with ESMTPS id 40B6E6EBA3; Tue, 8 Jun 2021 10:14:28 +0000 (UTC) IronPort-SDR: IA3p/xn+7u+u85zKGDUOfAhG+QiWGO2pSAX2x8ma7wTSt3eDnAbylq1pbHzwWHKkKQZLL74NAT Z5opBW79MBhg== X-IronPort-AV: E=McAfee;i="6200,9189,10008"; a="191923706" X-IronPort-AV: E=Sophos;i="5.83,257,1616482800"; d="scan'208";a="191923706" Received: from orsmga002.jf.intel.com ([10.7.209.21]) by orsmga101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 08 Jun 2021 03:14:14 -0700 IronPort-SDR: MumC4M/Rq+BplrmJKAM9a1WWQMvndxpmWwbeVdIye9oYv5/R8hFscKI+xrZJDJOs44SFd8kfEl o0yIz9T8dckA== X-IronPort-AV: E=Sophos;i="5.83,257,1616482800"; d="scan'208";a="418848559" Received: from mkayyal-mobl.ger.corp.intel.com (HELO [10.249.254.115]) ([10.249.254.115]) by orsmga002-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 08 Jun 2021 03:14:13 -0700 Message-ID: <5ff9b7296d0c98149b4c265f9b2549eea9bec345.camel@linux.intel.com> Subject: Re: [PATCH v2 5/6] drm/i915/ttm: switch over to ttm_buddy_man From: Thomas =?ISO-8859-1?Q?Hellstr=F6m?= To: Matthew Auld , intel-gfx@lists.freedesktop.org Date: Tue, 08 Jun 2021 12:14:11 +0200 In-Reply-To: References: <20210608084428.142676-1-matthew.auld@intel.com> <20210608084428.142676-6-matthew.auld@intel.com> <8e8a5115-730e-c892-a241-c69a5662b2c7@linux.intel.com> Content-Type: text/plain; charset="UTF-8" User-Agent: Evolution 3.40.1 (3.40.1-1.fc34) MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: dri-devel@lists.freedesktop.org Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" On Tue, 2021-06-08 at 11:08 +0100, Matthew Auld wrote: > On 08/06/2021 10:53, Thomas Hellström wrote: > > > > On 6/8/21 10:44 AM, Matthew Auld wrote: > > > Move back to the buddy allocator for managing device local > > > memory, and > > > restore the lost mock selftests. Keep around the range manager > > > related > > > bits, since we likely need this for managing stolen at some > > > point. For > > > stolen we also don't need to reserve anything so no need to > > > support a > > > generic reserve interface. > > > > > > v2(Thomas): > > >      - bo->page_alignment is in page units, not bytes > > > > > > Signed-off-by: Matthew Auld > > > Cc: Thomas Hellström > > > Reviewed-by: Thomas Hellström > > > --- > > >   drivers/gpu/drm/i915/gem/i915_gem_ttm.c       |  26 +-- > > >   drivers/gpu/drm/i915/intel_memory_region.c    |  55 +----- > > >   drivers/gpu/drm/i915/intel_memory_region.h    |  17 -- > > >   drivers/gpu/drm/i915/intel_region_ttm.c       | 100 +++-------- > > >   .../drm/i915/selftests/intel_memory_region.c  | 170 > > > ++++++++++++------ > > >   drivers/gpu/drm/i915/selftests/mock_region.c  |  15 +- > > >   6 files changed, 168 insertions(+), 215 deletions(-) > > > > > > diff --git a/drivers/gpu/drm/i915/gem/i915_gem_ttm.c > > > b/drivers/gpu/drm/i915/gem/i915_gem_ttm.c > > > index c612275c36c9..5bf1d1945dd6 100644 > > > --- a/drivers/gpu/drm/i915/gem/i915_gem_ttm.c > > > +++ b/drivers/gpu/drm/i915/gem/i915_gem_ttm.c > > > @@ -181,11 +181,7 @@ static bool > > > i915_ttm_eviction_valuable(struct > > > ttm_buffer_object *bo, > > >       struct drm_i915_gem_object *obj = i915_ttm_to_gem(bo); > > >       /* Will do for now. Our pinned objects are still on TTM's > > > LRU > > > lists */ > > > -    if (!i915_gem_object_evictable(obj)) > > > -        return false; > > > - > > > -    /* This isn't valid with a buddy allocator */ > > > -    return ttm_bo_eviction_valuable(bo, place); > > > +    return i915_gem_object_evictable(obj); > > >   } > > >   static void i915_ttm_evict_flags(struct ttm_buffer_object *bo, > > > @@ -328,11 +324,15 @@ i915_ttm_resource_get_st(struct > > > drm_i915_gem_object *obj, > > >       struct ttm_buffer_object *bo = i915_gem_to_ttm(obj); > > >       struct ttm_resource_manager *man = > > >           ttm_manager_type(bo->bdev, res->mem_type); > > > +    struct intel_memory_region *mr = obj->mm.region; > > >       if (man->use_tt) > > >           return i915_ttm_tt_get_st(bo->ttm); > > > -    return intel_region_ttm_node_to_st(obj->mm.region, res- > > > >mm_node); > > > +    if (mr->is_range_manager) > > > > Did you look at moving this test into > > intel_region_ttm_node_to_st()) > > I guess I didn't like the _node since that seems to suggest > drm_mm_node > to me. > > What about something like: > i915_ttm_resource_to_st(res, mr) > intel_region_ttm_resource_to_st(mr, res) intel_region_ttm_resource_to_st() would be nice I think. I think it would be nice if the region ttm code could hide the manager selection. /Thomas