From mboxrd@z Thu Jan 1 00:00:00 1970 From: Kenny Ho Subject: [RFC PATCH v2 2/5] cgroup: Add mechanism to register DRM devices Date: Thu, 9 May 2019 17:04:07 -0400 Message-ID: <20190509210410.5471-3-Kenny.Ho@amd.com> References: <20181120185814.13362-1-Kenny.Ho@amd.com> <20190509210410.5471-1-Kenny.Ho@amd.com> Mime-Version: 1.0 Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20190509210410.5471-1-Kenny.Ho-5C7GfCeVMHo@public.gmane.org> List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: amd-gfx-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "amd-gfx" Content-Type: text/plain; charset="us-ascii" To: y2kenny-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org, Kenny.Ho-5C7GfCeVMHo@public.gmane.org, cgroups-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, tj-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org, sunnanyong-hv44wF8Li93QT0dZR+AlfA@public.gmane.org, alexander.deucher-5C7GfCeVMHo@public.gmane.org, brian.welty-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org Q2hhbmdlLUlkOiBJOTA4ZWU2OTc1ZWEwNTg1ZTRjMzBlYWZkZTQ1OTlmODcwOTRkOGM2NQpTaWdu ZWQtb2ZmLWJ5OiBLZW5ueSBIbyA8S2VubnkuSG9AYW1kLmNvbT4KLS0tCiBpbmNsdWRlL2RybS9k cm1fY2dyb3VwLmggICB8ICAyNCArKysrKysrKwogaW5jbHVkZS9saW51eC9jZ3JvdXBfZHJtLmgg fCAgMTAgKysrKwoga2VybmVsL2Nncm91cC9kcm0uYyAgICAgICAgfCAxMTggKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrLQogMyBmaWxlcyBjaGFuZ2VkLCAxNTEgaW5zZXJ0aW9u cygrKSwgMSBkZWxldGlvbigtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvZHJtL2RybV9j Z3JvdXAuaAoKZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL2RybV9jZ3JvdXAuaCBiL2luY2x1ZGUv ZHJtL2RybV9jZ3JvdXAuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAu LmRkYjllYWI2NDM2MAotLS0gL2Rldi9udWxsCisrKyBiL2luY2x1ZGUvZHJtL2RybV9jZ3JvdXAu aApAQCAtMCwwICsxLDI0IEBACisvKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUCisgKiBD b3B5cmlnaHQgMjAxOSBBZHZhbmNlZCBNaWNybyBEZXZpY2VzLCBJbmMuCisgKi8KKyNpZm5kZWYg X19EUk1fQ0dST1VQX0hfXworI2RlZmluZSBfX0RSTV9DR1JPVVBfSF9fCisKKyNpZmRlZiBDT05G SUdfQ0dST1VQX0RSTQorCitpbnQgZHJtY2dycF9yZWdpc3Rlcl9kZXZpY2Uoc3RydWN0IGRybV9k ZXZpY2UgKmRldmljZSk7CisKK2ludCBkcm1jZ3JwX3VucmVnaXN0ZXJfZGV2aWNlKHN0cnVjdCBk cm1fZGV2aWNlICpkZXZpY2UpOworCisjZWxzZQorc3RhdGljIGlubGluZSBpbnQgZHJtY2dycF9y ZWdpc3Rlcl9kZXZpY2Uoc3RydWN0IGRybV9kZXZpY2UgKmRldmljZSkKK3sKKwlyZXR1cm4gMDsK K30KKworc3RhdGljIGlubGluZSBpbnQgZHJtY2dycF91bnJlZ2lzdGVyX2RldmljZShzdHJ1Y3Qg ZHJtX2RldmljZSAqZGV2aWNlKQoreworCXJldHVybiAwOworfQorI2VuZGlmIC8qIENPTkZJR19D R1JPVVBfRFJNICovCisjZW5kaWYgLyogX19EUk1fQ0dST1VQX0hfXyAqLwpkaWZmIC0tZ2l0IGEv aW5jbHVkZS9saW51eC9jZ3JvdXBfZHJtLmggYi9pbmNsdWRlL2xpbnV4L2Nncm91cF9kcm0uaApp bmRleCAxMjEwMDFiZTEyMzAuLmQ3Y2NmNDM0Y2E2YiAxMDA2NDQKLS0tIGEvaW5jbHVkZS9saW51 eC9jZ3JvdXBfZHJtLmgKKysrIGIvaW5jbHVkZS9saW51eC9jZ3JvdXBfZHJtLmgKQEAgLTYsMTAg KzYsMjAgQEAKIAogI2lmZGVmIENPTkZJR19DR1JPVVBfRFJNCiAKKyNpbmNsdWRlIDxsaW51eC9t dXRleC5oPgogI2luY2x1ZGUgPGxpbnV4L2Nncm91cC5oPgorI2luY2x1ZGUgPGRybS9kcm1fZmls ZS5oPgorCisvKiBsaW1pdCBkZWZpbmVkIHBlciB0aGUgd2F5IGRybV9taW5vcl9hbGxvYyBvcGVy YXRlcyAqLworI2RlZmluZSBNQVhfRFJNX0RFViAoNjQgKiBEUk1fTUlOT1JfUkVOREVSKQorCitz dHJ1Y3QgZHJtY2dycF9kZXZpY2VfcmVzb3VyY2UgeworCS8qIGZvciBwZXIgZGV2aWNlIHN0YXRz ICovCit9OwogCiBzdHJ1Y3QgZHJtY2dycCB7CiAJc3RydWN0IGNncm91cF9zdWJzeXNfc3RhdGUJ Y3NzOworCXN0cnVjdCBkcm1jZ3JwX2RldmljZV9yZXNvdXJjZQkqZGV2X3Jlc291cmNlc1tNQVhf RFJNX0RFVl07CiB9OwogCiBzdGF0aWMgaW5saW5lIHN0cnVjdCBkcm1jZ3JwICpjc3NfZHJtY2dy cChzdHJ1Y3QgY2dyb3VwX3N1YnN5c19zdGF0ZSAqY3NzKQpkaWZmIC0tZ2l0IGEva2VybmVsL2Nn cm91cC9kcm0uYyBiL2tlcm5lbC9jZ3JvdXAvZHJtLmMKaW5kZXggNjIwYzg4N2Q2ZDI0Li5mOWVm NGJmMDQyZDggMTAwNjQ0Ci0tLSBhL2tlcm5lbC9jZ3JvdXAvZHJtLmMKKysrIGIva2VybmVsL2Nn cm91cC9kcm0uYwpAQCAtMSwxNiArMSw3OSBAQAogLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6 IE1JVAogLy8gQ29weXJpZ2h0IDIwMTkgQWR2YW5jZWQgTWljcm8gRGV2aWNlcywgSW5jLgorI2lu Y2x1ZGUgPGxpbnV4L2V4cG9ydC5oPgogI2luY2x1ZGUgPGxpbnV4L3NsYWIuaD4KICNpbmNsdWRl IDxsaW51eC9jZ3JvdXAuaD4KKyNpbmNsdWRlIDxsaW51eC9mcy5oPgorI2luY2x1ZGUgPGxpbnV4 L3NlcV9maWxlLmg+CisjaW5jbHVkZSA8bGludXgvbXV0ZXguaD4KICNpbmNsdWRlIDxsaW51eC9j Z3JvdXBfZHJtLmg+CisjaW5jbHVkZSA8ZHJtL2RybV9kZXZpY2UuaD4KKyNpbmNsdWRlIDxkcm0v ZHJtX2Nncm91cC5oPgorCitzdGF0aWMgREVGSU5FX01VVEVYKGRybWNncnBfbXV0ZXgpOworCitz dHJ1Y3QgZHJtY2dycF9kZXZpY2UgeworCXN0cnVjdCBkcm1fZGV2aWNlCSpkZXY7CisJc3RydWN0 IG11dGV4CQltdXRleDsKK307CisKKy8qIGluZGV4ZWQgYnkgZHJtX21pbm9yIGZvciBhY2Nlc3Mg c3BlZWQgKi8KK3N0YXRpYyBzdHJ1Y3QgZHJtY2dycF9kZXZpY2UJKmtub3duX2RybWNncnBfZGV2 c1tNQVhfRFJNX0RFVl07CisKK3N0YXRpYyBpbnQgbWF4X21pbm9yOworCiAKIHN0YXRpYyBzdHJ1 Y3QgZHJtY2dycCAqcm9vdF9kcm1jZ3JwIF9fcmVhZF9tb3N0bHk7CiAKIHN0YXRpYyB2b2lkIGRy bWNncnBfY3NzX2ZyZWUoc3RydWN0IGNncm91cF9zdWJzeXNfc3RhdGUgKmNzcykKIHsKIAlzdHJ1 Y3QgZHJtY2dycCAqZHJtY2dycCA9IGNzc19kcm1jZ3JwKGNzcyk7CisJaW50IGk7CisKKwlmb3Ig KGkgPSAwOyBpIDw9IG1heF9taW5vcjsgaSsrKSB7CisJCWlmIChkcm1jZ3JwLT5kZXZfcmVzb3Vy Y2VzW2ldICE9IE5VTEwpCisJCQlrZnJlZShkcm1jZ3JwLT5kZXZfcmVzb3VyY2VzW2ldKTsKKwl9 CisKKwlrZnJlZShkcm1jZ3JwKTsKK30KKworc3RhdGljIGlubGluZSBpbnQgaW5pdF9kcm1jZ3Jw X3NpbmdsZShzdHJ1Y3QgZHJtY2dycCAqZHJtY2dycCwgaW50IGkpCit7CisJc3RydWN0IGRybWNn cnBfZGV2aWNlX3Jlc291cmNlICpkZHIgPSBkcm1jZ3JwLT5kZXZfcmVzb3VyY2VzW2ldOworCisJ aWYgKGRkciA9PSBOVUxMKSB7CisJCWRkciA9IGt6YWxsb2Moc2l6ZW9mKHN0cnVjdCBkcm1jZ3Jw X2RldmljZV9yZXNvdXJjZSksCisJCQlHRlBfS0VSTkVMKTsKKworCQlpZiAoIWRkcikKKwkJCXJl dHVybiAtRU5PTUVNOworCisJCWRybWNncnAtPmRldl9yZXNvdXJjZXNbaV0gPSBkZHI7CisJfQor CisJLyogc2V0IGRlZmF1bHRzIGhlcmUgKi8KKworCXJldHVybiAwOworfQorCitzdGF0aWMgaW5s aW5lIGludCBpbml0X2RybWNncnAoc3RydWN0IGRybWNncnAgKmRybWNncnAsIHN0cnVjdCBkcm1f ZGV2aWNlICpkZXYpCit7CisJaW50IHJjID0gMDsKKwlpbnQgaTsKKworCWlmIChkZXYgIT0gTlVM TCkgeworCQlyYyA9IGluaXRfZHJtY2dycF9zaW5nbGUoZHJtY2dycCwgZGV2LT5wcmltYXJ5LT5p bmRleCk7CisJCXJldHVybiByYzsKKwl9CisKKwlmb3IgKGkgPSAwOyBpIDw9IG1heF9taW5vcjsg aSsrKSB7CisJCXJjID0gaW5pdF9kcm1jZ3JwX3NpbmdsZShkcm1jZ3JwLCBpKTsKKwkJaWYgKHJj KQorCQkJcmV0dXJuIHJjOworCX0KIAotCWtmcmVlKGNzc19kcm1jZ3JwKGNzcykpOworCXJldHVy biAwOwogfQogCiBzdGF0aWMgc3RydWN0IGNncm91cF9zdWJzeXNfc3RhdGUgKgpAQCAtMTgsMTEg KzgxLDE4IEBAIGRybWNncnBfY3NzX2FsbG9jKHN0cnVjdCBjZ3JvdXBfc3Vic3lzX3N0YXRlICpw YXJlbnRfY3NzKQogewogCXN0cnVjdCBkcm1jZ3JwICpwYXJlbnQgPSBjc3NfZHJtY2dycChwYXJl bnRfY3NzKTsKIAlzdHJ1Y3QgZHJtY2dycCAqZHJtY2dycDsKKwlpbnQgcmM7CiAKIAlkcm1jZ3Jw ID0ga3phbGxvYyhzaXplb2Yoc3RydWN0IGRybWNncnApLCBHRlBfS0VSTkVMKTsKIAlpZiAoIWRy bWNncnApCiAJCXJldHVybiBFUlJfUFRSKC1FTk9NRU0pOwogCisJcmMgPSBpbml0X2RybWNncnAo ZHJtY2dycCwgTlVMTCk7CisJaWYgKHJjKSB7CisJCWRybWNncnBfY3NzX2ZyZWUoJmRybWNncnAt PmNzcyk7CisJCXJldHVybiBFUlJfUFRSKHJjKTsKKwl9CisKIAlpZiAoIXBhcmVudCkKIAkJcm9v dF9kcm1jZ3JwID0gZHJtY2dycDsKIApAQCAtNDAsMyArMTEwLDQ5IEBAIHN0cnVjdCBjZ3JvdXBf c3Vic3lzIGRybV9jZ3JwX3N1YnN5cyA9IHsKIAkubGVnYWN5X2NmdHlwZXMJPSBmaWxlcywKIAku ZGZsX2NmdHlwZXMJPSBmaWxlcywKIH07CisKK2ludCBkcm1jZ3JwX3JlZ2lzdGVyX2RldmljZShz dHJ1Y3QgZHJtX2RldmljZSAqZGV2KQoreworCXN0cnVjdCBkcm1jZ3JwX2RldmljZSAqZGRldjsK KwlzdHJ1Y3QgY2dyb3VwX3N1YnN5c19zdGF0ZSAqcG9zOworCXN0cnVjdCBkcm1jZ3JwICpjaGls ZDsKKworCWRkZXYgPSBremFsbG9jKHNpemVvZihzdHJ1Y3QgZHJtY2dycF9kZXZpY2UpLCBHRlBf S0VSTkVMKTsKKwlpZiAoIWRkZXYpCisJCXJldHVybiAtRU5PTUVNOworCisJZGRldi0+ZGV2ID0g ZGV2OworCW11dGV4X2luaXQoJmRkZXYtPm11dGV4KTsKKworCW11dGV4X2xvY2soJmRybWNncnBf bXV0ZXgpOworCWtub3duX2RybWNncnBfZGV2c1tkZXYtPnByaW1hcnktPmluZGV4XSA9IGRkZXY7 CisJbWF4X21pbm9yID0gbWF4KG1heF9taW5vciwgZGV2LT5wcmltYXJ5LT5pbmRleCk7CisJbXV0 ZXhfdW5sb2NrKCZkcm1jZ3JwX211dGV4KTsKKworCS8qIGluaXQgY2dyb3VwcyBjcmVhdGVkIGJl Zm9yZSByZWdpc3RyYXRpb24gKGkuZS4gcm9vdCBjZ3JvdXApICovCisJaWYgKHJvb3RfZHJtY2dy cCAhPSBOVUxMKSB7CisJCWluaXRfZHJtY2dycChyb290X2RybWNncnAsIGRldik7CisKKwkJcmN1 X3JlYWRfbG9jaygpOworCQljc3NfZm9yX2VhY2hfY2hpbGQocG9zLCAmcm9vdF9kcm1jZ3JwLT5j c3MpIHsKKwkJCWNoaWxkID0gY3NzX2RybWNncnAocG9zKTsKKwkJCWluaXRfZHJtY2dycChjaGls ZCwgZGV2KTsKKwkJfQorCQlyY3VfcmVhZF91bmxvY2soKTsKKwl9CisKKwlyZXR1cm4gMDsKK30K K0VYUE9SVF9TWU1CT0woZHJtY2dycF9yZWdpc3Rlcl9kZXZpY2UpOworCitpbnQgZHJtY2dycF91 bnJlZ2lzdGVyX2RldmljZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQoreworCW11dGV4X2xvY2so JmRybWNncnBfbXV0ZXgpOworCisJa2ZyZWUoa25vd25fZHJtY2dycF9kZXZzW2Rldi0+cHJpbWFy eS0+aW5kZXhdKTsKKwlrbm93bl9kcm1jZ3JwX2RldnNbZGV2LT5wcmltYXJ5LT5pbmRleF0gPSBO VUxMOworCisJbXV0ZXhfdW5sb2NrKCZkcm1jZ3JwX211dGV4KTsKKwlyZXR1cm4gMDsKK30KK0VY UE9SVF9TWU1CT0woZHJtY2dycF91bnJlZ2lzdGVyX2RldmljZSk7Ci0tIAoyLjIxLjAKCl9fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmFtZC1nZnggbWFpbGlu ZyBsaXN0CmFtZC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRl c2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vYW1kLWdmeA==