From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Zeng, Oak" Subject: [PATCH 6/8] drm/amdkfd: Add function to add/remove gws to kfd process Date: Fri, 10 May 2019 16:01:29 +0000 Message-ID: <1557504063-1559-6-git-send-email-Oak.Zeng@amd.com> References: <1557504063-1559-1-git-send-email-Oak.Zeng@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1557504063-1559-1-git-send-email-Oak.Zeng-5C7GfCeVMHo@public.gmane.org> Content-Language: en-US List-Id: Discussion list for AMD gfx List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: amd-gfx-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "amd-gfx" To: "amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org" Cc: "Kuehling, Felix" , "Zeng, Oak" , "Keely, Sean" R1dTIGJvIGlzIHNoYXJlZCBiZXR3ZWVuIGFsbCBrZmQgcHJvY2Vzc2VzLiBBZGQgZnVuY3Rpb24g dG8gYWRkIGd3cw0KdG8ga2ZkIHByb2Nlc3MncyBibyBsaXN0IHNvIGd3cyBjYW4gYmUgZXZpY3Rl ZCBmcm9tIGFuZCByZXN0b3JlZA0KZm9yIHByb2Nlc3MuDQoNCkNoYW5nZS1JZDogSTc1ZDc0Y2Zk YWRiNzA3NWZmOGIyYjY4NjM0ZTIwNWRlYjczZGMxZWENClNpZ25lZC1vZmYtYnk6IE9hayBaZW5n IDxPYWsuWmVuZ0BhbWQuY29tPg0KLS0tDQogZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1k Z3B1X2FtZGtmZC5oICAgICAgIHwgIDIgKw0KIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2Ft ZGdwdV9hbWRrZmRfZ3B1dm0uYyB8IDk2ICsrKysrKysrKysrKysrKysrKysrKysrKw0KIDIgZmls ZXMgY2hhbmdlZCwgOTggaW5zZXJ0aW9ucygrKQ0KDQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2FtZGtmZC5oIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRn cHUvYW1kZ3B1X2FtZGtmZC5oDQppbmRleCBjMDBjOTc0Li5mOTY4YmYxIDEwMDY0NA0KLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2FtZGtmZC5oDQorKysgYi9kcml2ZXJz L2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfYW1ka2ZkLmgNCkBAIC0xNTUsNiArMTU1LDggQEAg aW50IGFtZGdwdV9hbWRrZmRfYWxsb2NfZ3R0X21lbShzdHJ1Y3Qga2dkX2RldiAqa2dkLCBzaXpl X3Qgc2l6ZSwNCiB2b2lkIGFtZGdwdV9hbWRrZmRfZnJlZV9ndHRfbWVtKHN0cnVjdCBrZ2RfZGV2 ICprZ2QsIHZvaWQgKm1lbV9vYmopOw0KIGludCBhbWRncHVfYW1ka2ZkX2FsbG9jX2d3cyhzdHJ1 Y3Qga2dkX2RldiAqa2dkLCBzaXplX3Qgc2l6ZSwgdm9pZCAqKm1lbV9vYmopOw0KIHZvaWQgYW1k Z3B1X2FtZGtmZF9mcmVlX2d3cyhzdHJ1Y3Qga2dkX2RldiAqa2dkLCB2b2lkICptZW1fb2JqKTsN CitpbnQgYW1kZ3B1X2FtZGtmZF9hZGRfZ3dzX3RvX3Byb2Nlc3Modm9pZCAqaW5mbywgdm9pZCAq Z3dzLCBzdHJ1Y3Qga2dkX21lbSAqKm1lbSk7DQoraW50IGFtZGdwdV9hbWRrZmRfcmVtb3ZlX2d3 c19mcm9tX3Byb2Nlc3Modm9pZCAqaW5mbywgdm9pZCAqbWVtKTsNCiB1aW50MzJfdCBhbWRncHVf YW1ka2ZkX2dldF9md192ZXJzaW9uKHN0cnVjdCBrZ2RfZGV2ICprZ2QsDQogCQkJCSAgICAgIGVu dW0ga2dkX2VuZ2luZV90eXBlIHR5cGUpOw0KIHZvaWQgYW1kZ3B1X2FtZGtmZF9nZXRfbG9jYWxf bWVtX2luZm8oc3RydWN0IGtnZF9kZXYgKmtnZCwNCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vYW1kL2FtZGdwdS9hbWRncHVfYW1ka2ZkX2dwdXZtLmMgYi9kcml2ZXJzL2dwdS9kcm0vYW1k L2FtZGdwdS9hbWRncHVfYW1ka2ZkX2dwdXZtLmMNCmluZGV4IGUxY2FlNGEuLjMyMmMxZGIgMTAw NjQ0DQotLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfYW1ka2ZkX2dwdXZt LmMNCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9hbWRrZmRfZ3B1dm0u Yw0KQEAgLTQ1Nyw2ICs0NTcsMTcgQEAgc3RhdGljIHZvaWQgYWRkX2tnZF9tZW1fdG9fa2ZkX2Jv X2xpc3Qoc3RydWN0IGtnZF9tZW0gKm1lbSwNCiAJbXV0ZXhfdW5sb2NrKCZwcm9jZXNzX2luZm8t PmxvY2spOw0KIH0NCiANCitzdGF0aWMgdm9pZCByZW1vdmVfa2dkX21lbV9mcm9tX2tmZF9ib19s aXN0KHN0cnVjdCBrZ2RfbWVtICptZW0sDQorCQlzdHJ1Y3QgYW1ka2ZkX3Byb2Nlc3NfaW5mbyAq cHJvY2Vzc19pbmZvKQ0KK3sNCisJc3RydWN0IHR0bV92YWxpZGF0ZV9idWZmZXIgKmJvX2xpc3Rf ZW50cnk7DQorDQorCWJvX2xpc3RfZW50cnkgPSAmbWVtLT52YWxpZGF0ZV9saXN0Ow0KKwltdXRl eF9sb2NrKCZwcm9jZXNzX2luZm8tPmxvY2spOw0KKwlsaXN0X2RlbCgmYm9fbGlzdF9lbnRyeS0+ aGVhZCk7DQorCW11dGV4X3VubG9jaygmcHJvY2Vzc19pbmZvLT5sb2NrKTsNCit9DQorDQogLyog SW5pdGlhbGl6ZXMgdXNlciBwYWdlcy4gSXQgcmVnaXN0ZXJzIHRoZSBNTVUgbm90aWZpZXIgYW5k IHZhbGlkYXRlcw0KICAqIHRoZSB1c2VycHRyIEJPIGluIHRoZSBHVFQgZG9tYWluLg0KICAqDQpA QCAtMTE5Nyw2ICsxMjA4LDcgQEAgaW50IGFtZGdwdV9hbWRrZmRfZ3B1dm1fYWxsb2NfbWVtb3J5 X29mX2dwdSgNCiAJcmV0dXJuIDA7DQogDQogYWxsb2NhdGVfaW5pdF91c2VyX3BhZ2VzX2ZhaWxl ZDoNCisJcmVtb3ZlX2tnZF9tZW1fZnJvbV9rZmRfYm9fbGlzdCgqbWVtLCBhdm0tPnByb2Nlc3Nf aW5mbyk7DQogCWFtZGdwdV9ib191bnJlZigmYm8pOw0KIAkvKiBEb24ndCB1bnJlc2VydmUgc3lz dGVtIG1lbSBsaW1pdCB0d2ljZSAqLw0KIAlnb3RvIGVycl9yZXNlcnZlX2xpbWl0Ow0KQEAgLTIx MDQsMyArMjExNiw4NyBAQCBpbnQgYW1kZ3B1X2FtZGtmZF9ncHV2bV9yZXN0b3JlX3Byb2Nlc3Nf Ym9zKHZvaWQgKmluZm8sIHN0cnVjdCBkbWFfZmVuY2UgKiplZikNCiAJa2ZyZWUocGRfYm9fbGlz dCk7DQogCXJldHVybiByZXQ7DQogfQ0KKw0KK2ludCBhbWRncHVfYW1ka2ZkX2FkZF9nd3NfdG9f cHJvY2Vzcyh2b2lkICppbmZvLCB2b2lkICpnd3MsIHN0cnVjdCBrZ2RfbWVtICoqbWVtKQ0KK3sN CisJc3RydWN0IGFtZGtmZF9wcm9jZXNzX2luZm8gKnByb2Nlc3NfaW5mbyA9IChzdHJ1Y3QgYW1k a2ZkX3Byb2Nlc3NfaW5mbyAqKWluZm87DQorCXN0cnVjdCBhbWRncHVfYm8gKmd3c19ibyA9IChz dHJ1Y3QgYW1kZ3B1X2JvICopZ3dzOw0KKwlpbnQgcmV0Ow0KKw0KKwlpZiAoIWluZm8gfHwgIWd3 cykNCisJCXJldHVybiAtRUlOVkFMOw0KKw0KKwkqbWVtID0ga3phbGxvYyhzaXplb2Yoc3RydWN0 IGtnZF9tZW0pLCBHRlBfS0VSTkVMKTsNCisJaWYgKCEqbWVtKQ0KKwkJcmV0dXJuIC1FSU5WQUw7 DQorDQorCW11dGV4X2luaXQoJigqbWVtKS0+bG9jayk7DQorCSgqbWVtKS0+Ym8gPSBhbWRncHVf Ym9fcmVmKGd3c19ibyk7DQorCSgqbWVtKS0+ZG9tYWluID0gQU1ER1BVX0dFTV9ET01BSU5fR1dT Ow0KKwkoKm1lbSktPnByb2Nlc3NfaW5mbyA9IHByb2Nlc3NfaW5mbzsNCisJYWRkX2tnZF9tZW1f dG9fa2ZkX2JvX2xpc3QoKm1lbSwgcHJvY2Vzc19pbmZvLCBmYWxzZSk7DQorCWFtZGdwdV9zeW5j X2NyZWF0ZSgmKCptZW0pLT5zeW5jKTsNCisNCisNCisJLyogVmFsaWRhdGUgZ3dzIGJvIHRoZSBm aXJzdCB0aW1lIGl0IGlzIGFkZGVkIHRvIHByb2Nlc3MgKi8NCisJbXV0ZXhfbG9jaygmKCptZW0p LT5wcm9jZXNzX2luZm8tPmxvY2spOw0KKwlyZXQgPSBhbWRncHVfYm9fcmVzZXJ2ZShnd3NfYm8s IGZhbHNlKTsNCisJaWYgKHVubGlrZWx5KHJldCkpIHsNCisJCXByX2VycigiUmVzZXJ2ZSBnd3Mg Ym8gZmFpbGVkICVkXG4iLCByZXQpOw0KKwkJZ290byBib19yZXNlcnZhdGlvbl9mYWlsdXJlOw0K Kwl9DQorDQorCXJldCA9IGFtZGdwdV9hbWRrZmRfYm9fdmFsaWRhdGUoZ3dzX2JvLCBBTURHUFVf R0VNX0RPTUFJTl9HV1MsIGZhbHNlKTsNCisJaWYgKHJldCkgew0KKwkJcHJfZXJyKCJHV1MgQk8g dmFsaWRhdGUgZmFpbGVkICVkXG4iLCByZXQpOw0KKwkJZ290byBib192YWxpZGF0aW9uX2ZhaWx1 cmU7DQorCX0NCisJLyogR1dTIHJlc291cmNlIGlzIHNoYXJlZCBiL3QgYW1kZ3B1IGFuZCBhbWRr ZmQNCisJICogQWRkIHByb2Nlc3MgZXZpY3Rpb24gZmVuY2UgdG8gYm8gc28gdGhleSBjYW4NCisJ ICogZXZpY3QgZWFjaCBvdGhlci4NCisJICovDQorCWFtZGdwdV9ib19mZW5jZShnd3NfYm8sICZw cm9jZXNzX2luZm8tPmV2aWN0aW9uX2ZlbmNlLT5iYXNlLCB0cnVlKTsNCisJYW1kZ3B1X2JvX3Vu cmVzZXJ2ZShnd3NfYm8pOw0KKwltdXRleF91bmxvY2soJigqbWVtKS0+cHJvY2Vzc19pbmZvLT5s b2NrKTsNCisNCisJcmV0dXJuIHJldDsNCisNCitib192YWxpZGF0aW9uX2ZhaWx1cmU6DQorCWFt ZGdwdV9ib191bnJlc2VydmUoZ3dzX2JvKTsNCitib19yZXNlcnZhdGlvbl9mYWlsdXJlOg0KKwlt dXRleF91bmxvY2soJigqbWVtKS0+cHJvY2Vzc19pbmZvLT5sb2NrKTsNCisJYW1kZ3B1X3N5bmNf ZnJlZSgmKCptZW0pLT5zeW5jKTsNCisJcmVtb3ZlX2tnZF9tZW1fZnJvbV9rZmRfYm9fbGlzdCgq bWVtLCBwcm9jZXNzX2luZm8pOw0KKwlhbWRncHVfYm9fdW5yZWYoJmd3c19ibyk7DQorCW11dGV4 X2Rlc3Ryb3koJigqbWVtKS0+bG9jayk7DQorCWtmcmVlKCptZW0pOw0KKwlyZXR1cm4gcmV0Ow0K K30NCisNCitpbnQgYW1kZ3B1X2FtZGtmZF9yZW1vdmVfZ3dzX2Zyb21fcHJvY2Vzcyh2b2lkICpp bmZvLCB2b2lkICptZW0pDQorew0KKwlpbnQgcmV0Ow0KKwlzdHJ1Y3QgYW1ka2ZkX3Byb2Nlc3Nf aW5mbyAqcHJvY2Vzc19pbmZvID0gKHN0cnVjdCBhbWRrZmRfcHJvY2Vzc19pbmZvICopaW5mbzsN CisJc3RydWN0IGtnZF9tZW0gKmtnZF9tZW0gPSAoc3RydWN0IGtnZF9tZW0gKiltZW07DQorCXN0 cnVjdCBhbWRncHVfYm8gKmd3c19ibyA9IGtnZF9tZW0tPmJvOw0KKw0KKwkvKiBSZW1vdmUgQk8g ZnJvbSBwcm9jZXNzJ3MgdmFsaWRhdGUgbGlzdCBzbyByZXN0b3JlIHdvcmtlciB3b24ndCB0b3Vj aA0KKwkgKiBpdCBhbnltb3JlDQorCSAqLw0KKwlyZW1vdmVfa2dkX21lbV9mcm9tX2tmZF9ib19s aXN0KGtnZF9tZW0sIHByb2Nlc3NfaW5mbyk7DQorDQorCXJldCA9IGFtZGdwdV9ib19yZXNlcnZl KGd3c19ibywgZmFsc2UpOw0KKwlpZiAodW5saWtlbHkocmV0KSkgew0KKwkJcHJfZXJyKCJSZXNl cnZlIGd3cyBibyBmYWlsZWQgJWRcbiIsIHJldCk7DQorCQkvL1RPRE8gYWRkIEJPIGJhY2sgdG8g dmFsaWRhdGVfbGlzdD8NCisJCXJldHVybiByZXQ7DQorCX0NCisJYW1kZ3B1X2FtZGtmZF9yZW1v dmVfZXZpY3Rpb25fZmVuY2UoZ3dzX2JvLA0KKwkJCXByb2Nlc3NfaW5mby0+ZXZpY3Rpb25fZmVu Y2UpOw0KKwlhbWRncHVfYm9fdW5yZXNlcnZlKGd3c19ibyk7DQorCWFtZGdwdV9zeW5jX2ZyZWUo JmtnZF9tZW0tPnN5bmMpOw0KKwlhbWRncHVfYm9fdW5yZWYoJmd3c19ibyk7DQorCW11dGV4X2Rl c3Ryb3koJmtnZF9tZW0tPmxvY2spOw0KKwlrZnJlZShtZW0pOw0KKwlyZXR1cm4gMDsNCit9DQot LSANCjIuNy40DQoNCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fCmFtZC1nZnggbWFpbGluZyBsaXN0CmFtZC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0 dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vYW1kLWdmeA==