From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alex Deucher Subject: [PATCH 8/8] drm/amdgpu: fix and cleanup job destruction Date: Wed, 25 May 2016 17:04:22 -0400 Message-ID: <1464210262-2912-9-git-send-email-alexander.deucher@amd.com> References: <1464210262-2912-1-git-send-email-alexander.deucher@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-ig0-x243.google.com (mail-ig0-x243.google.com [IPv6:2607:f8b0:4001:c05::243]) by gabe.freedesktop.org (Postfix) with ESMTPS id D34916E2A9 for ; Wed, 25 May 2016 21:04:38 +0000 (UTC) Received: by mail-ig0-x243.google.com with SMTP id ct2so2435859igb.3 for ; Wed, 25 May 2016 14:04:38 -0700 (PDT) In-Reply-To: <1464210262-2912-1-git-send-email-alexander.deucher@amd.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 Cc: Alex Deucher , =?UTF-8?q?Christian=20K=C3=B6nig?= List-Id: dri-devel@lists.freedesktop.org RnJvbTogQ2hyaXN0aWFuIEvDtm5pZyA8Y2hyaXN0aWFuLmtvZW5pZ0BhbWQuY29tPgoKUmVtb3Zl IHRoZSBqb2IgcmVmZXJlbmNlIGNvdW50aW5nIGFuZCBqdXN0IHByb3Blcmx5IGRlc3Ryb3kgaXQg ZnJvbSBhCndvcmsgaXRlbSB3aGljaCBibG9ja3Mgb24gYW55IHBvdGVudGlhbCBydW5uaW5nIHRp bWVvdXQgaGFuZGxlci4KClNpZ25lZC1vZmYtYnk6IENocmlzdGlhbiBLw7ZuaWcgPGNocmlzdGlh bi5rb2VuaWdAYW1kLmNvbT4KUmV2aWV3ZWQtYnk6IE1vbmsuTGl1IDxtb25rLmxpdUBhbWQuY29t PgpTaWduZWQtb2ZmLWJ5OiBBbGV4IERldWNoZXIgPGFsZXhhbmRlci5kZXVjaGVyQGFtZC5jb20+ Ci0tLQogZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1LmggICAgICAgICAgIHwgIDEg LQogZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2NzLmMgICAgICAgIHwgIDMgKy0K IGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9qb2IuYyAgICAgICB8IDE4ICsrKy0t LS0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vYW1kL3NjaGVkdWxlci9ncHVfc2NoZWR1bGVyLmMgfCA0 NiArKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0KIGRyaXZlcnMvZ3B1L2RybS9hbWQvc2NoZWR1 bGVyL2dwdV9zY2hlZHVsZXIuaCB8IDI1ICsrKy0tLS0tLS0tLS0tLQogNSBmaWxlcyBjaGFuZ2Vk LCAzMCBpbnNlcnRpb25zKCspLCA2MyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHUuaCBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1 L2FtZGdwdS5oCmluZGV4IGVjNDJkZDUuLmU3MjEwNGIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9hbWQvYW1kZ3B1L2FtZGdwdS5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1 L2FtZGdwdS5oCkBAIC03NTUsNyArNzU1LDYgQEAgaW50IGFtZGdwdV9qb2JfYWxsb2Nfd2l0aF9p YihzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiwgdW5zaWduZWQgc2l6ZSwKIAkJCSAgICAgc3Ry dWN0IGFtZGdwdV9qb2IgKipqb2IpOwogCiB2b2lkIGFtZGdwdV9qb2JfZnJlZShzdHJ1Y3QgYW1k Z3B1X2pvYiAqam9iKTsKLXZvaWQgYW1kZ3B1X2pvYl9mcmVlX2Z1bmMoc3RydWN0IGtyZWYgKnJl ZmNvdW50KTsKIGludCBhbWRncHVfam9iX3N1Ym1pdChzdHJ1Y3QgYW1kZ3B1X2pvYiAqam9iLCBz dHJ1Y3QgYW1kZ3B1X3JpbmcgKnJpbmcsCiAJCSAgICAgIHN0cnVjdCBhbWRfc2NoZWRfZW50aXR5 ICplbnRpdHksIHZvaWQgKm93bmVyLAogCQkgICAgICBzdHJ1Y3QgZmVuY2UgKipmKTsKZGlmZiAt LWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9jcy5jIGIvZHJpdmVycy9n cHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2NzLmMKaW5kZXggZDhjYWMzMS4uYTNkN2QxMyAxMDA2 NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2NzLmMKKysrIGIvZHJp dmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2NzLmMKQEAgLTgzOSw4ICs4MzksNyBAQCBz dGF0aWMgaW50IGFtZGdwdV9jc19zdWJtaXQoc3RydWN0IGFtZGdwdV9jc19wYXJzZXIgKnAsCiAJ cC0+am9iID0gTlVMTDsKIAogCXIgPSBhbWRfc2NoZWRfam9iX2luaXQoJmpvYi0+YmFzZSwgJnJp bmctPnNjaGVkLAotCQkJICAgICAgIGVudGl0eSwgYW1kZ3B1X2pvYl9mcmVlX2Z1bmMsCi0JCQkg ICAgICAgcC0+ZmlscCwgJmZlbmNlKTsKKwkJCSAgICAgICBlbnRpdHksIHAtPmZpbHAsICZmZW5j ZSk7CiAJaWYgKHIpIHsKIAkJYW1kZ3B1X2pvYl9mcmVlKGpvYik7CiAJCXJldHVybiByOwpkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2pvYi5jIGIvZHJpdmVy cy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2pvYi5jCmluZGV4IDMyMTMyZjIuLjM0Y2Q5NzEg MTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9qb2IuYworKysg Yi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfam9iLmMKQEAgLTI4LDEyICsyOCw2 IEBACiAjaW5jbHVkZSAiYW1kZ3B1LmgiCiAjaW5jbHVkZSAiYW1kZ3B1X3RyYWNlLmgiCiAKLXN0 YXRpYyB2b2lkIGFtZGdwdV9qb2JfZnJlZV9oYW5kbGVyKHN0cnVjdCB3b3JrX3N0cnVjdCAqd3Mp Ci17Ci0Jc3RydWN0IGFtZGdwdV9qb2IgKmpvYiA9IGNvbnRhaW5lcl9vZih3cywgc3RydWN0IGFt ZGdwdV9qb2IsIGJhc2Uud29ya19mcmVlX2pvYik7Ci0JYW1kX3NjaGVkX2pvYl9wdXQoJmpvYi0+ YmFzZSk7Ci19Ci0KIHN0YXRpYyB2b2lkIGFtZGdwdV9qb2JfdGltZWRvdXQoc3RydWN0IGFtZF9z Y2hlZF9qb2IgKnNfam9iKQogewogCXN0cnVjdCBhbWRncHVfam9iICpqb2IgPSBjb250YWluZXJf b2Yoc19qb2IsIHN0cnVjdCBhbWRncHVfam9iLCBiYXNlKTsKQEAgLTQyLDggKzM2LDYgQEAgc3Rh dGljIHZvaWQgYW1kZ3B1X2pvYl90aW1lZG91dChzdHJ1Y3QgYW1kX3NjaGVkX2pvYiAqc19qb2Ip CiAJCSAgam9iLT5iYXNlLnNjaGVkLT5uYW1lLAogCQkgIGF0b21pY19yZWFkKCZqb2ItPnJpbmct PmZlbmNlX2Rydi5sYXN0X3NlcSksCiAJCSAgam9iLT5yaW5nLT5mZW5jZV9kcnYuc3luY19zZXEp OwotCi0JYW1kX3NjaGVkX2pvYl9wdXQoJmpvYi0+YmFzZSk7CiB9CiAKIGludCBhbWRncHVfam9i X2FsbG9jKHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2LCB1bnNpZ25lZCBudW1faWJzLApAQCAt NjQsNyArNTYsNiBAQCBpbnQgYW1kZ3B1X2pvYl9hbGxvYyhzdHJ1Y3QgYW1kZ3B1X2RldmljZSAq YWRldiwgdW5zaWduZWQgbnVtX2licywKIAkoKmpvYiktPnZtID0gdm07CiAJKCpqb2IpLT5pYnMg PSAodm9pZCAqKSYoKmpvYilbMV07CiAJKCpqb2IpLT5udW1faWJzID0gbnVtX2liczsKLQlJTklU X1dPUksoJigqam9iKS0+YmFzZS53b3JrX2ZyZWVfam9iLCBhbWRncHVfam9iX2ZyZWVfaGFuZGxl cik7CiAKIAlhbWRncHVfc3luY19jcmVhdGUoJigqam9iKS0+c3luYyk7CiAKQEAgLTEwMyw5ICs5 NCwxMCBAQCBzdGF0aWMgdm9pZCBhbWRncHVfam9iX2ZyZWVfcmVzb3VyY2VzKHN0cnVjdCBhbWRn cHVfam9iICpqb2IpCiAJYW1kZ3B1X3N5bmNfZnJlZSgmam9iLT5zeW5jKTsKIH0KIAotdm9pZCBh bWRncHVfam9iX2ZyZWVfZnVuYyhzdHJ1Y3Qga3JlZiAqcmVmY291bnQpCit2b2lkIGFtZGdwdV9q b2JfZnJlZV9jYihzdHJ1Y3QgYW1kX3NjaGVkX2pvYiAqc19qb2IpCiB7Ci0Jc3RydWN0IGFtZGdw dV9qb2IgKmpvYiA9IGNvbnRhaW5lcl9vZihyZWZjb3VudCwgc3RydWN0IGFtZGdwdV9qb2IsIGJh c2UucmVmY291bnQpOworCXN0cnVjdCBhbWRncHVfam9iICpqb2IgPSBjb250YWluZXJfb2Yoc19q b2IsIHN0cnVjdCBhbWRncHVfam9iLCBiYXNlKTsKKwogCWtmcmVlKGpvYik7CiB9CiAKQEAgLTEy Niw4ICsxMTgsNyBAQCBpbnQgYW1kZ3B1X2pvYl9zdWJtaXQoc3RydWN0IGFtZGdwdV9qb2IgKmpv Yiwgc3RydWN0IGFtZGdwdV9yaW5nICpyaW5nLAogCWlmICghZikKIAkJcmV0dXJuIC1FSU5WQUw7 CiAKLQlyID0gYW1kX3NjaGVkX2pvYl9pbml0KCZqb2ItPmJhc2UsICZyaW5nLT5zY2hlZCwKLQkJ CSAgICAgICBlbnRpdHksIGFtZGdwdV9qb2JfZnJlZV9mdW5jLCBvd25lciwgJmZlbmNlKTsKKwly ID0gYW1kX3NjaGVkX2pvYl9pbml0KCZqb2ItPmJhc2UsICZyaW5nLT5zY2hlZCwgZW50aXR5LCBv d25lciwgJmZlbmNlKTsKIAlpZiAocikKIAkJcmV0dXJuIHI7CiAKQEAgLTE5OCw0ICsxODksNSBA QCBjb25zdCBzdHJ1Y3QgYW1kX3NjaGVkX2JhY2tlbmRfb3BzIGFtZGdwdV9zY2hlZF9vcHMgPSB7 CiAJLmRlcGVuZGVuY3kgPSBhbWRncHVfam9iX2RlcGVuZGVuY3ksCiAJLnJ1bl9qb2IgPSBhbWRn cHVfam9iX3J1biwKIAkudGltZWRvdXRfam9iID0gYW1kZ3B1X2pvYl90aW1lZG91dCwKKwkuZnJl ZV9qb2IgPSBhbWRncHVfam9iX2ZyZWVfY2IKIH07CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vYW1kL3NjaGVkdWxlci9ncHVfc2NoZWR1bGVyLmMgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL3Nj aGVkdWxlci9ncHVfc2NoZWR1bGVyLmMKaW5kZXggY2I1NmQ5MC4uMjQyNTE3MiAxMDA2NDQKLS0t IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9zY2hlZHVsZXIvZ3B1X3NjaGVkdWxlci5jCisrKyBiL2Ry aXZlcnMvZ3B1L2RybS9hbWQvc2NoZWR1bGVyL2dwdV9zY2hlZHVsZXIuYwpAQCAtMzE5LDE5ICsz MTksMTMgQEAgc3RhdGljIGJvb2wgYW1kX3NjaGVkX2VudGl0eV9pbihzdHJ1Y3QgYW1kX3NjaGVk X2pvYiAqc2NoZWRfam9iKQogCXJldHVybiBhZGRlZDsKIH0KIAotc3RhdGljIHZvaWQgYW1kX3Nj aGVkX2ZyZWVfam9iKHN0cnVjdCBmZW5jZSAqZiwgc3RydWN0IGZlbmNlX2NiICpjYikgewotCXN0 cnVjdCBhbWRfc2NoZWRfam9iICpqb2IgPSBjb250YWluZXJfb2YoY2IsIHN0cnVjdCBhbWRfc2No ZWRfam9iLAotCQkJCQkJIGNiX2ZyZWVfam9iKTsKLQotCXNjaGVkdWxlX3dvcmsoJmpvYi0+d29y a19mcmVlX2pvYik7Ci19Ci0KIC8qIGpvYl9maW5pc2ggaXMgY2FsbGVkIGFmdGVyIGh3IGZlbmNl IHNpZ25hbGVkLCBhbmQKICAqIHRoZSBqb2IgaGFkIGFscmVhZHkgYmVlbiBkZWxldGVkIGZyb20g cmluZ19taXJyb3JfbGlzdAogICovCi1zdGF0aWMgdm9pZCBhbWRfc2NoZWRfam9iX2ZpbmlzaChz dHJ1Y3QgYW1kX3NjaGVkX2pvYiAqc19qb2IpCitzdGF0aWMgdm9pZCBhbWRfc2NoZWRfam9iX2Zp bmlzaChzdHJ1Y3Qgd29ya19zdHJ1Y3QgKndvcmspCiB7Ci0Jc3RydWN0IGFtZF9zY2hlZF9qb2Ig Km5leHQ7CisJc3RydWN0IGFtZF9zY2hlZF9qb2IgKnNfam9iID0gY29udGFpbmVyX29mKHdvcmss IHN0cnVjdCBhbWRfc2NoZWRfam9iLAorCQkJCQkJICAgZmluaXNoX3dvcmspOwogCXN0cnVjdCBh bWRfZ3B1X3NjaGVkdWxlciAqc2NoZWQgPSBzX2pvYi0+c2NoZWQ7CiAJdW5zaWduZWQgbG9uZyBm bGFnczsKIApAQCAtMzM5LDE5ICszMzMsMjYgQEAgc3RhdGljIHZvaWQgYW1kX3NjaGVkX2pvYl9m aW5pc2goc3RydWN0IGFtZF9zY2hlZF9qb2IgKnNfam9iKQogCXNwaW5fbG9ja19pcnFzYXZlKCZz Y2hlZC0+am9iX2xpc3RfbG9jaywgZmxhZ3MpOwogCWxpc3RfZGVsX2luaXQoJnNfam9iLT5ub2Rl KTsKIAlpZiAoc2NoZWQtPnRpbWVvdXQgIT0gTUFYX1NDSEVEVUxFX1RJTUVPVVQpIHsKLQkJaWYg KGNhbmNlbF9kZWxheWVkX3dvcmsoJnNfam9iLT53b3JrX3RkcikpCi0JCQlhbWRfc2NoZWRfam9i X3B1dChzX2pvYik7CisJCXN0cnVjdCBhbWRfc2NoZWRfam9iICpuZXh0OworCisJCWNhbmNlbF9k ZWxheWVkX3dvcmtfc3luYygmc19qb2ItPndvcmtfdGRyKTsKIAogCQkvKiBxdWV1ZSBURFIgZm9y IG5leHQgam9iICovCiAJCW5leHQgPSBsaXN0X2ZpcnN0X2VudHJ5X29yX251bGwoJnNjaGVkLT5y aW5nX21pcnJvcl9saXN0LAogCQkJCQkJc3RydWN0IGFtZF9zY2hlZF9qb2IsIG5vZGUpOwogCi0J CWlmIChuZXh0KSB7Ci0JCQlhbWRfc2NoZWRfam9iX2dldChuZXh0KTsKKwkJaWYgKG5leHQpCiAJ CQlzY2hlZHVsZV9kZWxheWVkX3dvcmsoJm5leHQtPndvcmtfdGRyLCBzY2hlZC0+dGltZW91dCk7 Ci0JCX0KIAl9CiAJc3Bpbl91bmxvY2tfaXJxcmVzdG9yZSgmc2NoZWQtPmpvYl9saXN0X2xvY2ss IGZsYWdzKTsKKwlzY2hlZC0+b3BzLT5mcmVlX2pvYihzX2pvYik7Cit9CisKK3N0YXRpYyB2b2lk IGFtZF9zY2hlZF9qb2JfZmluaXNoX2NiKHN0cnVjdCBmZW5jZSAqZiwgc3RydWN0IGZlbmNlX2Ni ICpjYikKK3sKKwlzdHJ1Y3QgYW1kX3NjaGVkX2pvYiAqam9iID0gY29udGFpbmVyX29mKGNiLCBz dHJ1Y3QgYW1kX3NjaGVkX2pvYiwKKwkJCQkJCSBmaW5pc2hfY2IpOworCXNjaGVkdWxlX3dvcmso JmpvYi0+ZmluaXNoX3dvcmspOwogfQogCiBzdGF0aWMgdm9pZCBhbWRfc2NoZWRfam9iX2JlZ2lu KHN0cnVjdCBhbWRfc2NoZWRfam9iICpzX2pvYikKQEAgLTM2NCwxMCArMzY1LDcgQEAgc3RhdGlj IHZvaWQgYW1kX3NjaGVkX2pvYl9iZWdpbihzdHJ1Y3QgYW1kX3NjaGVkX2pvYiAqc19qb2IpCiAJ aWYgKHNjaGVkLT50aW1lb3V0ICE9IE1BWF9TQ0hFRFVMRV9USU1FT1VUICYmCiAJICAgIGxpc3Rf Zmlyc3RfZW50cnlfb3JfbnVsbCgmc2NoZWQtPnJpbmdfbWlycm9yX2xpc3QsCiAJCQkJICAgICBz dHJ1Y3QgYW1kX3NjaGVkX2pvYiwgbm9kZSkgPT0gc19qb2IpCi0JewotCQlhbWRfc2NoZWRfam9i X2dldChzX2pvYik7CiAJCXNjaGVkdWxlX2RlbGF5ZWRfd29yaygmc19qb2ItPndvcmtfdGRyLCBz Y2hlZC0+dGltZW91dCk7Ci0JfQogCXNwaW5fdW5sb2NrX2lycXJlc3RvcmUoJnNjaGVkLT5qb2Jf bGlzdF9sb2NrLCBmbGFncyk7CiB9CiAKQEAgLTM5MCw5ICszODgsOSBAQCB2b2lkIGFtZF9zY2hl ZF9lbnRpdHlfcHVzaF9qb2Ioc3RydWN0IGFtZF9zY2hlZF9qb2IgKnNjaGVkX2pvYikKIHsKIAlz dHJ1Y3QgYW1kX3NjaGVkX2VudGl0eSAqZW50aXR5ID0gc2NoZWRfam9iLT5zX2VudGl0eTsKIAot CWZlbmNlX2FkZF9jYWxsYmFjaygmc2NoZWRfam9iLT5zX2ZlbmNlLT5iYXNlLAotCQkJICAgJnNj aGVkX2pvYi0+Y2JfZnJlZV9qb2IsIGFtZF9zY2hlZF9mcmVlX2pvYik7CiAJdHJhY2VfYW1kX3Nj aGVkX2pvYihzY2hlZF9qb2IpOworCWZlbmNlX2FkZF9jYWxsYmFjaygmc2NoZWRfam9iLT5zX2Zl bmNlLT5iYXNlLCAmc2NoZWRfam9iLT5maW5pc2hfY2IsCisJCQkgICBhbWRfc2NoZWRfam9iX2Zp bmlzaF9jYik7CiAJd2FpdF9ldmVudChlbnRpdHktPnNjaGVkLT5qb2Jfc2NoZWR1bGVkLAogCQkg ICBhbWRfc2NoZWRfZW50aXR5X2luKHNjaGVkX2pvYikpOwogfQpAQCAtNDAxLDIwICszOTksMTcg QEAgdm9pZCBhbWRfc2NoZWRfZW50aXR5X3B1c2hfam9iKHN0cnVjdCBhbWRfc2NoZWRfam9iICpz Y2hlZF9qb2IpCiBpbnQgYW1kX3NjaGVkX2pvYl9pbml0KHN0cnVjdCBhbWRfc2NoZWRfam9iICpq b2IsCiAJCSAgICAgICBzdHJ1Y3QgYW1kX2dwdV9zY2hlZHVsZXIgKnNjaGVkLAogCQkgICAgICAg c3RydWN0IGFtZF9zY2hlZF9lbnRpdHkgKmVudGl0eSwKLQkJICAgICAgIHZvaWQgKCpmcmVlX2Ni KShzdHJ1Y3Qga3JlZiAqcmVmY291bnQpLAogCQkgICAgICAgdm9pZCAqb3duZXIsIHN0cnVjdCBm ZW5jZSAqKmZlbmNlKQogewotCUlOSVRfTElTVF9IRUFEKCZqb2ItPm5vZGUpOwotCWtyZWZfaW5p dCgmam9iLT5yZWZjb3VudCk7CiAJam9iLT5zY2hlZCA9IHNjaGVkOwogCWpvYi0+c19lbnRpdHkg PSBlbnRpdHk7CiAJam9iLT5zX2ZlbmNlID0gYW1kX3NjaGVkX2ZlbmNlX2NyZWF0ZShlbnRpdHks IG93bmVyKTsKIAlpZiAoIWpvYi0+c19mZW5jZSkKIAkJcmV0dXJuIC1FTk9NRU07CiAKLQlqb2It PnNfZmVuY2UtPnNfam9iID0gam9iOworCUlOSVRfV09SSygmam9iLT5maW5pc2hfd29yaywgYW1k X3NjaGVkX2pvYl9maW5pc2gpOworCUlOSVRfTElTVF9IRUFEKCZqb2ItPm5vZGUpOwogCUlOSVRf REVMQVlFRF9XT1JLKCZqb2ItPndvcmtfdGRyLCBhbWRfc2NoZWRfam9iX3RpbWVkb3V0KTsKLQlq b2ItPmZyZWVfY2FsbGJhY2sgPSBmcmVlX2NiOwogCiAJaWYgKGZlbmNlKQogCQkqZmVuY2UgPSAm am9iLT5zX2ZlbmNlLT5iYXNlOwpAQCAtNDY4LDkgKzQ2Myw2IEBAIHN0YXRpYyB2b2lkIGFtZF9z Y2hlZF9wcm9jZXNzX2pvYihzdHJ1Y3QgZmVuY2UgKmYsIHN0cnVjdCBmZW5jZV9jYiAqY2IpCiAJ c3RydWN0IGFtZF9ncHVfc2NoZWR1bGVyICpzY2hlZCA9IHNfZmVuY2UtPnNjaGVkOwogCiAJYXRv bWljX2RlYygmc2NoZWQtPmh3X3JxX2NvdW50KTsKLQotCWFtZF9zY2hlZF9qb2JfZmluaXNoKHNf ZmVuY2UtPnNfam9iKTsKLQogCWFtZF9zY2hlZF9mZW5jZV9zaWduYWwoc19mZW5jZSk7CiAKIAl0 cmFjZV9hbWRfc2NoZWRfcHJvY2Vzc19qb2Ioc19mZW5jZSk7CmRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vYW1kL3NjaGVkdWxlci9ncHVfc2NoZWR1bGVyLmggYi9kcml2ZXJzL2dwdS9kcm0v YW1kL3NjaGVkdWxlci9ncHVfc2NoZWR1bGVyLmgKaW5kZXggZjBkZTQ2Yy4uZTYzMDM0ZSAxMDA2 NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9zY2hlZHVsZXIvZ3B1X3NjaGVkdWxlci5oCisr KyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvc2NoZWR1bGVyL2dwdV9zY2hlZHVsZXIuaApAQCAtNzQs MTkgKzc0LDE2IEBAIHN0cnVjdCBhbWRfc2NoZWRfZmVuY2UgewogCXN0cnVjdCBhbWRfZ3B1X3Nj aGVkdWxlcgkqc2NoZWQ7CiAJc3BpbmxvY2tfdAkJCWxvY2s7CiAJdm9pZCAgICAgICAgICAgICAg ICAgICAgICAgICAgICAqb3duZXI7Ci0Jc3RydWN0IGFtZF9zY2hlZF9qb2IJKnNfam9iOwogfTsK IAogc3RydWN0IGFtZF9zY2hlZF9qb2IgewotCXN0cnVjdCBrcmVmIHJlZmNvdW50OwogCXN0cnVj dCBhbWRfZ3B1X3NjaGVkdWxlciAgICAgICAgKnNjaGVkOwogCXN0cnVjdCBhbWRfc2NoZWRfZW50 aXR5ICAgICAgICAgKnNfZW50aXR5OwogCXN0cnVjdCBhbWRfc2NoZWRfZmVuY2UgICAgICAgICAg KnNfZmVuY2U7Ci0Jc3RydWN0IGZlbmNlX2NiICAgICAgICAgICAgICAgIGNiX2ZyZWVfam9iOwot CXN0cnVjdCB3b3JrX3N0cnVjdCAgICAgICAgICAgICB3b3JrX2ZyZWVfam9iOwotCXN0cnVjdCBs aXN0X2hlYWQJCQkgICBub2RlOwotCXN0cnVjdCBkZWxheWVkX3dvcmsgd29ya190ZHI7Ci0Jdm9p ZCAoKmZyZWVfY2FsbGJhY2spKHN0cnVjdCBrcmVmICpyZWZjb3VudCk7CisJc3RydWN0IGZlbmNl X2NiCQkJZmluaXNoX2NiOworCXN0cnVjdCB3b3JrX3N0cnVjdAkJZmluaXNoX3dvcms7CisJc3Ry dWN0IGxpc3RfaGVhZAkJbm9kZTsKKwlzdHJ1Y3QgZGVsYXllZF93b3JrCQl3b3JrX3RkcjsKIH07 CiAKIGV4dGVybiBjb25zdCBzdHJ1Y3QgZmVuY2Vfb3BzIGFtZF9zY2hlZF9mZW5jZV9vcHM7CkBA IC0xMDksNiArMTA2LDcgQEAgc3RydWN0IGFtZF9zY2hlZF9iYWNrZW5kX29wcyB7CiAJc3RydWN0 IGZlbmNlICooKmRlcGVuZGVuY3kpKHN0cnVjdCBhbWRfc2NoZWRfam9iICpzY2hlZF9qb2IpOwog CXN0cnVjdCBmZW5jZSAqKCpydW5fam9iKShzdHJ1Y3QgYW1kX3NjaGVkX2pvYiAqc2NoZWRfam9i KTsKIAl2b2lkICgqdGltZWRvdXRfam9iKShzdHJ1Y3QgYW1kX3NjaGVkX2pvYiAqc2NoZWRfam9i KTsKKwl2b2lkICgqZnJlZV9qb2IpKHN0cnVjdCBhbWRfc2NoZWRfam9iICpzY2hlZF9qb2IpOwog fTsKIAogZW51bSBhbWRfc2NoZWRfcHJpb3JpdHkgewpAQCAtMTU0LDE4ICsxNTIsNSBAQCB2b2lk IGFtZF9zY2hlZF9mZW5jZV9zaWduYWwoc3RydWN0IGFtZF9zY2hlZF9mZW5jZSAqZmVuY2UpOwog aW50IGFtZF9zY2hlZF9qb2JfaW5pdChzdHJ1Y3QgYW1kX3NjaGVkX2pvYiAqam9iLAogCQkgICAg ICAgc3RydWN0IGFtZF9ncHVfc2NoZWR1bGVyICpzY2hlZCwKIAkJICAgICAgIHN0cnVjdCBhbWRf c2NoZWRfZW50aXR5ICplbnRpdHksCi0JCSAgICAgICB2b2lkICgqZnJlZV9jYikoc3RydWN0IGty ZWYqIHJlZmNvdW50KSwKIAkJICAgICAgIHZvaWQgKm93bmVyLCBzdHJ1Y3QgZmVuY2UgKipmZW5j ZSk7Ci1zdGF0aWMgaW5saW5lIHZvaWQgYW1kX3NjaGVkX2pvYl9nZXQoc3RydWN0IGFtZF9zY2hl ZF9qb2IgKmpvYikKLXsKLQlpZiAoam9iKQotCQlrcmVmX2dldCgmam9iLT5yZWZjb3VudCk7Ci19 Ci0KLXN0YXRpYyBpbmxpbmUgdm9pZCBhbWRfc2NoZWRfam9iX3B1dChzdHJ1Y3QgYW1kX3NjaGVk X2pvYiAqam9iKQotewotCWlmIChqb2IpCi0JCWtyZWZfcHV0KCZqb2ItPnJlZmNvdW50LCBqb2It PmZyZWVfY2FsbGJhY2spOwotfQotCiAjZW5kaWYKLS0gCjIuNS41CgpfX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRy aS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5v cmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK