From mboxrd@z Thu Jan 1 00:00:00 1970 From: ville.syrjala@linux.intel.com Subject: [PATCH 7/9] drm: Push dirtyfb ioctl kms locking down to drivers Date: Thu, 21 Nov 2013 21:29:51 +0200 Message-ID: <1385062193-19466-8-git-send-email-ville.syrjala@linux.intel.com> References: <1385062193-19466-1-git-send-email-ville.syrjala@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 56E97FCF16 for ; Thu, 21 Nov 2013 11:30:37 -0800 (PST) In-Reply-To: <1385062193-19466-1-git-send-email-ville.syrjala@linux.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: intel-gfx-bounces@lists.freedesktop.org Errors-To: intel-gfx-bounces@lists.freedesktop.org To: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org RnJvbTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KCk5v dCBhbGwgZHJpdmVycyB3aWxsIG5lZWQgdGFrZSBhbGwgdGhlIG1vZGVzZXQgbG9ja3MgZm9yIGRp cnR5ZmIsIHNvCnB1c2ggdGhlIGxvY2tpbmcgZG93biB0byB0aGUgZHJpdmVycy4KClNpZ25lZC1v ZmYtYnk6IFZpbGxlIFN5cmrDpGzDpCA8dmlsbGUuc3lyamFsYUBsaW51eC5pbnRlbC5jb20+Ci0t LQogZHJpdmVycy9ncHUvZHJtL2RybV9jcnRjLmMgICAgICAgICAgfCAgMiAtLQogZHJpdmVycy9n cHUvZHJtL29tYXBkcm0vb21hcF9mYi5jICAgfCAgNCArKysrCiBkcml2ZXJzL2dwdS9kcm0vcXhs L3F4bF9kaXNwbGF5LmMgICB8ICA5ICsrKysrKysrLQogZHJpdmVycy9ncHUvZHJtL3VkbC91ZGxf ZmIuYyAgICAgICAgfCAxMiArKysrKysrKystLS0KIGRyaXZlcnMvZ3B1L2RybS92bXdnZngvdm13 Z2Z4X2ttcy5jIHwgMTggKysrKysrKysrKysrKysrKy0tCiA1IGZpbGVzIGNoYW5nZWQsIDM3IGlu c2VydGlvbnMoKyksIDggZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L2RybV9jcnRjLmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2NydGMuYwppbmRleCBkNmNmNzdjLi4y NjZhMDFkIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2NydGMuYworKysgYi9kcml2 ZXJzL2dwdS9kcm0vZHJtX2NydGMuYwpAQCAtMjc2NywxMCArMjc2Nyw4IEBAIGludCBkcm1fbW9k ZV9kaXJ0eWZiX2lvY3RsKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCiAJfQogCiAJaWYgKGZiLT5m dW5jcy0+ZGlydHkpIHsKLQkJZHJtX21vZGVzZXRfbG9ja19hbGwoZGV2KTsKIAkJcmV0ID0gZmIt PmZ1bmNzLT5kaXJ0eShmYiwgZmlsZV9wcml2LCBmbGFncywgci0+Y29sb3IsCiAJCQkJICAgICAg IGNsaXBzLCBudW1fY2xpcHMpOwotCQlkcm1fbW9kZXNldF91bmxvY2tfYWxsKGRldik7CiAJfSBl bHNlIHsKIAkJcmV0ID0gLUVOT1NZUzsKIAl9CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v b21hcGRybS9vbWFwX2ZiLmMgYi9kcml2ZXJzL2dwdS9kcm0vb21hcGRybS9vbWFwX2ZiLmMKaW5k ZXggZjJiOGYwNi4uZjQ2NmM0YSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL29tYXBkcm0v b21hcF9mYi5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9vbWFwZHJtL29tYXBfZmIuYwpAQCAtMTIz LDEyICsxMjMsMTYgQEAgc3RhdGljIGludCBvbWFwX2ZyYW1lYnVmZmVyX2RpcnR5KHN0cnVjdCBk cm1fZnJhbWVidWZmZXIgKmZiLAogewogCWludCBpOwogCisJZHJtX21vZGVzZXRfbG9ja19hbGwo ZmItPmRldik7CisKIAlmb3IgKGkgPSAwOyBpIDwgbnVtX2NsaXBzOyBpKyspIHsKIAkJb21hcF9m cmFtZWJ1ZmZlcl9mbHVzaChmYiwgY2xpcHNbaV0ueDEsIGNsaXBzW2ldLnkxLAogCQkJCQljbGlw c1tpXS54MiAtIGNsaXBzW2ldLngxLAogCQkJCQljbGlwc1tpXS55MiAtIGNsaXBzW2ldLnkxKTsK IAl9CiAKKwlkcm1fbW9kZXNldF91bmxvY2tfYWxsKGZiLT5kZXYpOworCiAJcmV0dXJuIDA7CiB9 CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9xeGwvcXhsX2Rpc3BsYXkuYyBiL2RyaXZl cnMvZ3B1L2RybS9xeGwvcXhsX2Rpc3BsYXkuYwppbmRleCA1ZTgyN2MyLi5iOGYzYmM3IDEwMDY0 NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vcXhsL3F4bF9kaXNwbGF5LmMKKysrIGIvZHJpdmVycy9n cHUvZHJtL3F4bC9xeGxfZGlzcGxheS5jCkBAIC0zOTksMTAgKzM5OSwxNCBAQCBzdGF0aWMgaW50 IHF4bF9mcmFtZWJ1ZmZlcl9zdXJmYWNlX2RpcnR5KHN0cnVjdCBkcm1fZnJhbWVidWZmZXIgKmZi LAogCXN0cnVjdCBxeGxfYm8gKnFvYmo7CiAJaW50IGluYyA9IDE7CiAKKwlkcm1fbW9kZXNldF9s b2NrX2FsbChmYi0+ZGV2KTsKKwogCXFvYmogPSBnZW1fdG9fcXhsX2JvKHF4bF9mYi0+b2JqKTsK IAkvKiBpZiB3ZSBhcmVuJ3QgcHJpbWFyeSBzdXJmYWNlIGlnbm9yZSB0aGlzICovCi0JaWYgKCFx b2JqLT5pc19wcmltYXJ5KQorCWlmICghcW9iai0+aXNfcHJpbWFyeSkgeworCQlkcm1fbW9kZXNl dF91bmxvY2tfYWxsKGZiLT5kZXYpOwogCQlyZXR1cm4gMDsKKwl9CiAKIAlpZiAoIW51bV9jbGlw cykgewogCQludW1fY2xpcHMgPSAxOwpAQCAtNDE3LDYgKzQyMSw5IEBAIHN0YXRpYyBpbnQgcXhs X2ZyYW1lYnVmZmVyX3N1cmZhY2VfZGlydHkoc3RydWN0IGRybV9mcmFtZWJ1ZmZlciAqZmIsCiAK IAlxeGxfZHJhd19kaXJ0eV9mYihxZGV2LCBxeGxfZmIsIHFvYmosIGZsYWdzLCBjb2xvciwKIAkJ CSAgY2xpcHMsIG51bV9jbGlwcywgaW5jKTsKKworCWRybV9tb2Rlc2V0X3VubG9ja19hbGwoZmIt PmRldik7CisKIAlyZXR1cm4gMDsKIH0KIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3Vk bC91ZGxfZmIuYyBiL2RyaXZlcnMvZ3B1L2RybS91ZGwvdWRsX2ZiLmMKaW5kZXggOTdlOWQ2MS4u ZGJhZGQ0OSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL3VkbC91ZGxfZmIuYworKysgYi9k cml2ZXJzL2dwdS9kcm0vdWRsL3VkbF9mYi5jCkBAIC00MDMsMTUgKzQwMywxNyBAQCBzdGF0aWMg aW50IHVkbF91c2VyX2ZyYW1lYnVmZmVyX2RpcnR5KHN0cnVjdCBkcm1fZnJhbWVidWZmZXIgKmZi LAogCWludCBpOwogCWludCByZXQgPSAwOwogCisJZHJtX21vZGVzZXRfbG9ja19hbGwoZmItPmRl dik7CisKIAlpZiAoIXVmYi0+YWN0aXZlXzE2KQotCQlyZXR1cm4gMDsKKwkJZ290byB1bmxvY2s7 CiAKIAlpZiAodWZiLT5vYmotPmJhc2UuaW1wb3J0X2F0dGFjaCkgewogCQlyZXQgPSBkbWFfYnVm X2JlZ2luX2NwdV9hY2Nlc3ModWZiLT5vYmotPmJhc2UuaW1wb3J0X2F0dGFjaC0+ZG1hYnVmLAog CQkJCQkgICAgICAgMCwgdWZiLT5vYmotPmJhc2Uuc2l6ZSwKIAkJCQkJICAgICAgIERNQV9GUk9N X0RFVklDRSk7CiAJCWlmIChyZXQpCi0JCQlyZXR1cm4gcmV0OworCQkJZ290byB1bmxvY2s7CiAJ fQogCiAJZm9yIChpID0gMDsgaSA8IG51bV9jbGlwczsgaSsrKSB7CkBAIC00MTksNyArNDIxLDcg QEAgc3RhdGljIGludCB1ZGxfdXNlcl9mcmFtZWJ1ZmZlcl9kaXJ0eShzdHJ1Y3QgZHJtX2ZyYW1l YnVmZmVyICpmYiwKIAkJCQkgIGNsaXBzW2ldLngyIC0gY2xpcHNbaV0ueDEsCiAJCQkJICBjbGlw c1tpXS55MiAtIGNsaXBzW2ldLnkxKTsKIAkJaWYgKHJldCkKLQkJCWJyZWFrOworCQkJZ290byB1 bmxvY2s7CiAJfQogCiAJaWYgKHVmYi0+b2JqLT5iYXNlLmltcG9ydF9hdHRhY2gpIHsKQEAgLTQy Nyw2ICs0MjksMTAgQEAgc3RhdGljIGludCB1ZGxfdXNlcl9mcmFtZWJ1ZmZlcl9kaXJ0eShzdHJ1 Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYiwKIAkJCQkgICAgICAgMCwgdWZiLT5vYmotPmJhc2Uuc2l6 ZSwKIAkJCQkgICAgICAgRE1BX0ZST01fREVWSUNFKTsKIAl9CisKKyB1bmxvY2s6CisJZHJtX21v ZGVzZXRfdW5sb2NrX2FsbChmYi0+ZGV2KTsKKwogCXJldHVybiByZXQ7CiB9CiAKZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X2ttcy5jIGIvZHJpdmVycy9ncHUvZHJt L3Ztd2dmeC92bXdnZnhfa21zLmMKaW5kZXggZWNiM2Q4Ni4uYWIwYjg4ZiAxMDA2NDQKLS0tIGEv ZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhfa21zLmMKKysrIGIvZHJpdmVycy9ncHUvZHJt L3Ztd2dmeC92bXdnZnhfa21zLmMKQEAgLTYwOCw5ICs2MDgsMTMgQEAgaW50IHZtd19mcmFtZWJ1 ZmZlcl9zdXJmYWNlX2RpcnR5KHN0cnVjdCBkcm1fZnJhbWVidWZmZXIgKmZyYW1lYnVmZmVyLAog CWlmICghZGV2X3ByaXYtPnNvdV9wcml2KQogCQlyZXR1cm4gLUVJTlZBTDsKIAorCWRybV9tb2Rl c2V0X2xvY2tfYWxsKGRldl9wcml2LT5kZXYpOworCiAJcmV0ID0gdHRtX3JlYWRfbG9jaygmdm1h c3Rlci0+bG9jaywgdHJ1ZSk7Ci0JaWYgKHVubGlrZWx5KHJldCAhPSAwKSkKKwlpZiAodW5saWtl bHkocmV0ICE9IDApKSB7CisJCWRybV9tb2Rlc2V0X3VubG9ja19hbGwoZGV2X3ByaXYtPmRldik7 CiAJCXJldHVybiByZXQ7CisJfQogCiAJaWYgKCFudW1fY2xpcHMpIHsKIAkJbnVtX2NsaXBzID0g MTsKQEAgLTYyOCw2ICs2MzIsOSBAQCBpbnQgdm13X2ZyYW1lYnVmZmVyX3N1cmZhY2VfZGlydHko c3RydWN0IGRybV9mcmFtZWJ1ZmZlciAqZnJhbWVidWZmZXIsCiAJCQkJICAgY2xpcHMsIG51bV9j bGlwcywgaW5jLCBOVUxMKTsKIAogCXR0bV9yZWFkX3VubG9jaygmdm1hc3Rlci0+bG9jayk7CisK Kwlkcm1fbW9kZXNldF91bmxvY2tfYWxsKGRldl9wcml2LT5kZXYpOworCiAJcmV0dXJuIDA7CiB9 CiAKQEAgLTk1Miw5ICs5NTksMTMgQEAgaW50IHZtd19mcmFtZWJ1ZmZlcl9kbWFidWZfZGlydHko c3RydWN0IGRybV9mcmFtZWJ1ZmZlciAqZnJhbWVidWZmZXIsCiAJc3RydWN0IGRybV9jbGlwX3Jl Y3Qgbm9yZWN0OwogCWludCByZXQsIGluY3JlbWVudCA9IDE7CiAKKwlkcm1fbW9kZXNldF9sb2Nr X2FsbChkZXZfcHJpdi0+ZGV2KTsKKwogCXJldCA9IHR0bV9yZWFkX2xvY2soJnZtYXN0ZXItPmxv Y2ssIHRydWUpOwotCWlmICh1bmxpa2VseShyZXQgIT0gMCkpCisJaWYgKHVubGlrZWx5KHJldCAh PSAwKSkgeworCQlkcm1fbW9kZXNldF91bmxvY2tfYWxsKGRldl9wcml2LT5kZXYpOwogCQlyZXR1 cm4gcmV0OworCX0KIAogCWlmICghbnVtX2NsaXBzKSB7CiAJCW51bV9jbGlwcyA9IDE7CkBAIC05 NzgsNiArOTg5LDkgQEAgaW50IHZtd19mcmFtZWJ1ZmZlcl9kbWFidWZfZGlydHkoc3RydWN0IGRy bV9mcmFtZWJ1ZmZlciAqZnJhbWVidWZmZXIsCiAJfQogCiAJdHRtX3JlYWRfdW5sb2NrKCZ2bWFz dGVyLT5sb2NrKTsKKworCWRybV9tb2Rlc2V0X3VubG9ja19hbGwoZGV2X3ByaXYtPmRldik7CisK IAlyZXR1cm4gcmV0OwogfQogCi0tIAoxLjguMy4yCgpfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBs aXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFu L2xpc3RpbmZvL2ludGVsLWdmeAo=