From mboxrd@z Thu Jan 1 00:00:00 1970 From: Oded Gabbay Subject: [PATCH 08/11] drm/amdkfd: Implement wave control debugger IOCTL Date: Thu, 21 May 2015 00:29:05 +0300 Message-ID: <1432157348-26686-9-git-send-email-oded.gabbay@gmail.com> References: <1432157348-26686-1-git-send-email-oded.gabbay@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wi0-f181.google.com (mail-wi0-f181.google.com [209.85.212.181]) by gabe.freedesktop.org (Postfix) with ESMTP id AA5896E7A7 for ; Wed, 20 May 2015 14:29:31 -0700 (PDT) Received: by wibt6 with SMTP id t6so74377765wib.0 for ; Wed, 20 May 2015 14:29:31 -0700 (PDT) In-Reply-To: <1432157348-26686-1-git-send-email-oded.gabbay@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, alexdeucher@gmail.com List-Id: dri-devel@lists.freedesktop.org RnJvbTogWWFpciBTaGFjaGFyIDx5YWlyLnNoYWNoYXJAYW1kLmNvbT4KClNpZ25lZC1vZmYtYnk6 IFlhaXIgU2hhY2hhciA8eWFpci5zaGFjaGFyQGFtZC5jb20+ClNpZ25lZC1vZmYtYnk6IE9kZWQg R2FiYmF5IDxvZGVkLmdhYmJheUBnbWFpbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2FtZC9h bWRrZmQva2ZkX2NoYXJkZXYuYyB8IDg4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKyst CiAxIGZpbGUgY2hhbmdlZCwgODcgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAt LWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1ka2ZkL2tmZF9jaGFyZGV2LmMgYi9kcml2ZXJz L2dwdS9kcm0vYW1kL2FtZGtmZC9rZmRfY2hhcmRldi5jCmluZGV4IDViOTc3NmQuLjYyODgwODQg MTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1ka2ZkL2tmZF9jaGFyZGV2LmMKKysr IGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRrZmQva2ZkX2NoYXJkZXYuYwpAQCAtNTM3LDcgKzUz Nyw5MyBAQCBzdGF0aWMgaW50IGtmZF9pb2N0bF9kYmdfYWRkcmVzc193YXRjaChzdHJ1Y3QgZmls ZSAqZmlsZXAsCiBzdGF0aWMgaW50IGtmZF9pb2N0bF9kYmdfd2F2ZV9jb250cm9sKHN0cnVjdCBm aWxlICpmaWxlcCwKIAkJCQkJc3RydWN0IGtmZF9wcm9jZXNzICpwLCB2b2lkICpkYXRhKQogewot CWxvbmcgc3RhdHVzID0gLUVGQVVMVDsKKwlzdHJ1Y3Qga2ZkX2lvY3RsX2RiZ193YXZlX2NvbnRy b2xfYXJncyAqYXJncyA9IGRhdGE7CisJc3RydWN0IGtmZF9kZXYgKmRldjsKKwlzdHJ1Y3QgZGJn X3dhdmVfY29udHJvbF9pbmZvIHdhY19pbmZvOworCXVuc2lnbmVkIGNoYXIgKmFyZ3NfYnVmZjsK Kwl1aW50MzJfdCBjb21wdXRlZF9idWZmX3NpemU7CisJbG9uZyBzdGF0dXM7CisJdW5zaWduZWQg aW50IGFyZ3NfaWR4ID0gMDsKKworCW1lbXNldCgodm9pZCAqKSAmd2FjX2luZm8sIDAsIHNpemVv ZihzdHJ1Y3QgZGJnX3dhdmVfY29udHJvbF9pbmZvKSk7CisKKwkvKiB3ZSB1c2UgY29tcGFjdCBm b3JtLCBpbmRlcGVuZGVudCBvZiB0aGUgcGFja2luZyBhdHRyaWJ1dGUgdmFsdWUgKi8KKwljb21w dXRlZF9idWZmX3NpemUgPSBzaXplb2YoKmFyZ3MpICsKKwkJCQlzaXplb2Yod2FjX2luZm8ubW9k ZSkgKworCQkJCXNpemVvZih3YWNfaW5mby5vcGVyYW5kKSArCisJCQkJc2l6ZW9mKHdhY19pbmZv LmRiZ1dhdmVfbXNnLkRiZ1dhdmVNc2cpICsKKwkJCQlzaXplb2Yod2FjX2luZm8uZGJnV2F2ZV9t c2cuTWVtb3J5VkEpICsKKwkJCQlzaXplb2Yod2FjX2luZm8udHJhcElkKTsKKworCWRldiA9IGtm ZF9kZXZpY2VfYnlfaWQoYXJncy0+Z3B1X2lkKTsKKwlpZiAoZGV2ID09IE5VTEwpCisJCXJldHVy biAtRUlOVkFMOworCisJaWYgKGRldi0+ZGV2aWNlX2luZm8tPmFzaWNfZmFtaWx5ID09IENISVBf Q0FSUklaTykgeworCQlwcl9kZWJ1Zygia2ZkX2lvY3RsX2RiZ193YXZlX2NvbnRyb2wgbm90IHN1 cHBvcnRlZCBvbiBDWlxuIik7CisJCXJldHVybiAtRUlOVkFMOworCX0KKworCS8qIGlucHV0IHNp emUgbXVzdCBtYXRjaCB0aGUgY29tcHV0ZWQgImNvbXBhY3QiIHNpemUgKi8KKwlpZiAoYXJncy0+ YnVmX3NpemVfaW5fYnl0ZXMgIT0gY29tcHV0ZWRfYnVmZl9zaXplKSB7CisJCXByX2RlYnVnKCJz aXplIG1pc21hdGNoLCBjb21wdXRlZCA6IGFjdHVhbCAldSA6ICV1XG4iLAorCQkJCWFyZ3MtPmJ1 Zl9zaXplX2luX2J5dGVzLCBjb21wdXRlZF9idWZmX3NpemUpOworCQlyZXR1cm4gLUVJTlZBTDsK Kwl9CisKKwkvKiB0aGlzIGlzIHRoZSBhY3R1YWwgYnVmZmVyIHRvIHdvcmsgd2l0aCAqLworCisJ YXJnc19idWZmID0ga3phbGxvYyhhcmdzLT5idWZfc2l6ZV9pbl9ieXRlcyAtIHNpemVvZigqYXJn cyksCisJCQlHRlBfS0VSTkVMKTsKKworCWlmIChhcmdzX2J1ZmYgPT0gTlVMTCkKKwkJcmV0dXJu IC1FTk9NRU07CisKKwlpZiAoYXJncy0+Y29udGVudF9wdHIgPT0gTlVMTCkgeworCQlrZnJlZShh cmdzX2J1ZmYpOworCQlyZXR1cm4gLUVJTlZBTDsKKwl9CisKKwkvKiBOb3cgY29weSB0aGUgZW50 aXJlIGJ1ZmZlciBmcm9tIHVzZXIgKi8KKwlzdGF0dXMgPSBjb3B5X2Zyb21fdXNlcihhcmdzX2J1 ZmYsCisJCQkJKHZvaWQgX191c2VyICopIGFyZ3MtPmNvbnRlbnRfcHRyLAorCQkJCWFyZ3MtPmJ1 Zl9zaXplX2luX2J5dGVzIC0gc2l6ZW9mKCphcmdzKSk7CisJaWYgKHN0YXR1cyAhPSAwKSB7CisJ CXByX2RlYnVnKCJGYWlsZWQgdG8gY29weSB3YXZlIGNvbnRyb2wgdXNlciBkYXRhXG4iKTsKKwkJ a2ZyZWUoYXJnc19idWZmKTsKKwkJcmV0dXJuIC1FSU5WQUw7CisJfQorCisJLyogbW92ZSBwdHIg dG8gdGhlIHN0YXJ0IG9mIHRoZSAicGF5LWxvYWQiIGFyZWEgKi8KKwl3YWNfaW5mby5wcm9jZXNz ID0gcDsKKworCXdhY19pbmZvLm9wZXJhbmQgPSAqKChlbnVtIEhTQV9EQkdfV0FWRU9QICopKCZh cmdzX2J1ZmZbYXJnc19pZHhdKSk7CisJYXJnc19pZHggKz0gc2l6ZW9mKHdhY19pbmZvLm9wZXJh bmQpOworCisJd2FjX2luZm8ubW9kZSA9ICooKGVudW0gSFNBX0RCR19XQVZFTU9ERSAqKSgmYXJn c19idWZmW2FyZ3NfaWR4XSkpOworCWFyZ3NfaWR4ICs9IHNpemVvZih3YWNfaW5mby5tb2RlKTsK KworCXdhY19pbmZvLnRyYXBJZCA9ICooKHVpbnQzMl90ICopKCZhcmdzX2J1ZmZbYXJnc19pZHhd KSk7CisJYXJnc19pZHggKz0gc2l6ZW9mKHdhY19pbmZvLnRyYXBJZCk7CisKKwl3YWNfaW5mby5k YmdXYXZlX21zZy5EYmdXYXZlTXNnLldhdmVNc2dJbmZvR2VuMi5WYWx1ZSA9CisJCQkJCSooKHVp bnQzMl90ICopKCZhcmdzX2J1ZmZbYXJnc19pZHhdKSk7CisJd2FjX2luZm8uZGJnV2F2ZV9tc2cu TWVtb3J5VkEgPSBOVUxMOworCisJbXV0ZXhfbG9jayhnZXRfZGJnbWdyX211dGV4KCkpOworCisJ cHJfZGVidWcoIkNhbGxpbmcgZGJnIG1hbmFnZXIgcHJvY2VzcyAlcCwgb3BlcmFuZCAldSwgbW9k ZSAldSwgdHJhcElkICV1LCBtZXNzYWdlICV1XG4iLAorCQkJd2FjX2luZm8ucHJvY2Vzcywgd2Fj X2luZm8ub3BlcmFuZCwKKwkJCXdhY19pbmZvLm1vZGUsIHdhY19pbmZvLnRyYXBJZCwKKwkJCXdh Y19pbmZvLmRiZ1dhdmVfbXNnLkRiZ1dhdmVNc2cuV2F2ZU1zZ0luZm9HZW4yLlZhbHVlKTsKKwor CXN0YXR1cyA9IGtmZF9kYmdtZ3Jfd2F2ZV9jb250cm9sKGRldi0+ZGJnbWdyLCAmd2FjX2luZm8p OworCisJcHJfZGVidWcoIlJldHVybmVkIHN0YXR1cyBvZiBkYmcgbWFuYWdlciBpcyAlbGRcbiIs IHN0YXR1cyk7CisKKwltdXRleF91bmxvY2soZ2V0X2RiZ21ncl9tdXRleCgpKTsKKworCWtmcmVl KGFyZ3NfYnVmZik7CiAKIAlyZXR1cm4gc3RhdHVzOwogfQotLSAKMi4xLjAKCl9fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxp c3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0 b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==