From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paulo Zanoni Subject: [PATCH 7/9] drm/i915: don't alloc/free fbc_work at every update Date: Tue, 23 Dec 2014 10:35:43 -0200 Message-ID: <1419338145-1912-8-git-send-email-przanoni@gmail.com> References: <1419338145-1912-1-git-send-email-przanoni@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-vc0-f177.google.com (mail-vc0-f177.google.com [209.85.220.177]) by gabe.freedesktop.org (Postfix) with ESMTP id 2CBC96E49C for ; Tue, 23 Dec 2014 04:36:45 -0800 (PST) Received: by mail-vc0-f177.google.com with SMTP id ij19so2277205vcb.36 for ; Tue, 23 Dec 2014 04:36:44 -0800 (PST) In-Reply-To: <1419338145-1912-1-git-send-email-przanoni@gmail.com> 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: Paulo Zanoni List-Id: intel-gfx@lists.freedesktop.org RnJvbTogUGF1bG8gWmFub25pIDxwYXVsby5yLnphbm9uaUBpbnRlbC5jb20+CgpCZWNhdXNlIHRo ZXJlJ3Mgbm8gbmVlZCBmb3IgaXQuIEp1c3QgdXNlIGEgc3RhdGljIHN0cnVjdHVyZSB3aXRoIGEK Ym9vbCBmaWVsZCB0byB0ZWxsIGlmIGl0J3MgaW4gdXNlIG9yIG5vdC4gVGhlIGJpZyBhZHZhbnRh Z2UgaGVyZSBpcwpub3Qgc2F2aW5nIGt6YWxsb2Mva2ZyZWUgY2FsbHMsIGl0J3MgY3V0dGluZyB0 aGUgdWdseSAiZmFpbGVkIHRvCmFsbG9jYXRlIEZCQyB3b3JrIHN0cnVjdHVyZSIgY29kZSBwYXRo OiBpbiB0aGlzIHBhdGggd2UgY2FsbAplbmFibGVfZmJjKCkgZGlyZWN0bHkgYnV0IHdlIGRvbid0 IHVwZGF0ZSBmYmMuY3J0YywgZmJjLmZiX2lkIGFuZApmYmMueSAtIHRoZXkgYXJlIHVwZGF0ZWQg aW4gaW50ZWxfZmJjX3dvcmtfZm4oKSwgd2hpY2ggd2UncmUgbm90CmNhbGxpbmcuIEFuZCBzaW5j ZSB0ZXN0aW5nIG91dC1vZi1tZW1vcnkgY2FzZXMgbGlrZSB0aGlzIGlzIHJlYWxseQpoYXJkLCBn ZXR0aW5nIHJpZCBvZiB0aGUgY29kZSBwYXRoIGlzIGEgbWFqb3IgcmVsaWVmLgoKU2lnbmVkLW9m Zi1ieTogUGF1bG8gWmFub25pIDxwYXVsby5yLnphbm9uaUBpbnRlbC5jb20+Ci0tLQogZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCAgfCAgMyArKy0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX2ZiYy5jIHwgNDEgKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LQogMiBmaWxlcyBjaGFuZ2VkLCAxNyBpbnNlcnRpb25zKCspLCAyNyBkZWxldGlvbnMoLSkKCmRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9kcnYuaAppbmRleCAxOGZjY2U0Li40MGJjODY0IDEwMDY0NAotLS0gYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfZHJ2LmgKQEAgLTc1MSwxMCArNzUxLDExIEBAIHN0cnVjdCBpOTE1X2ZiYyB7CiAJYm9v bCBlbmFibGVkOwogCiAJc3RydWN0IGludGVsX2ZiY193b3JrIHsKKwkJYm9vbCBzY2hlZHVsZWQ7 CiAJCXN0cnVjdCBkZWxheWVkX3dvcmsgd29yazsKIAkJc3RydWN0IGRybV9jcnRjICpjcnRjOwog CQlzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYjsKLQl9ICpmYmNfd29yazsKKwl9IHdvcms7CiAK IAllbnVtIG5vX2ZiY19yZWFzb24gewogCQlGQkNfT0ssIC8qIEZCQyBpcyBlbmFibGVkICovCmRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9mYmMuYyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2ZiYy5jCmluZGV4IDY2MTEyNjYuLjgwYmRiZGUgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2ZiYy5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX2ZiYy5jCkBAIC0zMzYsNyArMzM2LDcgQEAgc3RhdGljIHZvaWQgaW50ZWxfZmJj X3dvcmtfZm4oc3RydWN0IHdvcmtfc3RydWN0ICpfX3dvcmspCiAKIAltdXRleF9sb2NrKCZkZXYt PnN0cnVjdF9tdXRleCk7CiAJbXV0ZXhfbG9jaygmZGV2X3ByaXYtPmZiYy5sb2NrKTsKLQlpZiAo d29yayA9PSBkZXZfcHJpdi0+ZmJjLmZiY193b3JrKSB7CisJaWYgKGRldl9wcml2LT5mYmMud29y ay5zY2hlZHVsZWQpIHsKIAkJLyogRG91YmxlIGNoZWNrIHRoYXQgd2UgaGF2ZW4ndCBzd2l0Y2hl ZCBmYiB3aXRob3V0IGNhbmNlbGxpbmcKIAkJICogdGhlIHByaW9yIHdvcmsuCiAJCSAqLwpAQCAt MzQ4LDQyICszNDgsMzcgQEAgc3RhdGljIHZvaWQgaW50ZWxfZmJjX3dvcmtfZm4oc3RydWN0IHdv cmtfc3RydWN0ICpfX3dvcmspCiAJCQlkZXZfcHJpdi0+ZmJjLnkgPSB3b3JrLT5jcnRjLT55Owog CQl9CiAKLQkJZGV2X3ByaXYtPmZiYy5mYmNfd29yayA9IE5VTEw7CisJCWRldl9wcml2LT5mYmMu d29yay5zY2hlZHVsZWQgPSBmYWxzZTsKIAl9CiAJbXV0ZXhfdW5sb2NrKCZkZXZfcHJpdi0+ZmJj LmxvY2spOwogCW11dGV4X3VubG9jaygmZGV2LT5zdHJ1Y3RfbXV0ZXgpOwotCi0Ja2ZyZWUod29y ayk7CiB9CiAKIHN0YXRpYyB2b2lkIGludGVsX2ZiY19jYW5jZWxfd29yayhzdHJ1Y3QgZHJtX2k5 MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiB7CiAJbG9ja2RlcF9hc3NlcnRfaGVsZCgmZGV2X3ByaXYt PmZiYy5sb2NrKTsKIAotCWlmIChkZXZfcHJpdi0+ZmJjLmZiY193b3JrID09IE5VTEwpCisJaWYg KCFkZXZfcHJpdi0+ZmJjLndvcmsuc2NoZWR1bGVkKQogCQlyZXR1cm47CiAKIAlEUk1fREVCVUdf S01TKCJjYW5jZWxsaW5nIHBlbmRpbmcgRkJDIGVuYWJsZVxuIik7CiAKLQkvKiBTeW5jaHJvbmlz YXRpb24gaXMgcHJvdmlkZWQgYnkgc3RydWN0X211dGV4IGFuZCBjaGVja2luZyBvZgotCSAqIGRl dl9wcml2LT5mYmMuZmJjX3dvcmssIHNvIHdlIGNhbiBwZXJmb3JtIHRoZSBjYW5jZWxsYXRpb24K KwkvKiBTeW5jaHJvbmlzYXRpb24gaXMgcHJvdmlkZWQgYnkgZmJjLmxvY2sgYW5kIGNoZWNraW5n IG9mCisJICogZGV2X3ByaXYtPmZiYy53b3JrLnNjaGVkdWxlZCwgc28gd2UgY2FuIHBlcmZvcm0g dGhlIGNhbmNlbGxhdGlvbgogCSAqIGVudGlyZWx5IGFzeW5jaHJvbm91c2x5LgogCSAqLwotCWlm IChjYW5jZWxfZGVsYXllZF93b3JrKCZkZXZfcHJpdi0+ZmJjLmZiY193b3JrLT53b3JrKSkKLQkJ LyogdGFza2xldCB3YXMga2lsbGVkIGJlZm9yZSBiZWluZyBydW4sIGNsZWFuIHVwICovCi0JCWtm cmVlKGRldl9wcml2LT5mYmMuZmJjX3dvcmspOworCWNhbmNlbF9kZWxheWVkX3dvcmsoJmRldl9w cml2LT5mYmMud29yay53b3JrKTsKIAogCS8qIE1hcmsgdGhlIHdvcmsgYXMgbm8gbG9uZ2VyIHdh bnRlZCBzbyB0aGF0IGlmIGl0IGRvZXMKIAkgKiB3YWtlLXVwIChiZWNhdXNlIHRoZSB3b3JrIHdh cyBhbHJlYWR5IHJ1bm5pbmcgYW5kIHdhaXRpbmcKIAkgKiBmb3Igb3VyIG11dGV4KSwgaXQgd2ls bCBkaXNjb3ZlciB0aGF0IGlzIG5vIGxvbmdlcgogCSAqIG5lY2Vzc2FyeSB0byBydW4uCiAJICov Ci0JZGV2X3ByaXYtPmZiYy5mYmNfd29yayA9IE5VTEw7CisJZGV2X3ByaXYtPmZiYy53b3JrLnNj aGVkdWxlZCA9IGZhbHNlOwogfQogCiBzdGF0aWMgdm9pZCBpbnRlbF9mYmNfZW5hYmxlKHN0cnVj dCBkcm1fY3J0YyAqY3J0YykKIHsKLQlzdHJ1Y3QgaW50ZWxfZmJjX3dvcmsgKndvcms7CiAJc3Ry dWN0IGRybV9kZXZpY2UgKmRldiA9IGNydGMtPmRldjsKIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0 ZSAqZGV2X3ByaXYgPSBkZXYtPmRldl9wcml2YXRlOwogCkBAIC0zOTQsMTggKzM4OSwxMCBAQCBz dGF0aWMgdm9pZCBpbnRlbF9mYmNfZW5hYmxlKHN0cnVjdCBkcm1fY3J0YyAqY3J0YykKIAogCWlu dGVsX2ZiY19jYW5jZWxfd29yayhkZXZfcHJpdik7CiAKLQl3b3JrID0ga3phbGxvYyhzaXplb2Yo KndvcmspLCBHRlBfS0VSTkVMKTsKLQlpZiAod29yayA9PSBOVUxMKSB7Ci0JCURSTV9FUlJPUigi RmFpbGVkIHRvIGFsbG9jYXRlIEZCQyB3b3JrIHN0cnVjdHVyZVxuIik7Ci0JCWRldl9wcml2LT5k aXNwbGF5LmVuYWJsZV9mYmMoY3J0Yyk7Ci0JCXJldHVybjsKLQl9CisJZGV2X3ByaXYtPmZiYy53 b3JrLmNydGMgPSBjcnRjOworCWRldl9wcml2LT5mYmMud29yay5mYiA9IGNydGMtPnByaW1hcnkt PmZiOwogCi0Jd29yay0+Y3J0YyA9IGNydGM7Ci0Jd29yay0+ZmIgPSBjcnRjLT5wcmltYXJ5LT5m YjsKLQlJTklUX0RFTEFZRURfV09SSygmd29yay0+d29yaywgaW50ZWxfZmJjX3dvcmtfZm4pOwot Ci0JZGV2X3ByaXYtPmZiYy5mYmNfd29yayA9IHdvcms7CisJZGV2X3ByaXYtPmZiYy53b3JrLnNj aGVkdWxlZCA9IHRydWU7CiAKIAkvKiBEZWxheSB0aGUgYWN0dWFsIGVuYWJsaW5nIHRvIGxldCBw YWdlZmxpcHBpbmcgY2Vhc2UgYW5kIHRoZQogCSAqIGRpc3BsYXkgdG8gc2V0dGxlIGJlZm9yZSBz dGFydGluZyB0aGUgY29tcHJlc3Npb24uIE5vdGUgdGhhdApAQCAtNDIwLDcgKzQwNyw3IEBAIHN0 YXRpYyB2b2lkIGludGVsX2ZiY19lbmFibGUoc3RydWN0IGRybV9jcnRjICpjcnRjKQogCSAqCiAJ ICogV2FGYmNXYWl0Rm9yVkJsYW5rQmVmb3JlRW5hYmxlOmlsayxzbmIKIAkgKi8KLQlzY2hlZHVs ZV9kZWxheWVkX3dvcmsoJndvcmstPndvcmssIG1zZWNzX3RvX2ppZmZpZXMoNTApKTsKKwlzY2hl ZHVsZV9kZWxheWVkX3dvcmsoJmRldl9wcml2LT5mYmMud29yay53b3JrLCBtc2Vjc190b19qaWZm aWVzKDUwKSk7CiB9CiAKIHN0YXRpYyB2b2lkIF9faW50ZWxfZmJjX2Rpc2FibGUoc3RydWN0IGRy bV9kZXZpY2UgKmRldikKQEAgLTcwMiw5ICs2ODksOSBAQCB2b2lkIGludGVsX2ZiY19pbnZhbGlk YXRlKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKIAogCWlmIChkZXZfcHJpdi0+ ZmJjLmVuYWJsZWQpCiAJCWZiY19iaXRzID0gSU5URUxfRlJPTlRCVUZGRVJfUFJJTUFSWShkZXZf cHJpdi0+ZmJjLmNydGMtPnBpcGUpOwotCWVsc2UgaWYgKGRldl9wcml2LT5mYmMuZmJjX3dvcmsp CisJZWxzZSBpZiAoZGV2X3ByaXYtPmZiYy53b3JrLnNjaGVkdWxlZCkKIAkJZmJjX2JpdHMgPSBJ TlRFTF9GUk9OVEJVRkZFUl9QUklNQVJZKAotCQkJdG9faW50ZWxfY3J0YyhkZXZfcHJpdi0+ZmJj LmZiY193b3JrLT5jcnRjKS0+cGlwZSk7CisJCQl0b19pbnRlbF9jcnRjKGRldl9wcml2LT5mYmMu d29yay5jcnRjKS0+cGlwZSk7CiAJZWxzZQogCQlmYmNfYml0cyA9IGRldl9wcml2LT5mYmMucG9z c2libGVfZnJhbWVidWZmZXJfYml0czsKIApAQCAtNzczLDYgKzc2MCw4IEBAIHZvaWQgaW50ZWxf ZmJjX2luaXQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogCQlyZXR1cm47CiAJ fQogCisJSU5JVF9ERUxBWUVEX1dPUksoJmRldl9wcml2LT5mYmMud29yay53b3JrLCBpbnRlbF9m YmNfd29ya19mbik7CisKIAlmb3JfZWFjaF9waXBlKGRldl9wcml2LCBwaXBlKSB7CiAJCWRldl9w cml2LT5mYmMucG9zc2libGVfZnJhbWVidWZmZXJfYml0cyB8PQogCQkJCUlOVEVMX0ZST05UQlVG RkVSX1BSSU1BUlkocGlwZSk7Ci0tIAoyLjEuMwoKX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlz dHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9s aXN0aW5mby9pbnRlbC1nZngK