From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paulo Zanoni Subject: [RFC 6/7] drm: make vblank_event_list handle drm_vblank_wait_item types Date: Wed, 19 Nov 2014 17:47:14 -0200 Message-ID: <1416426435-2237-8-git-send-email-przanoni@gmail.com> References: <1416426435-2237-1-git-send-email-przanoni@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1416426435-2237-1-git-send-email-przanoni@gmail.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org Cc: intel-gfx@lists.freedesktop.org, Paulo Zanoni List-Id: intel-gfx@lists.freedesktop.org RnJvbTogUGF1bG8gWmFub25pIDxwYXVsby5yLnphbm9uaUBpbnRlbC5jb20+CgpXaGljaCBtZWFu cyB0aGUgbGlzdCBkb2Vzbid0IHJlYWxseSBuZWVkIHRvIGtub3cgaWYgdGhlIGV2ZW50IGlzIGZy b20KdXNlciBzcGFjZSBvciBrZXJuZWwgc3BhY2UuCgpUaGUgb25seSBwbGFjZSBoZXJlIHdoZXJl IHdlIGhhdmUgdG8gYnJlYWsgdGhlIGFic3RyYWN0aW9uIGlzIGF0CmRybV9mb3BzLCB3aGVuIHdl J3JlIHJlbGVhc2luZyBhbGwgdGhlIGV2ZW50cyBhc3NvY2lhdGVkIHdpdGggYQpmaWxlX3ByaXYu IEhlcmUgd2UgaW50cm9kdWNlZCBpdGVtLmZyb21fdXNlcl9zcGFjZSwgdGhhdCBuZWVkcyB0byBi ZQpjaGVja2VkIGJlZm9yZSB3ZSB0cmFuc2Zvcm0gdGhlIGl0ZW0gcG9pbnRlciBpbnRvIHRoZSBh cHByb3ByaWF0ZQpkcm1fcGVuZGluZ192YmxhbmtfZXZlbnQgcG9pbnRlci4gT3RoZXIgc3RyYXRl Z2llcyB0byBzb2x2ZSB0aGlzCnByb2JsZW0gLSBpbnN0ZWFkIG9mIGFkZGluZyBpdGVtLT5mcm9t X3VzZXJfc3BhY2UgLSB3b3VsZCBiZSB0bzogKGkpCnN0b3JlIGEgY29weSBvZiB0aGUgZmlsZV9w cml2IHBvaW50ZXIgaW4gdGhlIGRybV92Ymxhbmtfd2FpdF9pdGVtCnN0cnVjdHVyZSwgYnV0IHRo ZW4gd2UnZCBhbHNvIG5lZWQgYSBjdXN0b20gZGVzdHJveSgpIGZ1bmN0aW9uOyBvcgooaWkpIGFk ZCBmaWxlX3ByaXYtPnBlbmRpbmdfZXZlbnRfbGlzdCwgYnV0IHRoZW4gd2UnZCBoYXZlIHRvIGtl ZXAgYWxsCnRoZSB1c2VyIHNwYWNlIGl0ZW1zIGluIHN5bmMgd2l0aCBkZXYtPnZibGFua19ldmVu dF9saXN0LCB3aGljaCBjb3VsZApsZWFkIHRvIGNvbXBsaWNhdGVkIGNvZGUuCgpTaWduZWQtb2Zm LWJ5OiBQYXVsbyBaYW5vbmkgPHBhdWxvLnIuemFub25pQGludGVsLmNvbT4KLS0tCiBkcml2ZXJz L2dwdS9kcm0vZHJtX2ZvcHMuYyB8IDE1ICsrKysrKysrKysrLS0tLQogZHJpdmVycy9ncHUvZHJt L2RybV9pcnEuYyAgfCAzMyArKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0KIGluY2x1 ZGUvZHJtL2RybVAuaCAgICAgICAgIHwgIDQgKysrLQogMyBmaWxlcyBjaGFuZ2VkLCAzMSBpbnNl cnRpb25zKCspLCAyMSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v ZHJtX2ZvcHMuYyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fZm9wcy5jCmluZGV4IDQ3YzVlNTguLmZi ZGJkZTIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fZm9wcy5jCisrKyBiL2RyaXZl cnMvZ3B1L2RybS9kcm1fZm9wcy5jCkBAIC0yODAsMTggKzI4MCwyNSBAQCBzdGF0aWMgdm9pZCBk cm1fZXZlbnRzX3JlbGVhc2Uoc3RydWN0IGRybV9maWxlICpmaWxlX3ByaXYpCiB7CiAJc3RydWN0 IGRybV9kZXZpY2UgKmRldiA9IGZpbGVfcHJpdi0+bWlub3ItPmRldjsKIAlzdHJ1Y3QgZHJtX3Bl bmRpbmdfZXZlbnQgKmUsICpldDsKLQlzdHJ1Y3QgZHJtX3BlbmRpbmdfdmJsYW5rX2V2ZW50ICp2 LCAqdnQ7CisJc3RydWN0IGRybV92Ymxhbmtfd2FpdF9pdGVtICppLCAqaXQ7CiAJdW5zaWduZWQg bG9uZyBmbGFnczsKIAogCXNwaW5fbG9ja19pcnFzYXZlKCZkZXYtPmV2ZW50X2xvY2ssIGZsYWdz KTsKIAogCS8qIFJlbW92ZSBwZW5kaW5nIGZsaXBzICovCi0JbGlzdF9mb3JfZWFjaF9lbnRyeV9z YWZlKHYsIHZ0LCAmZGV2LT52YmxhbmtfZXZlbnRfbGlzdCwgYmFzZS5saW5rKQorCWxpc3RfZm9y X2VhY2hfZW50cnlfc2FmZShpLCBpdCwgJmRldi0+dmJsYW5rX2V2ZW50X2xpc3QsIGxpbmspIHsK KwkJc3RydWN0IGRybV9wZW5kaW5nX3ZibGFua19ldmVudCAqdjsKKworCQlpZiAoIWktPmZyb21f dXNlcl9zcGFjZSkKKwkJCWNvbnRpbnVlOworCisJCXYgPSBjb250YWluZXJfb2YoaSwgc3RydWN0 IGRybV9wZW5kaW5nX3ZibGFua19ldmVudCwgaXRlbSk7CiAJCWlmICh2LT5iYXNlLmZpbGVfcHJp diA9PSBmaWxlX3ByaXYpIHsKLQkJCWxpc3RfZGVsKCZ2LT5iYXNlLmxpbmspOwotCQkJZHJtX3Zi bGFua19wdXQoZGV2LCB2LT5pdGVtLnBpcGUpOworCQkJbGlzdF9kZWwoJmktPmxpbmspOworCQkJ ZHJtX3ZibGFua19wdXQoZGV2LCBpLT5waXBlKTsKIAkJCXYtPmJhc2UuZGVzdHJveSgmdi0+YmFz ZSk7CiAJCX0KKwl9CiAKIAkvKiBSZW1vdmUgdW5jb25zdW1lZCBldmVudHMgKi8KIAlsaXN0X2Zv cl9lYWNoX2VudHJ5X3NhZmUoZSwgZXQsICZmaWxlX3ByaXYtPmV2ZW50X2xpc3QsIGxpbmspIHsK ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1faXJxLmMgYi9kcml2ZXJzL2dwdS9kcm0v ZHJtX2lycS5jCmluZGV4IDRjMDMyNDAuLmRkMDkxYzMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9kcm1faXJxLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9pcnEuYwpAQCAtMTE0NCw3 ICsxMTQ0LDcgQEAgc3RhdGljIHZvaWQgZHJtX3dhaXRfdmJsYW5rX2NhbGxiYWNrKHN0cnVjdCBk cm1fZGV2aWNlICpkZXYsCiB2b2lkIGRybV92Ymxhbmtfb2ZmKHN0cnVjdCBkcm1fZGV2aWNlICpk ZXYsIGludCBjcnRjKQogewogCXN0cnVjdCBkcm1fdmJsYW5rX2NydGMgKnZibGFuayA9ICZkZXYt PnZibGFua1tjcnRjXTsKLQlzdHJ1Y3QgZHJtX3BlbmRpbmdfdmJsYW5rX2V2ZW50ICplLCAqdDsK KwlzdHJ1Y3QgZHJtX3ZibGFua193YWl0X2l0ZW0gKmksICp0OwogCXN0cnVjdCB0aW1ldmFsIG5v dzsKIAl1bnNpZ25lZCBsb25nIGlycWZsYWdzOwogCXVuc2lnbmVkIGludCBzZXE7CkBAIC0xMTcx LDE1ICsxMTcxLDE1IEBAIHZvaWQgZHJtX3ZibGFua19vZmYoc3RydWN0IGRybV9kZXZpY2UgKmRl diwgaW50IGNydGMpCiAJLyogU2VuZCBhbnkgcXVldWVkIHZibGFuayBldmVudHMsIGxlc3QgdGhl IG5hdGl2ZXMgZ3JvdyBkaXNxdWlldCAqLwogCXNlcSA9IGRybV92YmxhbmtfY291bnRfYW5kX3Rp bWUoZGV2LCBjcnRjLCAmbm93KTsKIAotCWxpc3RfZm9yX2VhY2hfZW50cnlfc2FmZShlLCB0LCAm ZGV2LT52YmxhbmtfZXZlbnRfbGlzdCwgYmFzZS5saW5rKSB7Ci0JCWlmIChlLT5pdGVtLnBpcGUg IT0gY3J0YykKKwlsaXN0X2Zvcl9lYWNoX2VudHJ5X3NhZmUoaSwgdCwgJmRldi0+dmJsYW5rX2V2 ZW50X2xpc3QsIGxpbmspIHsKKwkJaWYgKGktPnBpcGUgIT0gY3J0YykKIAkJCWNvbnRpbnVlOwog CQlEUk1fREVCVUcoIlNlbmRpbmcgcHJlbWF0dXJlIHZibGFuayBldmVudCBvbiBkaXNhYmxlOiBc CiAJCQkgIHdhbnRlZCAlZCwgY3VycmVudCAlZFxuIiwKLQkJCSAgZS0+aXRlbS53YW50ZWRfc2Vx LCBzZXEpOwotCQlsaXN0X2RlbCgmZS0+YmFzZS5saW5rKTsKLQkJZHJtX3ZibGFua19wdXQoZGV2 LCBlLT5pdGVtLnBpcGUpOwotCQlkcm1fd2FpdF92YmxhbmtfY2FsbGJhY2soZGV2LCAmZS0+aXRl bSwgc2VxLCAmbm93LCB0cnVlKTsKKwkJCSBpLT53YW50ZWRfc2VxLCBzZXEpOworCQlsaXN0X2Rl bCgmaS0+bGluayk7CisJCWRybV92YmxhbmtfcHV0KGRldiwgaS0+cGlwZSk7CisJCWRybV93YWl0 X3ZibGFua19jYWxsYmFjayhkZXYsIGksIHNlcSwgJm5vdywgdHJ1ZSk7CiAJfQogCXNwaW5fdW5s b2NrX2lycXJlc3RvcmUoJmRldi0+ZXZlbnRfbG9jaywgaXJxZmxhZ3MpOwogfQpAQCAtMTQyNyw2 ICsxNDI3LDcgQEAgc3RhdGljIGludCBkcm1fcXVldWVfdmJsYW5rX2V2ZW50KHN0cnVjdCBkcm1f ZGV2aWNlICpkZXYsIGludCBwaXBlLAogCWUtPmJhc2UuZXZlbnQgPSAmZS0+ZXZlbnQuYmFzZTsK IAllLT5iYXNlLmZpbGVfcHJpdiA9IGZpbGVfcHJpdjsKIAllLT5iYXNlLmRlc3Ryb3kgPSAodm9p ZCAoKikgKHN0cnVjdCBkcm1fcGVuZGluZ19ldmVudCAqKSkga2ZyZWU7CisJZS0+aXRlbS5mcm9t X3VzZXJfc3BhY2UgPSB0cnVlOwogCWUtPml0ZW0uY2FsbGJhY2sgPSBjYWxsYmFjazsKIAllLT5p dGVtLmNhbGxiYWNrX2Zyb21fd29yayA9IGNhbGxiYWNrX2Zyb21fd29yazsKIAlpZiAoY2FsbGJh Y2tfZnJvbV93b3JrKQpAQCAtMTQ3Niw3ICsxNDc3LDcgQEAgc3RhdGljIGludCBkcm1fcXVldWVf dmJsYW5rX2V2ZW50KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIGludCBwaXBlLAogCQl2Ymx3YWl0 LT5yZXBseS5zZXF1ZW5jZSA9IHNlcTsKIAl9IGVsc2UgewogCQkvKiBkcm1faGFuZGxlX3ZibGFu a19ldmVudHMgd2lsbCBjYWxsIGRybV92YmxhbmtfcHV0ICovCi0JCWxpc3RfYWRkX3RhaWwoJmUt PmJhc2UubGluaywgJmRldi0+dmJsYW5rX2V2ZW50X2xpc3QpOworCQlsaXN0X2FkZF90YWlsKCZl LT5pdGVtLmxpbmssICZkZXYtPnZibGFua19ldmVudF9saXN0KTsKIAkJdmJsd2FpdC0+cmVwbHku c2VxdWVuY2UgPSB2Ymx3YWl0LT5yZXF1ZXN0LnNlcXVlbmNlOwogCX0KIApAQCAtMTYzNSw3ICsx NjM2LDcgQEAgRVhQT1JUX1NZTUJPTChkcm1fd2FpdF92Ymxhbmtfa2VybmVsKTsKIAogc3RhdGlj IHZvaWQgZHJtX2hhbmRsZV92YmxhbmtfZXZlbnRzKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIGlu dCBjcnRjKQogewotCXN0cnVjdCBkcm1fcGVuZGluZ192YmxhbmtfZXZlbnQgKmUsICp0OworCXN0 cnVjdCBkcm1fdmJsYW5rX3dhaXRfaXRlbSAqaSwgKnQ7CiAJc3RydWN0IHRpbWV2YWwgbm93Owog CXVuc2lnbmVkIGludCBzZXE7CiAKQEAgLTE2NDMsMTggKzE2NDQsMTggQEAgc3RhdGljIHZvaWQg ZHJtX2hhbmRsZV92YmxhbmtfZXZlbnRzKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIGludCBjcnRj KQogCiAJc2VxID0gZHJtX3ZibGFua19jb3VudF9hbmRfdGltZShkZXYsIGNydGMsICZub3cpOwog Ci0JbGlzdF9mb3JfZWFjaF9lbnRyeV9zYWZlKGUsIHQsICZkZXYtPnZibGFua19ldmVudF9saXN0 LCBiYXNlLmxpbmspIHsKLQkJaWYgKGUtPml0ZW0ucGlwZSAhPSBjcnRjKQorCWxpc3RfZm9yX2Vh Y2hfZW50cnlfc2FmZShpLCB0LCAmZGV2LT52YmxhbmtfZXZlbnRfbGlzdCwgbGluaykgeworCQlp ZiAoaS0+cGlwZSAhPSBjcnRjKQogCQkJY29udGludWU7Ci0JCWlmICgoc2VxIC0gZS0+aXRlbS53 YW50ZWRfc2VxKSA+ICgxPDwyMykpCisJCWlmICgoc2VxIC0gaS0+d2FudGVkX3NlcSkgPiAoMTw8 MjMpKQogCQkJY29udGludWU7CiAKIAkJRFJNX0RFQlVHKCJ2YmxhbmsgZXZlbnQgb24gJWQsIGN1 cnJlbnQgJWRcbiIsCi0JCQkgIGUtPml0ZW0ud2FudGVkX3NlcSwgc2VxKTsKKwkJCSAgaS0+d2Fu dGVkX3NlcSwgc2VxKTsKIAotCQlsaXN0X2RlbCgmZS0+YmFzZS5saW5rKTsKLQkJZHJtX3ZibGFu a19wdXQoZGV2LCBlLT5pdGVtLnBpcGUpOwotCQlkcm1fd2FpdF92YmxhbmtfY2FsbGJhY2soZGV2 LCAmZS0+aXRlbSwgc2VxLCAmbm93LCBmYWxzZSk7CisJCWxpc3RfZGVsKCZpLT5saW5rKTsKKwkJ ZHJtX3ZibGFua19wdXQoZGV2LCBpLT5waXBlKTsKKwkJZHJtX3dhaXRfdmJsYW5rX2NhbGxiYWNr KGRldiwgaSwgc2VxLCAmbm93LCBmYWxzZSk7CiAJfQogCiAJdHJhY2VfZHJtX3ZibGFua19ldmVu dChjcnRjLCBzZXEpOwpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0vZHJtUC5oIGIvaW5jbHVkZS9k cm0vZHJtUC5oCmluZGV4IDQ3NGM4OTIuLjQ2NzI0ZDkgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvZHJt L2RybVAuaAorKysgYi9pbmNsdWRlL2RybS9kcm1QLmgKQEAgLTI1OCw3ICsyNTgsNyBAQCBzdHJ1 Y3QgZHJtX2lvY3RsX2Rlc2MgewogLyogRXZlbnQgcXVldWVkIHVwIGZvciB1c2Vyc3BhY2UgdG8g cmVhZCAqLwogc3RydWN0IGRybV9wZW5kaW5nX2V2ZW50IHsKIAlzdHJ1Y3QgZHJtX2V2ZW50ICpl dmVudDsKLQlzdHJ1Y3QgbGlzdF9oZWFkIGxpbms7CisJc3RydWN0IGxpc3RfaGVhZCBsaW5rOyAv KiBmaWxlX3ByaXYtPmV2ZW50X2xpc3QgKi8KIAlzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGVfcHJpdjsK IAlwaWRfdCBwaWQ7IC8qIHBpZCBvZiByZXF1ZXN0ZXIsIG5vIGd1YXJhbnRlZSBpdCdzIHZhbGlk IGJ5IHRoZSB0aW1lCiAJCSAgICAgIHdlIGRlbGl2ZXIgdGhlIGV2ZW50LCBmb3IgdHJhY2luZyBv bmx5ICovCkBAIC02NjgsOCArNjY4LDEwIEBAIHR5cGVkZWYgdm9pZCAoKmRybV92YmxhbmtfY2Fs bGJhY2tfdCkoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKIAkJCQkgICAgICBib29sIHByZW1hdHVy ZSk7CiAKIHN0cnVjdCBkcm1fdmJsYW5rX3dhaXRfaXRlbSB7CisJc3RydWN0IGxpc3RfaGVhZCBs aW5rOyAvKiBkZXYtPnZibGFua19ldmVudF9saXN0ICovCiAJaW50IHBpcGU7CiAJdW5zaWduZWQg aW50IHdhbnRlZF9zZXE7CisJYm9vbCBmcm9tX3VzZXJfc3BhY2U7CiAKIAlkcm1fdmJsYW5rX2Nh bGxiYWNrX3QgY2FsbGJhY2s7CiAJYm9vbCBjYWxsYmFja19mcm9tX3dvcms7Ci0tIAoyLjEuMQoK X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVs IG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0 cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK