From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from metis.ext.pengutronix.de ([2001:6f8:1178:4:290:27ff:fe1d:cc33]) by merlin.infradead.org with esmtps (Exim 4.80.1 #2 (Red Hat Linux)) id 1WBsys-000057-A0 for barebox@lists.infradead.org; Fri, 07 Feb 2014 21:29:05 +0000 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= Date: Fri, 7 Feb 2014 22:28:12 +0100 Message-Id: <1391808493-27328-10-git-send-email-u.kleine-koenig@pengutronix.de> In-Reply-To: <1391808493-27328-1-git-send-email-u.kleine-koenig@pengutronix.de> References: <1391808493-27328-1-git-send-email-u.kleine-koenig@pengutronix.de> MIME-Version: 1.0 List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "barebox" Errors-To: barebox-bounces+u.kleine-koenig=pengutronix.de@lists.infradead.org Subject: [PATCH v2 10/11] mount: support filesystem options passed via -o To: barebox@lists.infradead.org U2ltaWxhciB0byBtb3VudCg4KSB0aGUgYmFyZWJveCBjb21tYW5kIG1vdW50IG5vdyBzdXBwb3J0 cyBwYXNzaW5nIGEgc3RyaW5nCnRvIHRoZSBmaWxlIHN5c3RlbSBkcml2ZXIgdmlhIC1vLgoKVGhp cyBpcyB1c2VkIGluIHRoZSBuZXh0IGNvbW1pdCB0byBsZXQgdGhlIHVzZXIgc3BlY2lmeSBwb3J0 IG51bWJlcnMgZm9yCm5mcyBtb3VudHMuCgpTaWduZWQtb2ZmLWJ5OiBVd2UgS2xlaW5lLUvDtm5p ZyA8dS5rbGVpbmUta29lbmlnQHBlbmd1dHJvbml4LmRlPgotLS0KIGFyY2gvYXJtL2JvYXJkcy9y YXNwYmVycnktcGkvcnBpLmMgfCAgMiArLQogYXJjaC9hcm0vbWFjaC1vbWFwL29tYXBfZ2VuZXJp Yy5jICB8ICAyICstCiBhcmNoL2FybS9tYWNoLW9tYXAveGxvYWQuYyAgICAgICAgIHwgIDQgKyst LQogYXJjaC9hcm0vbWFjaC1zb2NmcGdhL2dlbmVyaWMuYyAgICB8ICAyICstCiBjb21tYW5kcy9t b3VudC5jICAgICAgICAgICAgICAgICAgIHwgMTkgKysrKysrKysrKysrLS0tLS0tLQogY29tbWFu ZHMvdGZ0cC5jICAgICAgICAgICAgICAgICAgICB8ICAyICstCiBjb21tb24vYmxzcGVjLmMgICAg ICAgICAgICAgICAgICAgIHwgIDIgKy0KIGNvbW1vbi9zdGFydHVwLmMgICAgICAgICAgICAgICAg ICAgfCAgNCArKy0tCiBmcy9mcy5jICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgMTkgKysr KysrKysrKysrKy0tLS0tLQogaW5jbHVkZS9mcy5oICAgICAgICAgICAgICAgICAgICAgICB8ICA2 ICsrKystLQogbGliL2Jvb3RzdHJhcC9kaXNrLmMgICAgICAgICAgICAgICB8ICAyICstCiAxMSBm aWxlcyBjaGFuZ2VkLCAzOSBpbnNlcnRpb25zKCspLCAyNSBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS9hcmNoL2FybS9ib2FyZHMvcmFzcGJlcnJ5LXBpL3JwaS5jIGIvYXJjaC9hcm0vYm9hcmRz L3Jhc3BiZXJyeS1waS9ycGkuYwppbmRleCAwOTk3MTI0YzAxZWMuLjAzYTE2ZDc1NjE5ZCAxMDA2 NDQKLS0tIGEvYXJjaC9hcm0vYm9hcmRzL3Jhc3BiZXJyeS1waS9ycGkuYworKysgYi9hcmNoL2Fy bS9ib2FyZHMvcmFzcGJlcnJ5LXBpL3JwaS5jCkBAIC0xMjYsNyArMTI2LDcgQEAgc3RhdGljIGlu dCBycGlfZW52X2luaXQodm9pZCkKIAl9CiAKIAlta2RpcigiL2Jvb3QiLCAwNjY2KTsKLQlyZXQg PSBtb3VudChkaXNrZGV2LCAiZmF0IiwgIi9ib290Iik7CisJcmV0ID0gbW91bnQoZGlza2Rldiwg ImZhdCIsICIvYm9vdCIsIE5VTEwpOwogCWlmIChyZXQpIHsKIAkJcHJpbnRmKCJmYWlsZWQgdG8g bW91bnQgJXNcbiIsIGRpc2tkZXYpOwogCQlyZXR1cm4gMDsKZGlmZiAtLWdpdCBhL2FyY2gvYXJt L21hY2gtb21hcC9vbWFwX2dlbmVyaWMuYyBiL2FyY2gvYXJtL21hY2gtb21hcC9vbWFwX2dlbmVy aWMuYwppbmRleCBiZWRiNGQ4ZDI2MTguLjA2MGM1OTI3N2Y0ZSAxMDA2NDQKLS0tIGEvYXJjaC9h cm0vbWFjaC1vbWFwL29tYXBfZ2VuZXJpYy5jCisrKyBiL2FyY2gvYXJtL21hY2gtb21hcC9vbWFw X2dlbmVyaWMuYwpAQCAtMTM2LDcgKzEzNiw3IEBAIHN0YXRpYyBpbnQgb21hcF9lbnZfaW5pdCh2 b2lkKQogCX0KIAogCW1rZGlyKCIvYm9vdCIsIDA2NjYpOwotCXJldCA9IG1vdW50KGRpc2tkZXYs ICJmYXQiLCAiL2Jvb3QiKTsKKwlyZXQgPSBtb3VudChkaXNrZGV2LCAiZmF0IiwgIi9ib290Iiwg TlVMTCk7CiAJaWYgKHJldCkgewogCQlwcmludGYoImZhaWxlZCB0byBtb3VudCAlc1xuIiwgZGlz a2Rldik7CiAJCXJldHVybiAwOwpkaWZmIC0tZ2l0IGEvYXJjaC9hcm0vbWFjaC1vbWFwL3hsb2Fk LmMgYi9hcmNoL2FybS9tYWNoLW9tYXAveGxvYWQuYwppbmRleCA2OWUzZTQyZGY2OWQuLmEzMDk0 NTAxMDk5MCAxMDA2NDQKLS0tIGEvYXJjaC9hcm0vbWFjaC1vbWFwL3hsb2FkLmMKKysrIGIvYXJj aC9hcm0vbWFjaC1vbWFwL3hsb2FkLmMKQEAgLTExMCw3ICsxMTAsNyBAQCBzdGF0aWMgdm9pZCAq b21hcF94bG9hZF9ib290X21tYyh2b2lkKQogCiAJcGFydG5hbWUgPSBhc3ByaW50ZigiJXMuMCIs IGRpc2tkZXYpOwogCi0JcmV0ID0gbW91bnQocGFydG5hbWUsICJmYXQiLCAiLyIpOworCXJldCA9 IG1vdW50KHBhcnRuYW1lLCAiZmF0IiwgIi8iLCBOVUxMKTsKIAogCWZyZWUocGFydG5hbWUpOwog CkBAIC0xNzAsNyArMTcwLDcgQEAgc3RhdGljIHZvaWQgKm9tYXA0X3hsb2FkX2Jvb3RfdXNiKHZv aWQpewogCXZvaWQgKmJ1ZjsKIAlpbnQgbGVuOwogCi0JcmV0ID0gbW91bnQoIm9tYXA0X3VzYmJv b3QiLCAib21hcDRfdXNiYm9vdGZzIiwgIi8iKTsKKwlyZXQgPSBtb3VudCgib21hcDRfdXNiYm9v dCIsICJvbWFwNF91c2Jib290ZnMiLCAiLyIsIE5VTEwpOwogCWlmIChyZXQpIHsKIAkJcHJpbnRm KCJVbmFibGUgdG8gbW91bnQgb21hcDRfdXNiYm9vdGZzICglZClcbiIsIHJldCk7CiAJCXJldHVy biBOVUxMOwpkaWZmIC0tZ2l0IGEvYXJjaC9hcm0vbWFjaC1zb2NmcGdhL2dlbmVyaWMuYyBiL2Fy Y2gvYXJtL21hY2gtc29jZnBnYS9nZW5lcmljLmMKaW5kZXggMGQ5NThkMjNhZjYwLi42MjU5MzU0 OWQ2ZTQgMTAwNjQ0Ci0tLSBhL2FyY2gvYXJtL21hY2gtc29jZnBnYS9nZW5lcmljLmMKKysrIGIv YXJjaC9hcm0vbWFjaC1zb2NmcGdhL2dlbmVyaWMuYwpAQCAtOTcsNyArOTcsNyBAQCBzdGF0aWMg aW50IHNvY2ZwZ2FfZW52X2luaXQodm9pZCkKIAl9CiAKIAlta2RpcigiL2Jvb3QiLCAwNjY2KTsK LQlyZXQgPSBtb3VudChwYXJ0bmFtZSwgImZhdCIsICIvYm9vdCIpOworCXJldCA9IG1vdW50KHBh cnRuYW1lLCAiZmF0IiwgIi9ib290IiwgTlVMTCk7CiAJaWYgKHJldCkgewogCQlwcmludGYoImZh aWxlZCB0byBtb3VudCAlc1xuIiwgZGlza2Rldik7CiAJCWdvdG8gb3V0X2ZyZWU7CmRpZmYgLS1n aXQgYS9jb21tYW5kcy9tb3VudC5jIGIvY29tbWFuZHMvbW91bnQuYwppbmRleCAyZTlkNGJlZjVl M2YuLjY5MWJjMjkxMWU4ZiAxMDA2NDQKLS0tIGEvY29tbWFuZHMvbW91bnQuYworKysgYi9jb21t YW5kcy9tb3VudC5jCkBAIC0zMywyNiArMzMsMzEgQEAgc3RhdGljIGludCBkb19tb3VudChpbnQg YXJnYywgY2hhciAqYXJndltdKQogewogCWludCBvcHQ7CiAJaW50IHJldCA9IDAsIHZlcmJvc2Ug PSAwOwotCXN0cnVjdCBmc19kZXZpY2VfZCAqZnNkZXY7CiAJc3RydWN0IGRyaXZlcl9kICpkcnY7 CiAJY29uc3QgY2hhciAqdHlwZSA9IE5VTEw7CiAJY29uc3QgY2hhciAqbW91bnRwb2ludCwgKmRl djsKKwljb25zdCBjaGFyICpmc29wdGlvbnMgPSBOVUxMOwogCi0Jd2hpbGUgKChvcHQgPSBnZXRv cHQoYXJnYywgYXJndiwgInQ6dmEiKSkgPiAwKSB7CisJd2hpbGUgKChvcHQgPSBnZXRvcHQoYXJn YywgYXJndiwgImFvOnQ6diIpKSA+IDApIHsKIAkJc3dpdGNoIChvcHQpIHsKKwkJY2FzZSAnYSc6 CisJCQltb3VudF9hbGwoKTsKKwkJCWJyZWFrOwogCQljYXNlICd0JzoKIAkJCXR5cGUgPSBvcHRh cmc7CiAJCQlicmVhazsKKwkJY2FzZSAnbyc6CisJCQlmc29wdGlvbnMgPSBvcHRhcmc7CisJCQli cmVhazsKIAkJY2FzZSAndic6CiAJCQl2ZXJib3NlKys7CiAJCQlicmVhazsKLQkJY2FzZSAnYSc6 Ci0JCQltb3VudF9hbGwoKTsKLQkJCWJyZWFrOwogCQl9CiAJfQogCiAJaWYgKGFyZ2MgPT0gb3B0 aW5kKSB7CisJCXN0cnVjdCBmc19kZXZpY2VfZCAqZnNkZXY7CisKIAkJZm9yX2VhY2hfZnNfZGV2 aWNlKGZzZGV2KSB7CiAJCQlwcmludGYoIiVzIG9uICVzIHR5cGUgJXNcbiIsCiAJCQkJZnNkZXYt PmJhY2tpbmdzdG9yZSA/IGZzZGV2LT5iYWNraW5nc3RvcmUgOiAibm9uZSIsCkBAIC04NCw3ICs4 OSw3IEBAIHN0YXRpYyBpbnQgZG9fbW91bnQoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKIAkJaWYg KCFjZGV2KQogCQkJcmV0dXJuIC1FTk9FTlQ7CiAKLQkJcGF0aCA9IGNkZXZfbW91bnRfZGVmYXVs dChjZGV2KTsKKwkJcGF0aCA9IGNkZXZfbW91bnRfZGVmYXVsdChjZGV2LCBmc29wdGlvbnMpOwog CQlpZiAoSVNfRVJSKHBhdGgpKQogCQkJcmV0dXJuIFBUUl9FUlIocGF0aCk7CiAKQEAgLTEwOCw3 ICsxMTMsNyBAQCBzdGF0aWMgaW50IGRvX21vdW50KGludCBhcmdjLCBjaGFyICphcmd2W10pCiAJ CW1vdW50cG9pbnQgPSBhcmd2W29wdGluZCArIDFdOwogCX0KIAotCWlmICgocmV0ID0gbW91bnQo ZGV2LCB0eXBlLCBtb3VudHBvaW50KSkpIHsKKwlpZiAoKHJldCA9IG1vdW50KGRldiwgdHlwZSwg bW91bnRwb2ludCwgZnNvcHRpb25zKSkpIHsKIAkJcGVycm9yKCJtb3VudCIpOwogCQlyZXR1cm4g MTsKIAl9CmRpZmYgLS1naXQgYS9jb21tYW5kcy90ZnRwLmMgYi9jb21tYW5kcy90ZnRwLmMKaW5k ZXggYzgzZDE3NDBlMmYwLi42NGNhYjJmMDQ1MWQgMTAwNjQ0Ci0tLSBhL2NvbW1hbmRzL3RmdHAu YworKysgYi9jb21tYW5kcy90ZnRwLmMKQEAgLTcyLDcgKzcyLDcgQEAgc3RhdGljIGludCBkb190 ZnRwYihpbnQgYXJnYywgY2hhciAqYXJndltdKQogCQlnb3RvIGVycl9mcmVlOwogCiAJaXAgPSBu ZXRfZ2V0X3NlcnZlcmlwKCk7Ci0JcmV0ID0gbW91bnQoaXBfdG9fc3RyaW5nKGlwKSwgInRmdHAi LCBURlRQX01PVU5UX1BBVEgpOworCXJldCA9IG1vdW50KGlwX3RvX3N0cmluZyhpcCksICJ0ZnRw IiwgVEZUUF9NT1VOVF9QQVRILCBOVUxMKTsKIAlpZiAocmV0KQogCQlnb3RvIGVycl9ybWRpcjsK IApkaWZmIC0tZ2l0IGEvY29tbW9uL2Jsc3BlYy5jIGIvY29tbW9uL2Jsc3BlYy5jCmluZGV4IDIy NDRkNWE4YTg2OC4uZGYzYzljM2M2NWRhIDEwMDY0NAotLS0gYS9jb21tb24vYmxzcGVjLmMKKysr IGIvY29tbW9uL2Jsc3BlYy5jCkBAIC0yNzYsNyArMjc2LDcgQEAgc3RhdGljIGludCBibHNwZWNf c2Nhbl9jZGV2KHN0cnVjdCBibHNwZWMgKmJsc3BlYywgc3RydWN0IGNkZXYgKmNkZXYpCiAJaWYg KHR5cGUgPT0gZmlsZXR5cGVfbWJyIHx8IHR5cGUgPT0gZmlsZXR5cGVfZ3B0KQogCQlyZXR1cm4g LUVJTlZBTDsKIAotCXJvb3RwYXRoID0gY2Rldl9tb3VudF9kZWZhdWx0KGNkZXYpOworCXJvb3Rw YXRoID0gY2Rldl9tb3VudF9kZWZhdWx0KGNkZXYsIE5VTEwpOwogCWlmIChJU19FUlIocm9vdHBh dGgpKQogCQlyZXR1cm4gUFRSX0VSUihyb290cGF0aCk7CiAKZGlmZiAtLWdpdCBhL2NvbW1vbi9z dGFydHVwLmMgYi9jb21tb24vc3RhcnR1cC5jCmluZGV4IGU4YjllYTAyMTZmZS4uMGI1ZmU0NmFk YjUwIDEwMDY0NAotLS0gYS9jb21tb24vc3RhcnR1cC5jCisrKyBiL2NvbW1vbi9zdGFydHVwLmMK QEAgLTg5LDkgKzg5LDkgQEAgZGV2aWNlX2luaXRjYWxsKHJlZ2lzdGVyX2RlZmF1bHRfZW52KTsK ICNpZiBkZWZpbmVkIENPTkZJR19GU19SQU1GUyAmJiBkZWZpbmVkIENPTkZJR19GU19ERVZGUwog c3RhdGljIGludCBtb3VudF9yb290KHZvaWQpCiB7Ci0JbW91bnQoIm5vbmUiLCAicmFtZnMiLCAi LyIpOworCW1vdW50KCJub25lIiwgInJhbWZzIiwgIi8iLCBOVUxMKTsKIAlta2RpcigiL2RldiIs IDApOwotCW1vdW50KCJub25lIiwgImRldmZzIiwgIi9kZXYiKTsKKwltb3VudCgibm9uZSIsICJk ZXZmcyIsICIvZGV2IiwgTlVMTCk7CiAJcmV0dXJuIDA7CiB9CiBmc19pbml0Y2FsbChtb3VudF9y b290KTsKZGlmZiAtLWdpdCBhL2ZzL2ZzLmMgYi9mcy9mcy5jCmluZGV4IDMyZGJhOGNmMGFiZS4u N2E1N2JjMDY3MGJjIDEwMDY0NAotLS0gYS9mcy9mcy5jCisrKyBiL2ZzL2ZzLmMKQEAgLTEyNDIs NiArMTI0Miw3IEBAIHN0YXRpYyB2b2lkIGZzX3JlbW92ZShzdHJ1Y3QgZGV2aWNlX2QgKmRldikK IAl9CiAKIAlmcmVlKGZzZGV2LT5wYXRoKTsKKwlmcmVlKGZzZGV2LT5vcHRpb25zKTsKIAogCWlm IChmc2RldiA9PSBmc19kZXZfcm9vdCkKIAkJZnNfZGV2X3Jvb3QgPSBOVUxMOwpAQCAtMTMxNiwx MyArMTMxNywxOCBAQCBpbnQgZnNkZXZfb3Blbl9jZGV2KHN0cnVjdCBmc19kZXZpY2VfZCAqZnNk ZXYpCiAgKiBXZSBkbyB0aGlzIGJ5IHJlZ2lzdGVyaW5nIGEgbmV3IGRldmljZSBvbiB3aGljaCB0 aGUgZmlsZXN5c3RlbQogICogZHJpdmVyIHdpbGwgbWF0Y2guCiAgKi8KLWludCBtb3VudChjb25z dCBjaGFyICpkZXZpY2UsIGNvbnN0IGNoYXIgKmZzbmFtZSwgY29uc3QgY2hhciAqX3BhdGgpCitp bnQgbW91bnQoY29uc3QgY2hhciAqZGV2aWNlLCBjb25zdCBjaGFyICpmc25hbWUsIGNvbnN0IGNo YXIgKl9wYXRoLAorCQljb25zdCBjaGFyICpmc29wdGlvbnMpCiB7CiAJc3RydWN0IGZzX2Rldmlj ZV9kICpmc2RldjsKIAlpbnQgcmV0OwogCWNoYXIgKnBhdGggPSBub3JtYWxpc2VfcGF0aChfcGF0 aCk7CiAKLQlkZWJ1ZygibW91bnQ6ICVzIG9uICVzIHR5cGUgJXNcbiIsIGRldmljZSwgcGF0aCwg ZnNuYW1lKTsKKwlpZiAoIWZzb3B0aW9ucykKKwkJZnNvcHRpb25zID0gIiI7CisKKwlkZWJ1Zygi bW91bnQ6ICVzIG9uICVzIHR5cGUgJXMsIG9wdGlvbnM9JXNcbiIsCisJCQlkZXZpY2UsIHBhdGgs IGZzbmFtZSwgZnNvcHRpb25zKTsKIAogCWlmIChmc19kZXZfcm9vdCkgewogCQlmc2RldiA9IGdl dF9mc2RldmljZV9ieV9wYXRoKHBhdGgpOwpAQCAtMTM1NCw2ICsxMzYwLDcgQEAgaW50IG1vdW50 KGNvbnN0IGNoYXIgKmRldmljZSwgY29uc3QgY2hhciAqZnNuYW1lLCBjb25zdCBjaGFyICpfcGF0 aCkKIAlmc2Rldi0+ZGV2LmlkID0gZ2V0X2ZyZWVfZGV2aWNlaWQoZnNkZXYtPmRldi5uYW1lKTsK IAlmc2Rldi0+cGF0aCA9IHhzdHJkdXAocGF0aCk7CiAJZnNkZXYtPmRldi5idXMgPSAmZnNfYnVz OworCWZzZGV2LT5vcHRpb25zID0geHN0cmR1cChmc29wdGlvbnMpOwogCiAJcmV0ID0gcmVnaXN0 ZXJfZGV2aWNlKCZmc2Rldi0+ZGV2KTsKIAlpZiAocmV0KQpAQCAtMTcxMSw3ICsxNzE4LDcgQEAg Y29uc3QgY2hhciAqY2Rldl9nZXRfbW91bnRfcGF0aChzdHJ1Y3QgY2RldiAqY2RldikKICAqIG1v dW50IGl0IHRvIC9tbnQvPGNkZXZuYW1lPiBhbmQgcmV0dXJuIHRoZSBwYXRoLiBSZXR1cm5zIGFu IGVycm9yIHBvaW50ZXIKICAqIG9uIGZhaWx1cmUuCiAgKi8KLWNvbnN0IGNoYXIgKmNkZXZfbW91 bnRfZGVmYXVsdChzdHJ1Y3QgY2RldiAqY2RldikKK2NvbnN0IGNoYXIgKmNkZXZfbW91bnRfZGVm YXVsdChzdHJ1Y3QgY2RldiAqY2RldiwgY29uc3QgY2hhciAqZnNvcHRpb25zKQogewogCWNvbnN0 IGNoYXIgKnBhdGg7CiAJY2hhciAqbmV3cGF0aCwgKmRldnBhdGg7CkBAIC0xNzIwLDcgKzE3Mjcs NyBAQCBjb25zdCBjaGFyICpjZGV2X21vdW50X2RlZmF1bHQoc3RydWN0IGNkZXYgKmNkZXYpCiAJ LyoKIAkgKiBJZiB0aGlzIGNkZXYgaXMgYWxyZWFkeSBtb3VudGVkIHNvbWV3aGVyZSB1c2UgdGhp cyBwYXRoCiAJICogaW5zdGVhZCBvZiBtb3VudGluZyBpdCBhZ2FpbiB0byBhdm9pZCBjb3JydXB0 aW9uIG9uIHRoZQotCSAqIGZpbGVzeXN0ZW0uCisJICogZmlsZXN5c3RlbS4gTm90ZSB0aGlzIGln bm9yZXMgZXZlbnR1YWwgZnNvcHRpb25zIHRob3VnaC4KIAkgKi8KIAlwYXRoID0gY2Rldl9nZXRf bW91bnRfcGF0aChjZGV2KTsKIAlpZiAocGF0aCkKQEAgLTE3MzEsNyArMTczOCw3IEBAIGNvbnN0 IGNoYXIgKmNkZXZfbW91bnRfZGVmYXVsdChzdHJ1Y3QgY2RldiAqY2RldikKIAogCWRldnBhdGgg PSBhc3ByaW50ZigiL2Rldi8lcyIsIGNkZXYtPm5hbWUpOwogCi0JcmV0ID0gbW91bnQoZGV2cGF0 aCwgTlVMTCwgbmV3cGF0aCk7CisJcmV0ID0gbW91bnQoZGV2cGF0aCwgTlVMTCwgbmV3cGF0aCwg ZnNvcHRpb25zKTsKIAogCWZyZWUoZGV2cGF0aCk7CiAKQEAgLTE3NjEsNiArMTc2OCw2IEBAIHZv aWQgbW91bnRfYWxsKHZvaWQpCiAJCXN0cnVjdCBjZGV2ICpjZGV2ID0gJmJkZXYtPmNkZXY7CiAK IAkJbGlzdF9mb3JfZWFjaF9lbnRyeShjZGV2LCAmYmRldi0+ZGV2LT5jZGV2cywgZGV2aWNlc19s aXN0KQotCQkJY2Rldl9tb3VudF9kZWZhdWx0KGNkZXYpOworCQkJY2Rldl9tb3VudF9kZWZhdWx0 KGNkZXYsIE5VTEwpOwogCX0KIH0KZGlmZiAtLWdpdCBhL2luY2x1ZGUvZnMuaCBiL2luY2x1ZGUv ZnMuaAppbmRleCA4NTZlMDBhYmIwNDMuLjA3MzY0MWM3NDc0NiAxMDA2NDQKLS0tIGEvaW5jbHVk ZS9mcy5oCisrKyBiL2luY2x1ZGUvZnMuaApAQCAtOTksNiArOTksNyBAQCBzdHJ1Y3QgZnNfZGV2 aWNlX2QgewogCWNoYXIgKnBhdGg7CiAJc3RydWN0IGRldmljZV9kICpwYXJlbnRfZGV2aWNlOwog CXN0cnVjdCBsaXN0X2hlYWQgbGlzdDsKKwljaGFyICpvcHRpb25zOwogfTsKIAogI2RlZmluZSBk cnZfdG9fZnNfZHJpdmVyKGQpIGNvbnRhaW5lcl9vZihkLCBzdHJ1Y3QgZnNfZHJpdmVyX2QsIGRy dikKQEAgLTE0MCw3ICsxNDEsOCBAQCBpbnQgY2xvc2VkaXIoRElSICpkaXIpOwogaW50IHN5bWxp bmsoY29uc3QgY2hhciAqcGF0aG5hbWUsIGNvbnN0IGNoYXIgKm5ld3BhdGgpOwogaW50IHJlYWRs aW5rKGNvbnN0IGNoYXIgKnBhdGgsIGNoYXIgKmJ1Ziwgc2l6ZV90IGJ1ZnNpeik7CiAKLWludCBt b3VudCAoY29uc3QgY2hhciAqZGV2aWNlLCBjb25zdCBjaGFyICpmc25hbWUsIGNvbnN0IGNoYXIg KnBhdGgpOworaW50IG1vdW50IChjb25zdCBjaGFyICpkZXZpY2UsIGNvbnN0IGNoYXIgKmZzbmFt ZSwgY29uc3QgY2hhciAqcGF0aCwKKwkJY29uc3QgY2hhciAqZnNvcHRpb25zKTsKIGludCB1bW91 bnQoY29uc3QgY2hhciAqcGF0aG5hbWUpOwogCiAvKiBub3Qtc28tc3RhbmRhcmQgZnVuY3Rpb25z ICovCkBAIC0xOTcsNyArMTk5LDcgQEAgaW50IHVubGlua19yZWN1cnNpdmUoY29uc3QgY2hhciAq cGF0aCwgY2hhciAqKmZhaWxlZHBhdGgpOwogCiBpbnQgZnNkZXZfb3Blbl9jZGV2KHN0cnVjdCBm c19kZXZpY2VfZCAqZnNkZXYpOwogY29uc3QgY2hhciAqY2Rldl9nZXRfbW91bnRfcGF0aChzdHJ1 Y3QgY2RldiAqY2Rldik7Ci1jb25zdCBjaGFyICpjZGV2X21vdW50X2RlZmF1bHQoc3RydWN0IGNk ZXYgKmNkZXYpOworY29uc3QgY2hhciAqY2Rldl9tb3VudF9kZWZhdWx0KHN0cnVjdCBjZGV2ICpj ZGV2LCBjb25zdCBjaGFyICpmc29wdGlvbnMpOwogdm9pZCBtb3VudF9hbGwodm9pZCk7CiAKICNl bmRpZiAvKiBfX0ZTX0ggKi8KZGlmZiAtLWdpdCBhL2xpYi9ib290c3RyYXAvZGlzay5jIGIvbGli L2Jvb3RzdHJhcC9kaXNrLmMKaW5kZXggODc5ZDMzMTVlOGUzLi41MjdlNDMwODk3OWMgMTAwNjQ0 Ci0tLSBhL2xpYi9ib290c3RyYXAvZGlzay5jCisrKyBiL2xpYi9ib290c3RyYXAvZGlzay5jCkBA IC0yMCw3ICsyMCw3IEBAIHZvaWQqIGJvb3RzdHJhcF9yZWFkX2Rpc2soY2hhciAqZGV2LCBjaGFy ICpmc3R5cGUpCiAJaW50IGxlbjsKIAljaGFyICpwYXRoID0gIi8iOwogCi0JcmV0ID0gbW91bnQo ZGV2LCBmc3R5cGUsIHBhdGgpOworCXJldCA9IG1vdW50KGRldiwgZnN0eXBlLCBwYXRoLCBOVUxM KTsKIAlpZiAocmV0KSB7CiAJCWJvb3RzdHJhcF9lcnIoIm1vdW50aW5nICVzIGZhaWxlZCB3aXRo ICVkXG4iLCBkZXYsIHJldCk7CiAJCXJldHVybiBOVUxMOwotLSAKMS44LjUuMgoKCl9fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmJhcmVib3ggbWFpbGluZyBs aXN0CmJhcmVib3hAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9y Zy9tYWlsbWFuL2xpc3RpbmZvL2JhcmVib3gK