From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andres Rodriguez Subject: [PATCH 13/17] drm/amdgpu: remove duplicate magic constants from amdgpu_amdkfd_gfx*.c Date: Fri, 21 Apr 2017 16:02:38 -0400 Message-ID: <20170421200242.3072-14-andresx7@gmail.com> References: <20170421200242.3072-1-andresx7@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20170421200242.3072-1-andresx7-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> 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: andresx7-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org VGhpcyBpbmZvcm1hdGlvbiBpcyBhbHJlYWR5IGF2YWlsYWJsZSBpbiBhZGV2LgoKUmV2aWV3ZWQt Ynk6IEVkd2FyZCBPJ0NhbGxhZ2hhbiA8ZnVuZnVuY3RvckBmb2xrbG9yZTE5ODQubmV0PgpSZXZp ZXdlZC1ieTogRmVsaXggS3VlaGxpbmcgPEZlbGl4Lkt1ZWhsaW5nQGFtZC5jb20+CkFja2VkLWJ5 OiBDaHJpc3RpYW4gS8O2bmlnIDxjaHJpc3RpYW4ua29lbmlnQGFtZC5jb20+ClNpZ25lZC1vZmYt Ynk6IEFuZHJlcyBSb2RyaWd1ZXogPGFuZHJlc3g3QGdtYWlsLmNvbT4KLS0tCiBkcml2ZXJzL2dw dS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfYW1ka2ZkX2dmeF92Ny5jIHwgMTIgKysrKysrLS0tLS0t CiBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfYW1ka2ZkX2dmeF92OC5jIHwgMTIg KysrKysrLS0tLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDEyIGluc2VydGlvbnMoKyksIDEyIGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9h bWRrZmRfZ2Z4X3Y3LmMgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfYW1ka2Zk X2dmeF92Ny5jCmluZGV4IDkxMGY5ZDMuLjUyNTQ1NjIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9hbWRrZmRfZ2Z4X3Y3LmMKKysrIGIvZHJpdmVycy9ncHUv ZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2FtZGtmZF9nZnhfdjcuYwpAQCAtMjIsNDIgKzIyLDQwIEBA CiAKICNpbmNsdWRlIDxsaW51eC9mZHRhYmxlLmg+CiAjaW5jbHVkZSA8bGludXgvdWFjY2Vzcy5o PgogI2luY2x1ZGUgPGxpbnV4L2Zpcm13YXJlLmg+CiAjaW5jbHVkZSA8ZHJtL2RybVAuaD4KICNp bmNsdWRlICJhbWRncHUuaCIKICNpbmNsdWRlICJhbWRncHVfYW1ka2ZkLmgiCiAjaW5jbHVkZSAi Y2lrZC5oIgogI2luY2x1ZGUgImNpa19zZG1hLmgiCiAjaW5jbHVkZSAiYW1kZ3B1X3Vjb2RlLmgi CiAjaW5jbHVkZSAiZ2Z4X3Y3XzAuaCIKICNpbmNsdWRlICJnY2EvZ2Z4XzdfMl9kLmgiCiAjaW5j bHVkZSAiZ2NhL2dmeF83XzJfZW51bS5oIgogI2luY2x1ZGUgImdjYS9nZnhfN18yX3NoX21hc2su aCIKICNpbmNsdWRlICJvc3Mvb3NzXzJfMF9kLmgiCiAjaW5jbHVkZSAib3NzL29zc18yXzBfc2hf bWFzay5oIgogI2luY2x1ZGUgImdtYy9nbWNfN18xX2QuaCIKICNpbmNsdWRlICJnbWMvZ21jXzdf MV9zaF9tYXNrLmgiCiAjaW5jbHVkZSAiY2lrX3N0cnVjdHMuaCIKIAotI2RlZmluZSBDSUtfUElQ RV9QRVJfTUVDCSg0KQotCiBlbnVtIHsKIAlNQVhfVFJBUElEID0gOCwJCS8qIDMgYml0cyBpbiB0 aGUgYml0ZmllbGQuICovCiAJTUFYX1dBVENIX0FERFJFU1NFUyA9IDQKIH07CiAKIGVudW0gewog CUFERFJFU1NfV0FUQ0hfUkVHX0FERFJfSEkgPSAwLAogCUFERFJFU1NfV0FUQ0hfUkVHX0FERFJf TE8sCiAJQUREUkVTU19XQVRDSF9SRUdfQ05UTCwKIAlBRERSRVNTX1dBVENIX1JFR19NQVgKIH07 CiAKIC8qICBub3QgZGVmaW5lZCBpbiB0aGUgQ0kvS1YgcmVnIGZpbGUgICovCiBlbnVtIHsKIAlB RERSRVNTX1dBVENIX1JFR19DTlRMX0FUQ19CSVQgPSAweDEwMDAwMDAwVUwsCiAJQUREUkVTU19X QVRDSF9SRUdfQ05UTF9ERUZBVUxUX01BU0sgPSAweDAwRkZGRkZGLAogCUFERFJFU1NfV0FUQ0hf UkVHX0FERExPV19NQVNLX0VYVEVOU0lPTiA9IDB4MDMwMDAwMDAsCiAJLyogZXh0ZW5kIHRoZSBt YXNrIHRvIDI2IGJpdHMgdG8gbWF0Y2ggdGhlIGxvdyBhZGRyZXNzIGZpZWxkICovCiAJQUREUkVT U19XQVRDSF9SRUdfQURETE9XX1NISUZUID0gNiwKIAlBRERSRVNTX1dBVENIX1JFR19BRERISUdI X01BU0sgPSAweEZGRkYKQEAgLTE2OSw0MiArMTY3LDQ0IEBAIHN0YXRpYyB2b2lkIGxvY2tfc3Ji bShzdHJ1Y3Qga2dkX2RldiAqa2dkLCB1aW50MzJfdCBtZWMsIHVpbnQzMl90IHBpcGUsCiAJCQl1 aW50MzJfdCBxdWV1ZSwgdWludDMyX3Qgdm1pZCkKIHsKIAlzdHJ1Y3QgYW1kZ3B1X2RldmljZSAq YWRldiA9IGdldF9hbWRncHVfZGV2aWNlKGtnZCk7CiAJdWludDMyX3QgdmFsdWUgPSBQSVBFSUQo cGlwZSkgfCBNRUlEKG1lYykgfCBWTUlEKHZtaWQpIHwgUVVFVUVJRChxdWV1ZSk7CiAKIAltdXRl eF9sb2NrKCZhZGV2LT5zcmJtX211dGV4KTsKIAlXUkVHMzIobW1TUkJNX0dGWF9DTlRMLCB2YWx1 ZSk7CiB9CiAKIHN0YXRpYyB2b2lkIHVubG9ja19zcmJtKHN0cnVjdCBrZ2RfZGV2ICprZ2QpCiB7 CiAJc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYgPSBnZXRfYW1kZ3B1X2RldmljZShrZ2QpOwog CiAJV1JFRzMyKG1tU1JCTV9HRlhfQ05UTCwgMCk7CiAJbXV0ZXhfdW5sb2NrKCZhZGV2LT5zcmJt X211dGV4KTsKIH0KIAogc3RhdGljIHZvaWQgYWNxdWlyZV9xdWV1ZShzdHJ1Y3Qga2dkX2RldiAq a2dkLCB1aW50MzJfdCBwaXBlX2lkLAogCQkJCXVpbnQzMl90IHF1ZXVlX2lkKQogewotCXVpbnQz Ml90IG1lYyA9ICgrK3BpcGVfaWQgLyBDSUtfUElQRV9QRVJfTUVDKSArIDE7Ci0JdWludDMyX3Qg cGlwZSA9IChwaXBlX2lkICUgQ0lLX1BJUEVfUEVSX01FQyk7CisJc3RydWN0IGFtZGdwdV9kZXZp Y2UgKmFkZXYgPSBnZXRfYW1kZ3B1X2RldmljZShrZ2QpOworCisJdWludDMyX3QgbWVjID0gKCsr cGlwZV9pZCAvIGFkZXYtPmdmeC5tZWMubnVtX3BpcGVfcGVyX21lYykgKyAxOworCXVpbnQzMl90 IHBpcGUgPSAocGlwZV9pZCAlIGFkZXYtPmdmeC5tZWMubnVtX3BpcGVfcGVyX21lYyk7CiAKIAls b2NrX3NyYm0oa2dkLCBtZWMsIHBpcGUsIHF1ZXVlX2lkLCAwKTsKIH0KIAogc3RhdGljIHZvaWQg cmVsZWFzZV9xdWV1ZShzdHJ1Y3Qga2dkX2RldiAqa2dkKQogewogCXVubG9ja19zcmJtKGtnZCk7 CiB9CiAKIHN0YXRpYyB2b2lkIGtnZF9wcm9ncmFtX3NoX21lbV9zZXR0aW5ncyhzdHJ1Y3Qga2dk X2RldiAqa2dkLCB1aW50MzJfdCB2bWlkLAogCQkJCQl1aW50MzJfdCBzaF9tZW1fY29uZmlnLAog CQkJCQl1aW50MzJfdCBzaF9tZW1fYXBlMV9iYXNlLAogCQkJCQl1aW50MzJfdCBzaF9tZW1fYXBl MV9saW1pdCwKIAkJCQkJdWludDMyX3Qgc2hfbWVtX2Jhc2VzKQogewogCXN0cnVjdCBhbWRncHVf ZGV2aWNlICphZGV2ID0gZ2V0X2FtZGdwdV9kZXZpY2Uoa2dkKTsKIAogCWxvY2tfc3JibShrZ2Qs IDAsIDAsIDAsIHZtaWQpOwogCiAJV1JFRzMyKG1tU0hfTUVNX0NPTkZJRywgc2hfbWVtX2NvbmZp Zyk7CkBAIC0yMzcsNDIgKzIzNyw0MiBAQCBzdGF0aWMgaW50IGtnZF9zZXRfcGFzaWRfdm1pZF9t YXBwaW5nKHN0cnVjdCBrZ2RfZGV2ICprZ2QsIHVuc2lnbmVkIGludCBwYXNpZCwKIAogCS8qIE1h cHBpbmcgdm1pZCB0byBwYXNpZCBhbHNvIGZvciBJSCBibG9jayAqLwogCVdSRUczMihtbUlIX1ZN SURfMF9MVVQgKyB2bWlkLCBwYXNpZF9tYXBwaW5nKTsKIAogCXJldHVybiAwOwogfQogCiBzdGF0 aWMgaW50IGtnZF9pbml0X3BpcGVsaW5lKHN0cnVjdCBrZ2RfZGV2ICprZ2QsIHVpbnQzMl90IHBp cGVfaWQsCiAJCQkJdWludDMyX3QgaHBkX3NpemUsIHVpbnQ2NF90IGhwZF9ncHVfYWRkcikKIHsK IAkvKiBhbWRncHUgb3ducyB0aGUgcGVyLXBpcGUgc3RhdGUgKi8KIAlyZXR1cm4gMDsKIH0KIAog c3RhdGljIGludCBrZ2RfaW5pdF9pbnRlcnJ1cHRzKHN0cnVjdCBrZ2RfZGV2ICprZ2QsIHVpbnQz Ml90IHBpcGVfaWQpCiB7CiAJc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYgPSBnZXRfYW1kZ3B1 X2RldmljZShrZ2QpOwogCXVpbnQzMl90IG1lYzsKIAl1aW50MzJfdCBwaXBlOwogCi0JbWVjID0g KHBpcGVfaWQgLyBDSUtfUElQRV9QRVJfTUVDKSArIDE7Ci0JcGlwZSA9IChwaXBlX2lkICUgQ0lL X1BJUEVfUEVSX01FQyk7CisJbWVjID0gKHBpcGVfaWQgLyBhZGV2LT5nZngubWVjLm51bV9waXBl X3Blcl9tZWMpICsgMTsKKwlwaXBlID0gKHBpcGVfaWQgJSBhZGV2LT5nZngubWVjLm51bV9waXBl X3Blcl9tZWMpOwogCiAJbG9ja19zcmJtKGtnZCwgbWVjLCBwaXBlLCAwLCAwKTsKIAogCVdSRUcz MihtbUNQQ19JTlRfQ05UTCwgQ1BfSU5UX0NOVExfUklORzBfX1RJTUVfU1RBTVBfSU5UX0VOQUJM RV9NQVNLIHwKIAkJCUNQX0lOVF9DTlRMX1JJTkcwX19PUENPREVfRVJST1JfSU5UX0VOQUJMRV9N QVNLKTsKIAogCXVubG9ja19zcmJtKGtnZCk7CiAKIAlyZXR1cm4gMDsKIH0KIAogc3RhdGljIGlu bGluZSB1aW50MzJfdCBnZXRfc2RtYV9iYXNlX2FkZHIoc3RydWN0IGNpa19zZG1hX3JsY19yZWdp c3RlcnMgKm0pCiB7CiAJdWludDMyX3QgcmV0dmFsOwogCiAJcmV0dmFsID0gbS0+c2RtYV9lbmdp bmVfaWQgKiBTRE1BMV9SRUdJU1RFUl9PRkZTRVQgKwogCQkJbS0+c2RtYV9xdWV1ZV9pZCAqIEtG RF9DSUtfU0RNQV9RVUVVRV9PRkZTRVQ7CiAKIAlwcl9kZWJ1Zygia2ZkOiBzZG1hIGJhc2UgYWRk cmVzczogMHgleFxuIiwgcmV0dmFsKTsKIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2Ft ZC9hbWRncHUvYW1kZ3B1X2FtZGtmZF9nZnhfdjguYyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1k Z3B1L2FtZGdwdV9hbWRrZmRfZ2Z4X3Y4LmMKaW5kZXggNmJhOTRlOS4uMTMzZDA2NiAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2FtZGtmZF9nZnhfdjguYwor KysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfYW1ka2ZkX2dmeF92OC5jCkBA IC0yMiw0MiArMjIsNDAgQEAKIAogI2luY2x1ZGUgPGxpbnV4L21vZHVsZS5oPgogI2luY2x1ZGUg PGxpbnV4L2ZkdGFibGUuaD4KICNpbmNsdWRlIDxsaW51eC91YWNjZXNzLmg+CiAjaW5jbHVkZSA8 bGludXgvZmlybXdhcmUuaD4KICNpbmNsdWRlIDxkcm0vZHJtUC5oPgogI2luY2x1ZGUgImFtZGdw dS5oIgogI2luY2x1ZGUgImFtZGdwdV9hbWRrZmQuaCIKICNpbmNsdWRlICJhbWRncHVfdWNvZGUu aCIKICNpbmNsdWRlICJnZnhfdjhfMC5oIgogI2luY2x1ZGUgImdjYS9nZnhfOF8wX3NoX21hc2su aCIKICNpbmNsdWRlICJnY2EvZ2Z4XzhfMF9kLmgiCiAjaW5jbHVkZSAiZ2NhL2dmeF84XzBfZW51 bS5oIgogI2luY2x1ZGUgIm9zcy9vc3NfM18wX3NoX21hc2suaCIKICNpbmNsdWRlICJvc3Mvb3Nz XzNfMF9kLmgiCiAjaW5jbHVkZSAiZ21jL2dtY184XzFfc2hfbWFzay5oIgogI2luY2x1ZGUgImdt Yy9nbWNfOF8xX2QuaCIKICNpbmNsdWRlICJ2aV9zdHJ1Y3RzLmgiCiAjaW5jbHVkZSAidmlkLmgi CiAKLSNkZWZpbmUgVklfUElQRV9QRVJfTUVDCSg0KQotCiBzdHJ1Y3QgY2lrX3NkbWFfcmxjX3Jl Z2lzdGVyczsKIAogLyoKICAqIFJlZ2lzdGVyIGFjY2VzcyBmdW5jdGlvbnMKICAqLwogCiBzdGF0 aWMgdm9pZCBrZ2RfcHJvZ3JhbV9zaF9tZW1fc2V0dGluZ3Moc3RydWN0IGtnZF9kZXYgKmtnZCwg dWludDMyX3Qgdm1pZCwKIAkJdWludDMyX3Qgc2hfbWVtX2NvbmZpZywKIAkJdWludDMyX3Qgc2hf bWVtX2FwZTFfYmFzZSwgdWludDMyX3Qgc2hfbWVtX2FwZTFfbGltaXQsCiAJCXVpbnQzMl90IHNo X21lbV9iYXNlcyk7CiBzdGF0aWMgaW50IGtnZF9zZXRfcGFzaWRfdm1pZF9tYXBwaW5nKHN0cnVj dCBrZ2RfZGV2ICprZ2QsIHVuc2lnbmVkIGludCBwYXNpZCwKIAkJdW5zaWduZWQgaW50IHZtaWQp Owogc3RhdGljIGludCBrZ2RfaW5pdF9waXBlbGluZShzdHJ1Y3Qga2dkX2RldiAqa2dkLCB1aW50 MzJfdCBwaXBlX2lkLAogCQl1aW50MzJfdCBocGRfc2l6ZSwgdWludDY0X3QgaHBkX2dwdV9hZGRy KTsKIHN0YXRpYyBpbnQga2dkX2luaXRfaW50ZXJydXB0cyhzdHJ1Y3Qga2dkX2RldiAqa2dkLCB1 aW50MzJfdCBwaXBlX2lkKTsKIHN0YXRpYyBpbnQga2dkX2hxZF9sb2FkKHN0cnVjdCBrZ2RfZGV2 ICprZ2QsIHZvaWQgKm1xZCwgdWludDMyX3QgcGlwZV9pZCwKIAkJdWludDMyX3QgcXVldWVfaWQs IHVpbnQzMl90IF9fdXNlciAqd3B0cik7CiBzdGF0aWMgaW50IGtnZF9ocWRfc2RtYV9sb2FkKHN0 cnVjdCBrZ2RfZGV2ICprZ2QsIHZvaWQgKm1xZCk7CiBzdGF0aWMgYm9vbCBrZ2RfaHFkX2lzX29j Y3VwaWVkKHN0cnVjdCBrZ2RfZGV2ICprZ2QsIHVpbnQ2NF90IHF1ZXVlX2FkZHJlc3MsCiAJCXVp bnQzMl90IHBpcGVfaWQsIHVpbnQzMl90IHF1ZXVlX2lkKTsKQEAgLTEzMCw0MiArMTI4LDQ0IEBA IHN0YXRpYyB2b2lkIGxvY2tfc3JibShzdHJ1Y3Qga2dkX2RldiAqa2dkLCB1aW50MzJfdCBtZWMs IHVpbnQzMl90IHBpcGUsCiAJCQl1aW50MzJfdCBxdWV1ZSwgdWludDMyX3Qgdm1pZCkKIHsKIAlz dHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiA9IGdldF9hbWRncHVfZGV2aWNlKGtnZCk7CiAJdWlu dDMyX3QgdmFsdWUgPSBQSVBFSUQocGlwZSkgfCBNRUlEKG1lYykgfCBWTUlEKHZtaWQpIHwgUVVF VUVJRChxdWV1ZSk7CiAKIAltdXRleF9sb2NrKCZhZGV2LT5zcmJtX211dGV4KTsKIAlXUkVHMzIo bW1TUkJNX0dGWF9DTlRMLCB2YWx1ZSk7CiB9CiAKIHN0YXRpYyB2b2lkIHVubG9ja19zcmJtKHN0 cnVjdCBrZ2RfZGV2ICprZ2QpCiB7CiAJc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYgPSBnZXRf YW1kZ3B1X2RldmljZShrZ2QpOwogCiAJV1JFRzMyKG1tU1JCTV9HRlhfQ05UTCwgMCk7CiAJbXV0 ZXhfdW5sb2NrKCZhZGV2LT5zcmJtX211dGV4KTsKIH0KIAogc3RhdGljIHZvaWQgYWNxdWlyZV9x dWV1ZShzdHJ1Y3Qga2dkX2RldiAqa2dkLCB1aW50MzJfdCBwaXBlX2lkLAogCQkJCXVpbnQzMl90 IHF1ZXVlX2lkKQogewotCXVpbnQzMl90IG1lYyA9ICgrK3BpcGVfaWQgLyBWSV9QSVBFX1BFUl9N RUMpICsgMTsKLQl1aW50MzJfdCBwaXBlID0gKHBpcGVfaWQgJSBWSV9QSVBFX1BFUl9NRUMpOwor CXN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2ID0gZ2V0X2FtZGdwdV9kZXZpY2Uoa2dkKTsKKwor CXVpbnQzMl90IG1lYyA9ICgrK3BpcGVfaWQgLyBhZGV2LT5nZngubWVjLm51bV9waXBlX3Blcl9t ZWMpICsgMTsKKwl1aW50MzJfdCBwaXBlID0gKHBpcGVfaWQgJSBhZGV2LT5nZngubWVjLm51bV9w aXBlX3Blcl9tZWMpOwogCiAJbG9ja19zcmJtKGtnZCwgbWVjLCBwaXBlLCBxdWV1ZV9pZCwgMCk7 CiB9CiAKIHN0YXRpYyB2b2lkIHJlbGVhc2VfcXVldWUoc3RydWN0IGtnZF9kZXYgKmtnZCkKIHsK IAl1bmxvY2tfc3JibShrZ2QpOwogfQogCiBzdGF0aWMgdm9pZCBrZ2RfcHJvZ3JhbV9zaF9tZW1f c2V0dGluZ3Moc3RydWN0IGtnZF9kZXYgKmtnZCwgdWludDMyX3Qgdm1pZCwKIAkJCQkJdWludDMy X3Qgc2hfbWVtX2NvbmZpZywKIAkJCQkJdWludDMyX3Qgc2hfbWVtX2FwZTFfYmFzZSwKIAkJCQkJ dWludDMyX3Qgc2hfbWVtX2FwZTFfbGltaXQsCiAJCQkJCXVpbnQzMl90IHNoX21lbV9iYXNlcykK IHsKIAlzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiA9IGdldF9hbWRncHVfZGV2aWNlKGtnZCk7 CiAKIAlsb2NrX3NyYm0oa2dkLCAwLCAwLCAwLCB2bWlkKTsKIAogCVdSRUczMihtbVNIX01FTV9D T05GSUcsIHNoX21lbV9jb25maWcpOwpAQCAtMTk5LDQyICsxOTksNDIgQEAgc3RhdGljIGludCBr Z2Rfc2V0X3Bhc2lkX3ZtaWRfbWFwcGluZyhzdHJ1Y3Qga2dkX2RldiAqa2dkLCB1bnNpZ25lZCBp bnQgcGFzaWQsCiAKIAkvKiBNYXBwaW5nIHZtaWQgdG8gcGFzaWQgYWxzbyBmb3IgSUggYmxvY2sg Ki8KIAlXUkVHMzIobW1JSF9WTUlEXzBfTFVUICsgdm1pZCwgcGFzaWRfbWFwcGluZyk7CiAKIAly ZXR1cm4gMDsKIH0KIAogc3RhdGljIGludCBrZ2RfaW5pdF9waXBlbGluZShzdHJ1Y3Qga2dkX2Rl diAqa2dkLCB1aW50MzJfdCBwaXBlX2lkLAogCQkJCXVpbnQzMl90IGhwZF9zaXplLCB1aW50NjRf dCBocGRfZ3B1X2FkZHIpCiB7CiAJLyogYW1kZ3B1IG93bnMgdGhlIHBlci1waXBlIHN0YXRlICov CiAJcmV0dXJuIDA7CiB9CiAKIHN0YXRpYyBpbnQga2dkX2luaXRfaW50ZXJydXB0cyhzdHJ1Y3Qg a2dkX2RldiAqa2dkLCB1aW50MzJfdCBwaXBlX2lkKQogewogCXN0cnVjdCBhbWRncHVfZGV2aWNl ICphZGV2ID0gZ2V0X2FtZGdwdV9kZXZpY2Uoa2dkKTsKIAl1aW50MzJfdCBtZWM7CiAJdWludDMy X3QgcGlwZTsKIAotCW1lYyA9ICgrK3BpcGVfaWQgLyBWSV9QSVBFX1BFUl9NRUMpICsgMTsKLQlw aXBlID0gKHBpcGVfaWQgJSBWSV9QSVBFX1BFUl9NRUMpOworCW1lYyA9ICgrK3BpcGVfaWQgLyBh ZGV2LT5nZngubWVjLm51bV9waXBlX3Blcl9tZWMpICsgMTsKKwlwaXBlID0gKHBpcGVfaWQgJSBh ZGV2LT5nZngubWVjLm51bV9waXBlX3Blcl9tZWMpOwogCiAJbG9ja19zcmJtKGtnZCwgbWVjLCBw aXBlLCAwLCAwKTsKIAogCVdSRUczMihtbUNQQ19JTlRfQ05UTCwgQ1BfSU5UX0NOVExfUklORzBf X1RJTUVfU1RBTVBfSU5UX0VOQUJMRV9NQVNLKTsKIAogCXVubG9ja19zcmJtKGtnZCk7CiAKIAly ZXR1cm4gMDsKIH0KIAogc3RhdGljIGlubGluZSB1aW50MzJfdCBnZXRfc2RtYV9iYXNlX2FkZHIo c3RydWN0IGNpa19zZG1hX3JsY19yZWdpc3RlcnMgKm0pCiB7CiAJcmV0dXJuIDA7CiB9CiAKIHN0 YXRpYyBpbmxpbmUgc3RydWN0IHZpX21xZCAqZ2V0X21xZCh2b2lkICptcWQpCiB7CiAJcmV0dXJu IChzdHJ1Y3QgdmlfbXFkICopbXFkOwogfQogCi0tIAoyLjkuMwoKX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KYW1kLWdmeCBtYWlsaW5nIGxpc3QKYW1kLWdm eEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFp bG1hbi9saXN0aW5mby9hbWQtZ2Z4Cg==