From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: [PATCH] drm/i915: Do not put big intel_crtc_state on the stack Date: Tue, 19 Jan 2016 15:25:17 +0000 Message-ID: <1453217117-26125-1-git-send-email-tvrtko.ursulin@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by gabe.freedesktop.org (Postfix) with ESMTP id 0A7B36E7A6 for ; Tue, 19 Jan 2016 07:25:22 -0800 (PST) List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Intel-gfx@lists.freedesktop.org Cc: Daniel Vetter List-Id: intel-gfx@lists.freedesktop.org RnJvbTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KCkhhdmluZyB0 aGlzIG9uIHN0YWNrIHRyaWdnZXJzIHRoZSAtV2ZyYW1lLWxhcmdlci10aGFuPTEwMjQgYW5kCmlz IG5vdCBuaWNlIHRvIHB1dCBzdWNoIGJpZyB0aGluZ3Mgb24gdGhlIGtlcm5lbCBzdGFjayBhbnl3 YXkuCgpUaGlzIHJlcXVpcmVkIGEgbGl0dGxlIGJpdCBvZiByZWZhY3RvcmluZyB0byBoYW5kbGUg dGhlIG5ldwpmYWlsdXJlIHBhdGggZnJvbSB2bHZfZm9yY2VfcGxsX29uLgoKU2lnbmVkLW9mZi1i eTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KQ2M6IERhbmllbCBW ZXR0ZXIgPGRhbmllbC52ZXR0ZXJAZmZ3bGwuY2g+CkNjOiBKb2huIEhhcnJpc29uIDxqb2huLmMu aGFycmlzb25AaW50ZWwuY29tPgpDYzogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxp bnV4LmludGVsLmNvbT4KLS0tCkNvbXBpbGUgdGVzdGVkIG9ubHkhCi0tLQogZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jIHwgNTggKysrKysrKysrKysrKysrKysrKysrKystLS0t LS0tLS0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcC5jICAgICAgfCAgOCArKyst LQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmggICAgIHwgIDQgKy0tCiAzIGZpbGVz IGNoYW5nZWQsIDQ1IGluc2VydGlvbnMoKyksIDI1IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX2Rpc3BsYXkuYwppbmRleCBjY2IzZTNmNDc0NTAuLjdiZjE4NjU4YzY1OSAxMDA2 NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCisrKyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwpAQCAtNzYzNSwyNiArNzYzNSwzNCBAQCBz dGF0aWMgdm9pZCBjaHZfcHJlcGFyZV9wbGwoc3RydWN0IGludGVsX2NydGMgKmNydGMsCiAgKiBp biBjYXNlcyB3aGVyZSB3ZSBuZWVkIHRoZSBQTEwgZW5hYmxlZCBldmVuIHdoZW4gQHBpcGUgaXMg bm90IGdvaW5nIHRvCiAgKiBiZSBlbmFibGVkLgogICovCi12b2lkIHZsdl9mb3JjZV9wbGxfb24o c3RydWN0IGRybV9kZXZpY2UgKmRldiwgZW51bSBwaXBlIHBpcGUsCitpbnQgdmx2X2ZvcmNlX3Bs bF9vbihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBlbnVtIHBpcGUgcGlwZSwKIAkJICAgICAgY29u c3Qgc3RydWN0IGRwbGwgKmRwbGwpCiB7CiAJc3RydWN0IGludGVsX2NydGMgKmNydGMgPQogCQl0 b19pbnRlbF9jcnRjKGludGVsX2dldF9jcnRjX2Zvcl9waXBlKGRldiwgcGlwZSkpOwotCXN0cnVj dCBpbnRlbF9jcnRjX3N0YXRlIHBpcGVfY29uZmlnID0gewotCQkuYmFzZS5jcnRjID0gJmNydGMt PmJhc2UsCi0JCS5waXhlbF9tdWx0aXBsaWVyID0gMSwKLQkJLmRwbGwgPSAqZHBsbCwKLQl9Owor CXN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpwaXBlX2NvbmZpZzsKKworCXBpcGVfY29uZmlnID0g a3phbGxvYyhzaXplb2YoKnBpcGVfY29uZmlnKSwgR0ZQX0tFUk5FTCk7CisJaWYgKCFwaXBlX2Nv bmZpZykKKwkJcmV0dXJuIC1FTk9NRU07CisKKwlwaXBlX2NvbmZpZy0+YmFzZS5jcnRjID0gJmNy dGMtPmJhc2U7CisJcGlwZV9jb25maWctPnBpeGVsX211bHRpcGxpZXIgPSAxOworCXBpcGVfY29u ZmlnLT5kcGxsID0gKmRwbGw7CiAKIAlpZiAoSVNfQ0hFUlJZVklFVyhkZXYpKSB7Ci0JCWNodl9j b21wdXRlX2RwbGwoY3J0YywgJnBpcGVfY29uZmlnKTsKLQkJY2h2X3ByZXBhcmVfcGxsKGNydGMs ICZwaXBlX2NvbmZpZyk7Ci0JCWNodl9lbmFibGVfcGxsKGNydGMsICZwaXBlX2NvbmZpZyk7CisJ CWNodl9jb21wdXRlX2RwbGwoY3J0YywgcGlwZV9jb25maWcpOworCQljaHZfcHJlcGFyZV9wbGwo Y3J0YywgcGlwZV9jb25maWcpOworCQljaHZfZW5hYmxlX3BsbChjcnRjLCBwaXBlX2NvbmZpZyk7 CiAJfSBlbHNlIHsKLQkJdmx2X2NvbXB1dGVfZHBsbChjcnRjLCAmcGlwZV9jb25maWcpOwotCQl2 bHZfcHJlcGFyZV9wbGwoY3J0YywgJnBpcGVfY29uZmlnKTsKLQkJdmx2X2VuYWJsZV9wbGwoY3J0 YywgJnBpcGVfY29uZmlnKTsKKwkJdmx2X2NvbXB1dGVfZHBsbChjcnRjLCBwaXBlX2NvbmZpZyk7 CisJCXZsdl9wcmVwYXJlX3BsbChjcnRjLCBwaXBlX2NvbmZpZyk7CisJCXZsdl9lbmFibGVfcGxs KGNydGMsIHBpcGVfY29uZmlnKTsKIAl9CisKKwlrZnJlZShwaXBlX2NvbmZpZyk7CisKKwlyZXR1 cm4gMDsKIH0KIAogLyoqCkBAIC0xMDgyOCw3ICsxMDgzNiw3IEBAIHN0cnVjdCBkcm1fZGlzcGxh eV9tb2RlICppbnRlbF9jcnRjX21vZGVfZ2V0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCiAJc3Ry dWN0IGludGVsX2NydGMgKmludGVsX2NydGMgPSB0b19pbnRlbF9jcnRjKGNydGMpOwogCWVudW0g dHJhbnNjb2RlciBjcHVfdHJhbnNjb2RlciA9IGludGVsX2NydGMtPmNvbmZpZy0+Y3B1X3RyYW5z Y29kZXI7CiAJc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKm1vZGU7Ci0Jc3RydWN0IGludGVsX2Ny dGNfc3RhdGUgcGlwZV9jb25maWc7CisJc3RydWN0IGludGVsX2NydGNfc3RhdGUgKnBpcGVfY29u ZmlnOwogCWludCBodG90ID0gSTkxNV9SRUFEKEhUT1RBTChjcHVfdHJhbnNjb2RlcikpOwogCWlu dCBoc3luYyA9IEk5MTVfUkVBRChIU1lOQyhjcHVfdHJhbnNjb2RlcikpOwogCWludCB2dG90ID0g STkxNV9SRUFEKFZUT1RBTChjcHVfdHJhbnNjb2RlcikpOwpAQCAtMTA4MzksNiArMTA4NDcsMTIg QEAgc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKmludGVsX2NydGNfbW9kZV9nZXQoc3RydWN0IGRy bV9kZXZpY2UgKmRldiwKIAlpZiAoIW1vZGUpCiAJCXJldHVybiBOVUxMOwogCisJcGlwZV9jb25m aWcgPSBremFsbG9jKHNpemVvZigqcGlwZV9jb25maWcpLCBHRlBfS0VSTkVMKTsKKwlpZiAoIXBp cGVfY29uZmlnKSB7CisJCWtmcmVlKG1vZGUpOworCQlyZXR1cm4gTlVMTDsKKwl9CisKIAkvKgog CSAqIENvbnN0cnVjdCBhIHBpcGVfY29uZmlnIHN1ZmZpY2llbnQgZm9yIGdldHRpbmcgdGhlIGNs b2NrIGluZm8KIAkgKiBiYWNrIG91dCBvZiBjcnRjX2Nsb2NrX2dldC4KQEAgLTEwODQ2LDE0ICsx MDg2MCwxNCBAQCBzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqaW50ZWxfY3J0Y19tb2RlX2dldChz dHJ1Y3QgZHJtX2RldmljZSAqZGV2LAogCSAqIE5vdGUsIGlmIExWRFMgZXZlciB1c2VzIGEgbm9u LTEgcGl4ZWwgbXVsdGlwbGllciwgd2UnbGwgbmVlZAogCSAqIHRvIHVzZSBhIHJlYWwgdmFsdWUg aGVyZSBpbnN0ZWFkLgogCSAqLwotCXBpcGVfY29uZmlnLmNwdV90cmFuc2NvZGVyID0gKGVudW0g dHJhbnNjb2RlcikgcGlwZTsKLQlwaXBlX2NvbmZpZy5waXhlbF9tdWx0aXBsaWVyID0gMTsKLQlw aXBlX2NvbmZpZy5kcGxsX2h3X3N0YXRlLmRwbGwgPSBJOTE1X1JFQUQoRFBMTChwaXBlKSk7Ci0J cGlwZV9jb25maWcuZHBsbF9od19zdGF0ZS5mcDAgPSBJOTE1X1JFQUQoRlAwKHBpcGUpKTsKLQlw aXBlX2NvbmZpZy5kcGxsX2h3X3N0YXRlLmZwMSA9IEk5MTVfUkVBRChGUDEocGlwZSkpOwotCWk5 eHhfY3J0Y19jbG9ja19nZXQoaW50ZWxfY3J0YywgJnBpcGVfY29uZmlnKTsKLQotCW1vZGUtPmNs b2NrID0gcGlwZV9jb25maWcucG9ydF9jbG9jayAvIHBpcGVfY29uZmlnLnBpeGVsX211bHRpcGxp ZXI7CisJcGlwZV9jb25maWctPmNwdV90cmFuc2NvZGVyID0gKGVudW0gdHJhbnNjb2RlcikgcGlw ZTsKKwlwaXBlX2NvbmZpZy0+cGl4ZWxfbXVsdGlwbGllciA9IDE7CisJcGlwZV9jb25maWctPmRw bGxfaHdfc3RhdGUuZHBsbCA9IEk5MTVfUkVBRChEUExMKHBpcGUpKTsKKwlwaXBlX2NvbmZpZy0+ ZHBsbF9od19zdGF0ZS5mcDAgPSBJOTE1X1JFQUQoRlAwKHBpcGUpKTsKKwlwaXBlX2NvbmZpZy0+ ZHBsbF9od19zdGF0ZS5mcDEgPSBJOTE1X1JFQUQoRlAxKHBpcGUpKTsKKwlpOXh4X2NydGNfY2xv Y2tfZ2V0KGludGVsX2NydGMsIHBpcGVfY29uZmlnKTsKKworCW1vZGUtPmNsb2NrID0gcGlwZV9j b25maWctPnBvcnRfY2xvY2sgLyBwaXBlX2NvbmZpZy0+cGl4ZWxfbXVsdGlwbGllcjsKIAltb2Rl LT5oZGlzcGxheSA9IChodG90ICYgMHhmZmZmKSArIDE7CiAJbW9kZS0+aHRvdGFsID0gKChodG90 ICYgMHhmZmZmMDAwMCkgPj4gMTYpICsgMTsKIAltb2RlLT5oc3luY19zdGFydCA9IChoc3luYyAm IDB4ZmZmZikgKyAxOwpAQCAtMTA4NjUsNiArMTA4NzksOCBAQCBzdHJ1Y3QgZHJtX2Rpc3BsYXlf bW9kZSAqaW50ZWxfY3J0Y19tb2RlX2dldChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAogCiAJZHJt X21vZGVfc2V0X25hbWUobW9kZSk7CiAKKwlrZnJlZShwaXBlX2NvbmZpZyk7CisKIAlyZXR1cm4g bW9kZTsKIH0KIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHAuYyBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwLmMKaW5kZXggMTc2MTI1NDhjNThkLi5lMmJl YTcxMDYxNGYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwLmMKKysr IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHAuYwpAQCAtMzM1LDggKzMzNSwxMiBAQCB2 bHZfcG93ZXJfc2VxdWVuY2VyX2tpY2soc3RydWN0IGludGVsX2RwICppbnRlbF9kcCkKIAkJcmVs ZWFzZV9jbF9vdmVycmlkZSA9IElTX0NIRVJSWVZJRVcoZGV2KSAmJgogCQkJIWNodl9waHlfcG93 ZXJnYXRlX2NoKGRldl9wcml2LCBwaHksIGNoLCB0cnVlKTsKIAotCQl2bHZfZm9yY2VfcGxsX29u KGRldiwgcGlwZSwgSVNfQ0hFUlJZVklFVyhkZXYpID8KLQkJCQkgJmNodl9kcGxsWzBdLmRwbGwg OiAmdmx2X2RwbGxbMF0uZHBsbCk7CisJCWlmICh2bHZfZm9yY2VfcGxsX29uKGRldiwgcGlwZSwg SVNfQ0hFUlJZVklFVyhkZXYpID8KKwkJCQkgICAgICZjaHZfZHBsbFswXS5kcGxsIDogJnZsdl9k cGxsWzBdLmRwbGwpKSB7CisJCQlEUk1fRVJST1IoIkZhaWxlZCB0byBmb3JjZSBvbiBwbGwgZm9y IHBpcGUgJWMhXG4iLAorCQkJCSAgcGlwZV9uYW1lKHBpcGUpKTsKKwkJCXJldHVybjsKKwkJfQog CX0KIAogCS8qCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaCBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCmluZGV4IDA1OWI0NmUyMmMzMS4uNTM4 ZmFhZjRlZWVmIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaAor KysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaApAQCAtMTE3Nyw4ICsxMTc3LDgg QEAgdm9pZCBhc3NlcnRfc2hhcmVkX2RwbGwoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2LAogc3RydWN0IGludGVsX3NoYXJlZF9kcGxsICppbnRlbF9nZXRfc2hhcmVkX2RwbGwoc3Ry dWN0IGludGVsX2NydGMgKmNydGMsCiAJCQkJCQlzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqc3Rh dGUpOwogCi12b2lkIHZsdl9mb3JjZV9wbGxfb24oc3RydWN0IGRybV9kZXZpY2UgKmRldiwgZW51 bSBwaXBlIHBpcGUsCi0JCSAgICAgIGNvbnN0IHN0cnVjdCBkcGxsICpkcGxsKTsKK2ludCB2bHZf Zm9yY2VfcGxsX29uKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIGVudW0gcGlwZSBwaXBlLAorCQkg ICAgIGNvbnN0IHN0cnVjdCBkcGxsICpkcGxsKTsKIHZvaWQgdmx2X2ZvcmNlX3BsbF9vZmYoc3Ry dWN0IGRybV9kZXZpY2UgKmRldiwgZW51bSBwaXBlIHBpcGUpOwogCiAvKiBtb2Rlc2V0dGluZyBh c3NlcnRzICovCi0tIAoxLjkuMQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRl c2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9p bnRlbC1nZngK