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=-16.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,USER_AGENT_GIT 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 4CF49C47080 for ; Mon, 31 May 2021 17:23:17 +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 19E44610A8 for ; Mon, 31 May 2021 17:23:17 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 19E44610A8 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 C5FF36E97A; Mon, 31 May 2021 17:23:01 +0000 (UTC) Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by gabe.freedesktop.org (Postfix) with ESMTPS id 801036E95C; Mon, 31 May 2021 17:22:56 +0000 (UTC) IronPort-SDR: T6fTRuAimMO+dce4NqPqKSrjarPgfMm3vd48M6WnKxYXkTle5LI5yWL2LABfKlqLdPgPjzWAlC JKbX3mD1KYfg== X-IronPort-AV: E=McAfee;i="6200,9189,10001"; a="201520229" X-IronPort-AV: E=Sophos;i="5.83,237,1616482800"; d="scan'208";a="201520229" Received: from orsmga002.jf.intel.com ([10.7.209.21]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 31 May 2021 10:22:56 -0700 IronPort-SDR: 77FaokHJXGsviljTvhS8sP4EVc51728UoTLbj7/4wUd5DnqR1g00ciurS69KJGzNgkRP+oENW0 th4V7alqApzg== X-IronPort-AV: E=Sophos;i="5.83,237,1616482800"; d="scan'208";a="416211022" Received: from fnygreen-mobl1.ger.corp.intel.com (HELO thellst-mobl1.intel.com) ([10.249.254.142]) by orsmga002-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 31 May 2021 10:22:54 -0700 From: =?UTF-8?q?Thomas=20Hellstr=C3=B6m?= To: intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org Date: Mon, 31 May 2021 19:22:23 +0200 Message-Id: <20210531172228.70846-11-thomas.hellstrom@linux.intel.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210531172228.70846-1-thomas.hellstrom@linux.intel.com> References: <20210531172228.70846-1-thomas.hellstrom@linux.intel.com> MIME-Version: 1.0 Subject: [Intel-gfx] [PATCH v8 10/15] drm/ttm, drm/amdgpu: Allow the driver some control over swapping 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: =?UTF-8?q?Thomas=20Hellstr=C3=B6m?= , =?UTF-8?q?Christian=20K=C3=B6nig?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" V2UgYXJlIGNhbGxpbmcgdGhlIGV2aWN0aW9uX3ZhbHVhYmxlIGRyaXZlciBjYWxsYmFjayBhdCBl dmljdGlvbiB0aW1lIHRvCmRldGVybWluZSB3aGV0aGVyIHdlIGFjdHVhbGx5IGNhbiBldmljdCBh IGJ1ZmZlciBvYmplY3QuClRoZSB1cGNvbWluZyBpOTE1IFRUTSBiYWNrZW5kIG5lZWRzIHRoZSBz YW1lIGZ1bmN0aW9uYWxpdHkgZm9yIHN3YXBvdXQsCmFuZCB0aGF0IG1pZ2h0IGFjdHVhbGx5IGJl IGJlbmVmaWNpYWwgdG8gb3RoZXIgZHJpdmVycyBhcyB3ZWxsLgoKQWRkIGFuIGV2aWN0aW9uX3Zh bHVhYmxlIGNhbGwgYWxzbyBpbiB0aGUgc3dhcG91dCBwYXRoLiBUcnkgdG8ga2VlcCB0aGUKY3Vy cmVudCBiZWhhdmlvdXIgZm9yIGFsbCBkcml2ZXJzIGJ5IHJldHVybmluZyB0cnVlIGlmIHRoZSBi dWZmZXIgb2JqZWN0CmlzIGFscmVhZHkgaW4gdGhlIFRUTV9QTF9TWVNURU0gcGxhY2VtZW50LiBX ZSBjaGFuZ2UgYmVoYXZpb3VyIGZvciB0aGUKY2FzZSB3aGVyZSBhIGJ1ZmZlciBvYmplY3QgaXMg aW4gYSBUVCBiYWNrZWQgcGxhY2VtZW50IHdoZW4gc3dhcHBlZCBvdXQsCmluIHdoaWNoIGNhc2Ug dGhlIGRyaXZlcnMgbm9ybWFsIGV2aWN0aW9uX3ZhbHVhYmxlIHBhdGggaXMgcnVuLgoKUmV2aWV3 ZWQtYnk6IE1hYXJ0ZW4gTGFua2hvcnN0IDxtYWFydGVuLmxhbmtob3JzdEBsaW51eC5pbnRlbC5j b20+CkNjOiBDaHJpc3RpYW4gS8O2bmlnIDxjaHJpc3RpYW4ua29lbmlnQGFtZC5jb20+ClNpZ25l ZC1vZmYtYnk6IFRob21hcyBIZWxsc3Ryw7ZtIDx0aG9tYXMuaGVsbHN0cm9tQGxpbnV4LmludGVs LmNvbT4KQWNrZWQtYnk6IENocmlzdGlhbiBLw7ZuaWcgPGNocmlzdGlhbi5rb2VuaWdAYW1kLmNv bT4KLS0tCnYzOgotIERvbid0IGV4cG9ydCB0dG1fdHRfdW5wb3B1bGF0ZQotIEZpeCBjb25mdXNp b24gcmVhZGluZyB0aGUgbG9ja2VkIHBvaW50ZXIgaW5zdGVhZCBvZiB0aGUgdmFsdWUKICBwb2lu dGVkIHRvIGluIHR0bV9ib19ldmljdF9zd2Fwb3V0X2FsbG93YWJsZSAoUmVwb3J0ZWQgYnkKICBN YWFydGVuIExhbmtob3JzdCkKdjU6Ci0gVXNlIG1lbXNldCgpIHJhdGhlciB0aGFuID0ge30gKFN1 Z2dlc3RlZCBieSBDaHJpc3RpYW4gS8O2bmlnKQotIFJlbW92ZSBjaGVjayBmb3IgdHRtX3R0X2lz X3BvcHVsYXRlZCBpbiB0aGUgc3dhcG91dCBjb2RlIGluIHRoZSBob3BlCiAgaXQgd2lsbCBiZSBm aXhlZCBlbHNld2hlcmUgKFN1Z2dlc3RlZCBieSBDaHJpc3RpYW4gS8O2bmlnKQp2NzoKLSBSZS1h ZGQgdGhlIGNoZWNrIGZvciB0dG1fdHRfaXNfcG9wdWxhdGVkIGluIHRoZSBzd2Fwb3V0IGNvZGUu Ci0tLQogZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3R0bS5jIHwgIDQgKysrCiBk cml2ZXJzL2dwdS9kcm0vdHRtL3R0bV9iby5jICAgICAgICAgICAgfCA0NiArKysrKysrKysrKysr KysrLS0tLS0tLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDM0IGluc2VydGlvbnMoKyksIDE2IGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV90 dG0uYyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV90dG0uYwppbmRleCA4MDQz N2I2YmE1ZjMuLjUxMTYwNjU3NDhhNSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9h bWRncHUvYW1kZ3B1X3R0bS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdw dV90dG0uYwpAQCAtMTMyOCw2ICsxMzI4LDEwIEBAIHN0YXRpYyBib29sIGFtZGdwdV90dG1fYm9f ZXZpY3Rpb25fdmFsdWFibGUoc3RydWN0IHR0bV9idWZmZXJfb2JqZWN0ICpibywKIAlzdHJ1Y3Qg ZG1hX2ZlbmNlICpmOwogCWludCBpOwogCisJLyogU3dhcG91dD8gKi8KKwlpZiAoYm8tPm1lbS5t ZW1fdHlwZSA9PSBUVE1fUExfU1lTVEVNKQorCQlyZXR1cm4gdHJ1ZTsKKwogCWlmIChiby0+dHlw ZSA9PSB0dG1fYm9fdHlwZV9rZXJuZWwgJiYKIAkgICAgIWFtZGdwdV92bV9ldmljdGFibGUodHRt X3RvX2FtZGdwdV9ibyhibykpKQogCQlyZXR1cm4gZmFsc2U7CmRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vdHRtL3R0bV9iby5jIGIvZHJpdmVycy9ncHUvZHJtL3R0bS90dG1fYm8uYwppbmRl eCBiZTA0MDY0NjY0NjAuLjk4YzQxYmY2YTA3ZCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJt L3R0bS90dG1fYm8uYworKysgYi9kcml2ZXJzL2dwdS9kcm0vdHRtL3R0bV9iby5jCkBAIC01MzYs NiArNTM2LDEwIEBAIHN0YXRpYyBpbnQgdHRtX2JvX2V2aWN0KHN0cnVjdCB0dG1fYnVmZmVyX29i amVjdCAqYm8sCiBib29sIHR0bV9ib19ldmljdGlvbl92YWx1YWJsZShzdHJ1Y3QgdHRtX2J1ZmZl cl9vYmplY3QgKmJvLAogCQkJICAgICAgY29uc3Qgc3RydWN0IHR0bV9wbGFjZSAqcGxhY2UpCiB7 CisJZG1hX3Jlc3ZfYXNzZXJ0X2hlbGQoYm8tPmJhc2UucmVzdik7CisJaWYgKGJvLT5tZW0ubWVt X3R5cGUgPT0gVFRNX1BMX1NZU1RFTSkKKwkJcmV0dXJuIHRydWU7CisKIAkvKiBEb24ndCBldmlj dCB0aGlzIEJPIGlmIGl0J3Mgb3V0c2lkZSBvZiB0aGUKIAkgKiByZXF1ZXN0ZWQgcGxhY2VtZW50 IHJhbmdlCiAJICovCkBAIC01NTgsNyArNTYyLDkgQEAgRVhQT1JUX1NZTUJPTCh0dG1fYm9fZXZp Y3Rpb25fdmFsdWFibGUpOwogICogYi4gT3RoZXJ3aXNlLCB0cnlsb2NrIGl0LgogICovCiBzdGF0 aWMgYm9vbCB0dG1fYm9fZXZpY3Rfc3dhcG91dF9hbGxvd2FibGUoc3RydWN0IHR0bV9idWZmZXJf b2JqZWN0ICpibywKLQkJCXN0cnVjdCB0dG1fb3BlcmF0aW9uX2N0eCAqY3R4LCBib29sICpsb2Nr ZWQsIGJvb2wgKmJ1c3kpCisJCQkJCSAgIHN0cnVjdCB0dG1fb3BlcmF0aW9uX2N0eCAqY3R4LAor CQkJCQkgICBjb25zdCBzdHJ1Y3QgdHRtX3BsYWNlICpwbGFjZSwKKwkJCQkJICAgYm9vbCAqbG9j a2VkLCBib29sICpidXN5KQogewogCWJvb2wgcmV0ID0gZmFsc2U7CiAKQEAgLTU3Niw2ICs1ODIs MTQgQEAgc3RhdGljIGJvb2wgdHRtX2JvX2V2aWN0X3N3YXBvdXRfYWxsb3dhYmxlKHN0cnVjdCB0 dG1fYnVmZmVyX29iamVjdCAqYm8sCiAJCQkqYnVzeSA9ICFyZXQ7CiAJfQogCisJaWYgKHJldCAm JiBwbGFjZSAmJiAhYm8tPmJkZXYtPmZ1bmNzLT5ldmljdGlvbl92YWx1YWJsZShibywgcGxhY2Up KSB7CisJCXJldCA9IGZhbHNlOworCQlpZiAoKmxvY2tlZCkgeworCQkJZG1hX3Jlc3ZfdW5sb2Nr KGJvLT5iYXNlLnJlc3YpOworCQkJKmxvY2tlZCA9IGZhbHNlOworCQl9CisJfQorCiAJcmV0dXJu IHJldDsKIH0KIApAQCAtNjMwLDIwICs2NDQsMTQgQEAgaW50IHR0bV9tZW1fZXZpY3RfZmlyc3Qo c3RydWN0IHR0bV9kZXZpY2UgKmJkZXYsCiAJCWxpc3RfZm9yX2VhY2hfZW50cnkoYm8sICZtYW4t PmxydVtpXSwgbHJ1KSB7CiAJCQlib29sIGJ1c3k7CiAKLQkJCWlmICghdHRtX2JvX2V2aWN0X3N3 YXBvdXRfYWxsb3dhYmxlKGJvLCBjdHgsICZsb2NrZWQsCi0JCQkJCQkJICAgICZidXN5KSkgewor CQkJaWYgKCF0dG1fYm9fZXZpY3Rfc3dhcG91dF9hbGxvd2FibGUoYm8sIGN0eCwgcGxhY2UsCisJ CQkJCQkJICAgICZsb2NrZWQsICZidXN5KSkgewogCQkJCWlmIChidXN5ICYmICFidXN5X2JvICYm IHRpY2tldCAhPQogCQkJCSAgICBkbWFfcmVzdl9sb2NraW5nX2N0eChiby0+YmFzZS5yZXN2KSkK IAkJCQkJYnVzeV9ibyA9IGJvOwogCQkJCWNvbnRpbnVlOwogCQkJfQogCi0JCQlpZiAocGxhY2Ug JiYgIWJkZXYtPmZ1bmNzLT5ldmljdGlvbl92YWx1YWJsZShibywKLQkJCQkJCQkJICAgICAgcGxh Y2UpKSB7Ci0JCQkJaWYgKGxvY2tlZCkKLQkJCQkJZG1hX3Jlc3ZfdW5sb2NrKGJvLT5iYXNlLnJl c3YpOwotCQkJCWNvbnRpbnVlOwotCQkJfQogCQkJaWYgKCF0dG1fYm9fZ2V0X3VubGVzc196ZXJv KGJvKSkgewogCQkJCWlmIChsb2NrZWQpCiAJCQkJCWRtYV9yZXN2X3VubG9jayhiby0+YmFzZS5y ZXN2KTsKQEAgLTExNDAsMTAgKzExNDgsMTkgQEAgRVhQT1JUX1NZTUJPTCh0dG1fYm9fd2FpdCk7 CiBpbnQgdHRtX2JvX3N3YXBvdXQoc3RydWN0IHR0bV9idWZmZXJfb2JqZWN0ICpibywgc3RydWN0 IHR0bV9vcGVyYXRpb25fY3R4ICpjdHgsCiAJCSAgIGdmcF90IGdmcF9mbGFncykKIHsKKwlzdHJ1 Y3QgdHRtX3BsYWNlIHBsYWNlOwogCWJvb2wgbG9ja2VkOwogCWludCByZXQ7CiAKLQlpZiAoIXR0 bV9ib19ldmljdF9zd2Fwb3V0X2FsbG93YWJsZShibywgY3R4LCAmbG9ja2VkLCBOVUxMKSkKKwkv KgorCSAqIFdoaWxlIHRoZSBibyBtYXkgYWxyZWFkeSByZXNpZGUgaW4gU1lTVEVNIHBsYWNlbWVu dCwgc2V0CisJICogU1lTVEVNIGFzIG5ldyBwbGFjZW1lbnQgdG8gY292ZXIgYWxzbyB0aGUgbW92 ZSBmdXJ0aGVyIGJlbG93LgorCSAqIFRoZSBkcml2ZXIgbWF5IHVzZSB0aGUgZmFjdCB0aGF0IHdl J3JlIG1vdmluZyBmcm9tIFNZU1RFTQorCSAqIGFzIGFuIGluZGljYXRpb24gdGhhdCB3ZSdyZSBh Ym91dCB0byBzd2FwIG91dC4KKwkgKi8KKwltZW1zZXQoJnBsYWNlLCAwLCBzaXplb2YocGxhY2Up KTsKKwlwbGFjZS5tZW1fdHlwZSA9IFRUTV9QTF9TWVNURU07CisJaWYgKCF0dG1fYm9fZXZpY3Rf c3dhcG91dF9hbGxvd2FibGUoYm8sIGN0eCwgJnBsYWNlLCAmbG9ja2VkLCBOVUxMKSkKIAkJcmV0 dXJuIC1FQlVTWTsKIAogCWlmICghdHRtX2JvX2dldF91bmxlc3NfemVybyhibykpIHsKQEAgLTEx NjgsMTMgKzExODUsOSBAQCBpbnQgdHRtX2JvX3N3YXBvdXQoc3RydWN0IHR0bV9idWZmZXJfb2Jq ZWN0ICpibywgc3RydWN0IHR0bV9vcGVyYXRpb25fY3R4ICpjdHgsCiAJaWYgKGJvLT5tZW0ubWVt X3R5cGUgIT0gVFRNX1BMX1NZU1RFTSkgewogCQlzdHJ1Y3QgdHRtX29wZXJhdGlvbl9jdHggY3R4 ID0geyBmYWxzZSwgZmFsc2UgfTsKIAkJc3RydWN0IHR0bV9yZXNvdXJjZSBldmljdF9tZW07Ci0J CXN0cnVjdCB0dG1fcGxhY2UgcGxhY2UsIGhvcDsKKwkJc3RydWN0IHR0bV9wbGFjZSBob3A7CiAK LQkJbWVtc2V0KCZwbGFjZSwgMCwgc2l6ZW9mKHBsYWNlKSk7CiAJCW1lbXNldCgmaG9wLCAwLCBz aXplb2YoaG9wKSk7Ci0KLQkJcGxhY2UubWVtX3R5cGUgPSBUVE1fUExfU1lTVEVNOwotCiAJCXJl dCA9IHR0bV9yZXNvdXJjZV9hbGxvYyhibywgJnBsYWNlLCAmZXZpY3RfbWVtKTsKIAkJaWYgKHVu bGlrZWx5KHJldCkpCiAJCQlnb3RvIG91dDsKQEAgLTEyMDIsNyArMTIxNSw4IEBAIGludCB0dG1f Ym9fc3dhcG91dChzdHJ1Y3QgdHRtX2J1ZmZlcl9vYmplY3QgKmJvLCBzdHJ1Y3QgdHRtX29wZXJh dGlvbl9jdHggKmN0eCwKIAlpZiAoYm8tPmJkZXYtPmZ1bmNzLT5zd2FwX25vdGlmeSkKIAkJYm8t PmJkZXYtPmZ1bmNzLT5zd2FwX25vdGlmeShibyk7CiAKLQlyZXQgPSB0dG1fdHRfc3dhcG91dChi by0+YmRldiwgYm8tPnR0bSwgZ2ZwX2ZsYWdzKTsKKwlpZiAodHRtX3R0X2lzX3BvcHVsYXRlZChi by0+dHRtKSkKKwkJcmV0ID0gdHRtX3R0X3N3YXBvdXQoYm8tPmJkZXYsIGJvLT50dG0sIGdmcF9m bGFncyk7CiBvdXQ6CiAKIAkvKgotLSAKMi4zMS4xCgpfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBs aXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1h bi9saXN0aW5mby9pbnRlbC1nZngK