From mboxrd@z Thu Jan 1 00:00:00 1970 From: Rohan Garg Subject: [PATCH v2] drm/ioctl: Add a ioctl to label GEM objects Date: Thu, 19 Sep 2019 14:53:21 +0200 Message-ID: <20190919125321.22880-1-rohan.garg@collabora.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from bhuna.collabora.co.uk (bhuna.collabora.co.uk [46.235.227.227]) by gabe.freedesktop.org (Postfix) with ESMTPS id 668FD6EA08 for ; Thu, 19 Sep 2019 12:53:30 +0000 (UTC) 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 List-Id: dri-devel@lists.freedesktop.org RFJNX0lPQ1RMX0JPX1NFVF9MQUJFTCBsZXRzIHlvdSBsYWJlbCBHRU0gb2JqZWN0cywgbWFraW5n IGl0CmVhc2llciB0byBkZWJ1ZyBpc3N1ZXMgaW4gdXNlcnNwYWNlIGFwcGxpY2F0aW9ucy4KCkNo YW5nZXMgaW4gdjI6CiAgLSBIb2lzdCB0aGUgSU9DVEwgdXAgaW50byB0aGUgZHJtX2RyaXZlciBm cmFtZXdvcmsKClNpZ25lZC1vZmYtYnk6IFJvaGFuIEdhcmcgPHJvaGFuLmdhcmdAY29sbGFib3Jh LmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vZHJtX2dlbS5jICAgICAgfCA2NCArKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrCiBkcml2ZXJzL2dwdS9kcm0vZHJtX2ludGVybmFsLmgg fCAgNCArKysKIGRyaXZlcnMvZ3B1L2RybS9kcm1faW9jdGwuYyAgICB8ICAxICsKIGluY2x1ZGUv ZHJtL2RybV9kcnYuaCAgICAgICAgICB8IDE4ICsrKysrKysrKysKIGluY2x1ZGUvZHJtL2RybV9n ZW0uaCAgICAgICAgICB8ICA3ICsrKysKIGluY2x1ZGUvdWFwaS9kcm0vZHJtLmggICAgICAgICB8 IDIwICsrKysrKysrKysrCiA2IGZpbGVzIGNoYW5nZWQsIDExNCBpbnNlcnRpb25zKCspCgpkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9nZW0uYyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1f Z2VtLmMKaW5kZXggNjg1NGY1ODY3ZDUxLi43ODVhYzU2MTYxOWEgMTAwNjQ0Ci0tLSBhL2RyaXZl cnMvZ3B1L2RybS9kcm1fZ2VtLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9nZW0uYwpAQCAt OTQxLDYgKzk0MSw2NSBAQCBkcm1fZ2VtX3JlbGVhc2Uoc3RydWN0IGRybV9kZXZpY2UgKmRldiwg c3RydWN0IGRybV9maWxlICpmaWxlX3ByaXZhdGUpCiAJaWRyX2Rlc3Ryb3koJmZpbGVfcHJpdmF0 ZS0+b2JqZWN0X2lkcik7CiB9CiAKK2ludCBkcm1fYm9fc2V0X2xhYmVsX2lvY3RsKHN0cnVjdCBk cm1fZGV2aWNlICpkZXYsIHZvaWQgKmRhdGEsCisJCSAgICAgICBzdHJ1Y3QgZHJtX2ZpbGUgKmZp bGVfcHJpdikKK3sKKwlzdHJ1Y3QgZHJtX2xhYmVsX29iamVjdCAqYXJncyA9IGRhdGE7CisKKwlp ZiAoIWFyZ3MtPmxlbiB8fCAhYXJncy0+bmFtZSkKKwkJcmV0dXJuIC1FSU5WQUw7CisKKwlpZiAo ZGV2LT5kcml2ZXItPmxhYmVsKQorCQlyZXR1cm4gZGV2LT5kcml2ZXItPmxhYmVsKGRldiwgYXJn cywgZmlsZV9wcml2KTsKKworCXJldHVybiAtRU9QTk9UU1VQUDsKK30KKworLyoqCisgKiBkcm1f Z2VtX2xhYmVsIC0gbGFiZWwgYSBnaXZlbiBHRU0gb2JqZWN0CisgKiBAZGV2OiBkcm1fZGV2aWNl IGZvciB0aGUgYXNzb2NpYXRlZCBHRU0gb2JqZWN0CisgKiBAZGF0YTogZHJtX2xhYmVsX2JvIHN0 cnVjdCB3aXRoIGEgbGFiZWwsIGxhYmVsIGxlbmd0aCBhbmQgYW55IHJlbGV2YW50IGZsYWdzCisg KiBAZmlsZV9wcml2YXRlOiBkcm0gZmlsZS1wcml2YXRlIHN0cnVjdHVyZSB0byBjbGVhbiB1cAor ICovCisKK2ludCBkcm1fZ2VtX3NldF9sYWJlbChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBzdHJ1 Y3QgZHJtX2xhYmVsX29iamVjdCAqYXJncywgc3RydWN0IGRybV9maWxlICpmaWxlX3ByaXYpCit7 CisJc3RydWN0IGRybV9nZW1fb2JqZWN0ICpnZW1fb2JqOworCWludCBlcnIgPSAwOworCWNoYXIg KmxhYmVsOworCisJaWYgKGFyZ3MtPmxlbiA+IDApCisJCWxhYmVsID0gc3RybmR1cF91c2VyKHU2 NF90b191c2VyX3B0cihhcmdzLT5uYW1lKSwgYXJncy0+bGVuKTsKKworCWdlbV9vYmogPSBkcm1f Z2VtX29iamVjdF9sb29rdXAoZmlsZV9wcml2LCBhcmdzLT5oYW5kbGUpOworCWlmICghZ2VtX29i aikgeworCQlEUk1fRVJST1IoIkZhaWxlZCB0byBsb29rIHVwIEdFTSBCTyAlZFxuIiwgYXJncy0+ aGFuZGxlKTsKKwkJZXJyID0gLUVOT0VOVDsKKwkJZ290byBlcnI7CisJfQorCisJaWYgKChhcmdz LT5sZW4gPT0gMCAmJiBhcmdzLT5uYW1lID09IE5VTEwpIHx8IGdlbV9vYmotPmxhYmVsKSB7CisJ CWtmcmVlKGdlbV9vYmotPmxhYmVsKTsKKwkJZ2VtX29iai0+bGFiZWwgPSBOVUxMOworCX0KKwor CWdlbV9vYmotPmxhYmVsID0gbGFiZWw7CisKKwlkcm1fZ2VtX29iamVjdF9wdXRfdW5sb2NrZWQo Z2VtX29iaik7CisKKwlpZiAoSVNfRVJSKGdlbV9vYmotPmxhYmVsKSkgeworCQllcnIgPSBQVFJf RVJSKGdlbV9vYmotPmxhYmVsKTsKKwkJZ290byBlcnI7CisJfQorCitlcnI6CisJaWYgKGVyciAh PSAwKQorCQlhcmdzLT5mbGFncyA9IGVycjsKKworCXJldHVybiBlcnI7Cit9CisKKwogLyoqCiAg KiBkcm1fZ2VtX29iamVjdF9yZWxlYXNlIC0gcmVsZWFzZSBHRU0gYnVmZmVyIG9iamVjdCByZXNv dXJjZXMKICAqIEBvYmo6IEdFTSBidWZmZXIgb2JqZWN0CkBAIC05NTgsNiArMTAxNywxMSBAQCBk cm1fZ2VtX29iamVjdF9yZWxlYXNlKHN0cnVjdCBkcm1fZ2VtX29iamVjdCAqb2JqKQogCiAJZG1h X3Jlc3ZfZmluaSgmb2JqLT5fcmVzdik7CiAJZHJtX2dlbV9mcmVlX21tYXBfb2Zmc2V0KG9iaik7 CisKKwlpZiAob2JqLT5sYWJlbCkgeworCQlrZnJlZShvYmotPmxhYmVsKTsKKwkJb2JqLT5sYWJl bCA9IE5VTEw7CisJfQogfQogRVhQT1JUX1NZTUJPTChkcm1fZ2VtX29iamVjdF9yZWxlYXNlKTsK IApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9pbnRlcm5hbC5oIGIvZHJpdmVycy9n cHUvZHJtL2RybV9pbnRlcm5hbC5oCmluZGV4IDUxYTIwNTVjOGYxOC4uODI1OTYyMmY5YWI2IDEw MDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2ludGVybmFsLmgKKysrIGIvZHJpdmVycy9n cHUvZHJtL2RybV9pbnRlcm5hbC5oCkBAIC0xMzcsNiArMTM3LDEwIEBAIGludCBkcm1fZ2VtX3Bp bihzdHJ1Y3QgZHJtX2dlbV9vYmplY3QgKm9iaik7CiB2b2lkIGRybV9nZW1fdW5waW4oc3RydWN0 IGRybV9nZW1fb2JqZWN0ICpvYmopOwogdm9pZCAqZHJtX2dlbV92bWFwKHN0cnVjdCBkcm1fZ2Vt X29iamVjdCAqb2JqKTsKIHZvaWQgZHJtX2dlbV92dW5tYXAoc3RydWN0IGRybV9nZW1fb2JqZWN0 ICpvYmosIHZvaWQgKnZhZGRyKTsKK2ludCBkcm1fYm9fc2V0X2xhYmVsX2lvY3RsKHN0cnVjdCBk cm1fZGV2aWNlICpkZXYsIHZvaWQgKmRhdGEsCisJCQlzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGVfcHJp dik7CitpbnQgZHJtX2dlbV9zZXRfbGFiZWwoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgc3RydWN0 IGRybV9sYWJlbF9vYmplY3QgKmFyZ3MsCisJCQlzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGVfcHJpdik7 CiAKIC8qIGRybV9kZWJ1Z2ZzLmMgZHJtX2RlYnVnZnNfY3JjLmMgKi8KICNpZiBkZWZpbmVkKENP TkZJR19ERUJVR19GUykKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1faW9jdGwuYyBi L2RyaXZlcnMvZ3B1L2RybS9kcm1faW9jdGwuYwppbmRleCBmNjc1YTNiYjJjODguLjA3OWQxNDIy ZjljNSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9pb2N0bC5jCisrKyBiL2RyaXZl cnMvZ3B1L2RybS9kcm1faW9jdGwuYwpAQCAtNzA5LDYgKzcwOSw3IEBAIHN0YXRpYyBjb25zdCBz dHJ1Y3QgZHJtX2lvY3RsX2Rlc2MgZHJtX2lvY3Rsc1tdID0gewogCURSTV9JT0NUTF9ERUYoRFJN X0lPQ1RMX01PREVfTElTVF9MRVNTRUVTLCBkcm1fbW9kZV9saXN0X2xlc3NlZXNfaW9jdGwsIERS TV9NQVNURVIpLAogCURSTV9JT0NUTF9ERUYoRFJNX0lPQ1RMX01PREVfR0VUX0xFQVNFLCBkcm1f bW9kZV9nZXRfbGVhc2VfaW9jdGwsIERSTV9NQVNURVIpLAogCURSTV9JT0NUTF9ERUYoRFJNX0lP Q1RMX01PREVfUkVWT0tFX0xFQVNFLCBkcm1fbW9kZV9yZXZva2VfbGVhc2VfaW9jdGwsIERSTV9N QVNURVIpLAorCURSTV9JT0NUTF9ERUYoRFJNX0lPQ1RMX0JPX1NFVF9MQUJFTCwgZHJtX2JvX3Nl dF9sYWJlbF9pb2N0bCwgRFJNX1JFTkRFUl9BTExPVyksCiB9OwogCiAjZGVmaW5lIERSTV9DT1JF X0lPQ1RMX0NPVU5UCUFSUkFZX1NJWkUoIGRybV9pb2N0bHMgKQpkaWZmIC0tZ2l0IGEvaW5jbHVk ZS9kcm0vZHJtX2Rydi5oIGIvaW5jbHVkZS9kcm0vZHJtX2Rydi5oCmluZGV4IDg5NzZhZmU0OGMx Yy4uZjczNmJhMWY0MmE2IDEwMDY0NAotLS0gYS9pbmNsdWRlL2RybS9kcm1fZHJ2LmgKKysrIGIv aW5jbHVkZS9kcm0vZHJtX2Rydi5oCkBAIC03MTUsNiArNzE1LDI0IEBAIHN0cnVjdCBkcm1fZHJp dmVyIHsKIAkJCSAgICBzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAogCQkJICAgIHVpbnQzMl90IGhh bmRsZSk7CiAKKworCS8qKgorCSAqIEBsYWJlbDoKKwkgKgorCSAqIFRoaXMgbGFiZWwncyBhIGJ1 ZmZlciBvYmplY3QuCisJICoKKwkgKiBDYWxsZWQgYnkgdGhlIHVzZXIgdmlhIGlvY3RsLgorCSAq CisJICogVGhlIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gaXMgZHJtX2dlbV9sYWJlbCgpLiBHRU0g YmFzZWQgZHJpdmVycworCSAqIG11c3Qgbm90IG92ZXJ3cml0ZSB0aGlzLgorCisJICogUmV0dXJu czoKKwkgKgorCSAqIFplcm8gb24gc3VjY2VzcywgbmVnYXRpdmUgZXJybm8gb24gZmFpbHVyZS4K KwkgKi8KKwlpbnQgKCpsYWJlbCkoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgc3RydWN0IGRybV9s YWJlbF9vYmplY3QgKmFyZ3MsCisJCQkJc3RydWN0IGRybV9maWxlICpmaWxlX3ByaXYpOworCiAJ LyoqCiAJICogQGdlbV92bV9vcHM6IERyaXZlciBwcml2YXRlIG9wcyBmb3IgdGhpcyBvYmplY3QK IAkgKgpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0vZHJtX2dlbS5oIGIvaW5jbHVkZS9kcm0vZHJt X2dlbS5oCmluZGV4IDZhYWJhMTRmNTk3Mi4uZjgwMWMwNTRlOTcyIDEwMDY0NAotLS0gYS9pbmNs dWRlL2RybS9kcm1fZ2VtLmgKKysrIGIvaW5jbHVkZS9kcm0vZHJtX2dlbS5oCkBAIC0yMzcsNiAr MjM3LDEzIEBAIHN0cnVjdCBkcm1fZ2VtX29iamVjdCB7CiAJICovCiAJaW50IG5hbWU7CiAKKwkv KioKKwkgKiBAbGFiZWw6CisJICoKKwkgKiBMYWJlbCBmb3IgdGhpcyBvYmplY3QsIHNob3VsZCBi ZSBhIGh1bWFuIHJlYWRhYmxlIHN0cmluZy4KKwkgKi8KKwljaGFyICpsYWJlbDsKKwogCS8qKgog CSAqIEBkbWFfYnVmOgogCSAqCmRpZmYgLS1naXQgYS9pbmNsdWRlL3VhcGkvZHJtL2RybS5oIGIv aW5jbHVkZS91YXBpL2RybS9kcm0uaAppbmRleCA4YTViMmY4ZjhlYjkuLjIzYjUwN2Y1YzU3MSAx MDA2NDQKLS0tIGEvaW5jbHVkZS91YXBpL2RybS9kcm0uaAorKysgYi9pbmNsdWRlL3VhcGkvZHJt L2RybS5oCkBAIC02MjYsNiArNjI2LDI1IEBAIHN0cnVjdCBkcm1fZ2VtX29wZW4gewogCV9fdTY0 IHNpemU7CiB9OwogCisvKiogc3RydWN0IGRybV9sYWJlbF9vYmplY3QgLSBpb2N0bCBhcmd1bWVu dCBmb3IgbGFiZWxsaW5nIEJPcy4KKyAqCisgKiBUaGlzIGxhYmVsJ3MgYSBCTyB3aXRoIGEgdXNl cnNwYWNlIGxhYmVsCisgKgorICovCitzdHJ1Y3QgZHJtX2xhYmVsX29iamVjdCB7CisJLyoqIEhh bmRsZSBmb3IgdGhlIG9iamVjdCBiZWluZyBsYWJlbGxlZC4gKi8KKwlfX3UzMiBoYW5kbGU7CisK KwkvKiogTGFiZWwgYW5kIGxhYmVsIGxlbmd0aC4KKwkgKiAgbGVuZ3RoIGluY2x1ZGVzIHRoZSB0 cmFpbGluZyBOVUxMLgorCSAqLworCV9fdTMyIGxlbjsKKwlfX3U2NCBuYW1lOworCisJLyoqIEZs YWdzICovCisJaW50IGZsYWdzOworfTsKKwogI2RlZmluZSBEUk1fQ0FQX0RVTUJfQlVGRkVSCQkw eDEKICNkZWZpbmUgRFJNX0NBUF9WQkxBTktfSElHSF9DUlRDCTB4MgogI2RlZmluZSBEUk1fQ0FQ X0RVTUJfUFJFRkVSUkVEX0RFUFRICTB4MwpAQCAtOTQ2LDYgKzk2NSw3IEBAIGV4dGVybiAiQyIg ewogI2RlZmluZSBEUk1fSU9DVExfU1lOQ09CSl9RVUVSWQkJRFJNX0lPV1IoMHhDQiwgc3RydWN0 IGRybV9zeW5jb2JqX3RpbWVsaW5lX2FycmF5KQogI2RlZmluZSBEUk1fSU9DVExfU1lOQ09CSl9U UkFOU0ZFUglEUk1fSU9XUigweENDLCBzdHJ1Y3QgZHJtX3N5bmNvYmpfdHJhbnNmZXIpCiAjZGVm aW5lIERSTV9JT0NUTF9TWU5DT0JKX1RJTUVMSU5FX1NJR05BTAlEUk1fSU9XUigweENELCBzdHJ1 Y3QgZHJtX3N5bmNvYmpfdGltZWxpbmVfYXJyYXkpCisjZGVmaW5lIERSTV9JT0NUTF9CT19TRVRf TEFCRUwgICAgICBEUk1fSU9XUigweENFLCBzdHJ1Y3QgZHJtX2xhYmVsX29iamVjdCkKIAogLyoq CiAgKiBEZXZpY2Ugc3BlY2lmaWMgaW9jdGxzIHNob3VsZCBvbmx5IGJlIGluIHRoZWlyIHJlc3Bl Y3RpdmUgaGVhZGVycwotLSAKMi4xNy4xCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5m cmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0 aW5mby9kcmktZGV2ZWw=