From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from metis.ext.pengutronix.de ([2001:67c:670:201:290:27ff:fe1d:cc33]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1ka2cb-0002oB-Jm for barebox@lists.infradead.org; Tue, 03 Nov 2020 20:09:39 +0000 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= Date: Tue, 3 Nov 2020 21:09:32 +0100 Message-Id: <20201103200932.18824-1-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] nfs: check return value of various rpc calls To: barebox@lists.infradead.org Q2hlY2sgbW9yZSBjYXJlZnVsbHkgZm9yIGZhaWxpbmcgcmVxdWVzdHMuIFRoaXMgaW1wcm92ZXMg dGhlIGVycm9yCm1lc3NhZ2Ugd2hlbiB0cnlpbmcgdG8gbW91bnQgYSBub24tZXhwb3J0ZWQgbmZz IGRpcmVjdG9yeSBmcm9tOgoKCW5mc19tb3VudF9yZXE6IGZpbGUgaGFuZGxlIHRvbyBiaWc6IDQ0 ODMxCgp0bwoKCW5mc19tb3VudF9yZXE6IE1vdW50aW5nIGZhaWxlZDogTkZTM0VSUl9BQ0NFUygw eGQpCgouIFRoaXMgYWxzbyBmaXhlcyBhbiBvdXQtb2YtYm91bmRzIGFjY2VzcyBhcyB0aGUgZmls ZWhhbmRsZSBzaXplICg0NDgzMQphYm92ZSkgaXMgcmVhZCBmcm9tIGp1c3QgYWZ0ZXIgdGhlIG5l dHdvcmsgcGFja2V0IGluIHRoZSBlcnJvciBjYXNlLgoKU2lnbmVkLW9mZi1ieTogVXdlIEtsZWlu ZS1Lw7ZuaWcgPHUua2xlaW5lLWtvZW5pZ0BwZW5ndXRyb25peC5kZT4KLS0tCkhlbGxvLAoKd2hp bGUgd29ya2luZyBvbiB0aGlzIHBhdGNoIEkgZGVjaWRlZCB0byBrZWVwIHRoZSBlcnJvciBuYW1l IGNvbnN0YW50cwphbmQgc28gZGV2aWF0ZSBmcm9tIHdoYXQgSSBwcm9taXNlZCBpbiByZXBseSB0 byBTYXNjaGEncyBmZWVkYmFjayBmb3IKdjEuIFRoZSByZWFzb24gaXMgdGhhdCBub3QgYWxsIE5G UyBlcnJvciBjb25zdGFudHMgaGF2ZSBhIGNvcnJlc3BvbmRpbmcKUE9TSVggZXJyb3IgY29kZSBh bmQgc28gcHJldHR5IHByaW50aW5nIHRoZSBlcnJvciBtaWdodCBiZSBoZWxwZnVsLgoKQmVzdCBy ZWdhcmRzClV3ZQoKIGZzL25mcy5jIHwgMTEyICsrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCAxMDIgaW5zZXJ0aW9u cygrKSwgMTAgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZnMvbmZzLmMgYi9mcy9uZnMuYwpp bmRleCAxNWRkYWI3OTE1ZGYuLjFmNjBjYmFkNDA0NSAxMDA2NDQKLS0tIGEvZnMvbmZzLmMKKysr IGIvZnMvbmZzLmMKQEAgLTYzNiwxMyArNjM2LDgyIEBAIHN0YXRpYyB1aW50MzJfdCAqbmZzX3Jl YWRfcG9zdF9vcF9hdHRyKHVpbnQzMl90ICpwLCBzdHJ1Y3QgaW5vZGUgKmlub2RlKQogCXJldHVy biBwOwogfQogCitzdGF0aWMgaW50IG5mc2Vycm9yX3RvX2Vycih1MzIgbmZzZXJyb3IsIGNvbnN0 IGNoYXIgKiplcnJvcm5hbWUpCit7CisJLyoKKwkgKiBNb3N0IE5GUyBlcnJvcnMgaGF2ZSBhIGNv cnJlc3BvbmRpbmcgUE9TSVggZXJyb3IgY29kZS4gQnV0IG5vdCBhbGwgb2YKKwkgKiB0aGVtIGhh dmUgb25lLCBzbyBzb21lIG11c3QgYmUgbWFwcGVkIHRvIGEgZGlmZmVyZW50IGNvZGUgaGVyZS4K KwkgKiBUbyBnZXQgaGVscGZ1bCBlcnJvciBtZXNzYWdlcyBhbHNvIGtlZXAgc3RyaW5nIGNvbnN0 YW50cyBmb3IgdGhlCisJICogYWN0dWFsIGVycm9ycy4gVGhleSBhcmUgc3RvcmVkIHdpdGhvdXQg dGhlIGNvbW1vbiBORlMzRVJSXyBwcmVmaXggdG8KKwkgKiBzYXZlIHNvbWUgbWVtb3J5LgorCSAq LworI2RlZmluZSBFKE5GU0VSUiwgRVJSKQkJCVwKKwljYXNlIE5GUzNFUlJfICMjIE5GU0VSUjoJ XAorCQkqZXJyb3JuYW1lID0gI05GU0VSUjsJXAorCQlyZXR1cm4gLUVSUgorCisJc3dpdGNoIChu ZnNlcnJvcikgeworCUUoUEVSTSwgRVBFUk0pOworCUUoTk9FTlQsIEVOT0VOVCk7CisJRShJTywg RUlPKTsKKwlFKE5YSU8sIEVOWElPKTsKKwlFKEFDQ0VTLCBFQUNDRVMpOworCUUoRVhJU1QsIEVF WElTVCk7CisJRShYREVWLCBFWERFVik7CisJRShOT0RFViwgRU5PREVWKTsKKwlFKE5PVERJUiwg RU5PVERJUik7CisJRShJU0RJUiwgRUlTRElSKTsKKwlFKElOVkFMLCBFSU5WQUwpOworCUUoRkJJ RywgRUZCSUcpOworCUUoTk9TUEMsIEVOT1NQQyk7CisJRShST0ZTLCBFUk9GUyk7CisJRShNTElO SywgRU1MSU5LKTsKKwlFKE5BTUVUT09MT05HLCBFTkFNRVRPT0xPTkcpOworCUUoTk9URU1QVFks IEVOT1RFTVBUWSk7CisJRShEUVVPVCwgRURRVU9UKTsKKwlFKFNUQUxFLCBFU1RBTEUpOworCUUo UkVNT1RFLCBFUkVNT1RFKTsKKwlFKEJBREhBTkRMRSwgRUlOVkFMKTsKKwlFKE5PVF9TWU5DLCBF SU5WQUwpOworCUUoQkFEX0NPT0tJRSwgRUlOVkFMKTsKKwlFKE5PVFNVUFAsIEVOT1RTVVBQKTsK KwlFKFRPT1NNQUxMLCBFSU5WQUwpOworCUUoU0VSVkVSRkFVTFQsIEVJTlZBTCk7CisJRShCQURU WVBFLCBFSU5WQUwpOworCUUoSlVLRUJPWCwgRUlOVkFMKTsKKworCWRlZmF1bHQ6CisJCSplcnJv cm5hbWUgPSAiPz8/IjsKKwkJcmV0dXJuIC1FSU5WQUw7CisJfQorfQorCitzdGF0aWMgaW50IG5m c19wcmludGVycih1MzIgbmZzZXJyb3IsIGNvbnN0IGNoYXIgKmZtdCwgLi4uKQoreworCXZhX2xp c3QgYXJnczsKKwljb25zdCBjaGFyICplcnJvcm5hbWU7CisJaW50IHJldDsKKworCXZhX3N0YXJ0 KGFyZ3MsIGZtdCk7CisKKwl2cHJpbnRmKGZtdCwgYXJncyk7CisKKwl2YV9lbmQoYXJncyk7CisK KwlyZXQgPSBuZnNlcnJvcl90b19lcnIobmZzZXJyb3IsICZlcnJvcm5hbWUpOworCisJcHJpbnRm KCI6IE5GUzNFUlJfJXMoMHgleClcbiIsIGVycm9ybmFtZSwgKHVuc2lnbmVkKW5mc2Vycm9yKTsK KworCXJldHVybiByZXQ7Cit9CisKIC8qCiAgKiBuZnNfbW91bnRfcmVxIC0gTW91bnQgYW4gTkZT IEZpbGVzeXN0ZW0KICAqLwogc3RhdGljIGludCBuZnNfbW91bnRfcmVxKHN0cnVjdCBuZnNfcHJp diAqbnByaXYpCiB7CiAJdWludDMyX3QgZGF0YVsxMDI0XTsKLQl1aW50MzJfdCAqcDsKKwl1aW50 MzJfdCAqcCwgc3RhdHVzOwogCWludCBsZW47CiAJaW50IHBhdGhsZW47CiAJc3RydWN0IHBhY2tl dCAqbmZzX3BhY2tldDsKQEAgLTY2Nyw3ICs3MzYsMTUgQEAgc3RhdGljIGludCBuZnNfbW91bnRf cmVxKHN0cnVjdCBuZnNfcHJpdiAqbnByaXYpCiAJaWYgKElTX0VSUihuZnNfcGFja2V0KSkKIAkJ cmV0dXJuIFBUUl9FUlIobmZzX3BhY2tldCk7CiAKLQlwID0gKHZvaWQgKiluZnNfcGFja2V0LT5k YXRhICsgc2l6ZW9mKHN0cnVjdCBycGNfcmVwbHkpICsgNDsKKwlwID0gKHZvaWQgKiluZnNfcGFj a2V0LT5kYXRhICsgc2l6ZW9mKHN0cnVjdCBycGNfcmVwbHkpOworCisJLyoKKwkgKiBUaGVvcmV0 aWNhbGx5IHRoZSBlcnJvciBzdGF0dXMgaXMgb25lIG9mIE1OVDNFUlJfLi4uLCBidXQgdGhlIE5G UworCSAqIGNvbnN0YW50cyBhcmUgaWRlbnRpY2FsLgorCSAqLworCXN0YXR1cyA9IG50b2gzMihu ZXRfcmVhZF91aW50MzIocCsrKSk7CisJaWYgKHN0YXR1cyAhPSBORlMzX09LKQorCQlyZXR1cm4g bmZzX3ByaW50ZXJyKHN0YXR1cywgIiVzOiBNb3VudGluZyBmYWlsZWQiLCBfX2Z1bmNfXyk7CiAK IAlucHJpdi0+cm9vdGZoLnNpemUgPSBudG9oMzIobmV0X3JlYWRfdWludDMyKHArKykpOwogCWlm IChucHJpdi0+cm9vdGZoLnNpemUgPiBORlMzX0ZIU0laRSkgewpAQCAtNzE5LDcgKzc5Niw3IEBA IHN0YXRpYyBpbnQgbmZzX2xvb2t1cF9yZXEoc3RydWN0IG5mc19wcml2ICpucHJpdiwgc3RydWN0 IG5mc19maCAqZmgsCiB7CiAJc3RydWN0IG5mc19pbm9kZSAqbmlub2RlID0gbmZzaShpbm9kZSk7 CiAJdWludDMyX3QgZGF0YVsxMDI0XTsKLQl1aW50MzJfdCAqcDsKKwl1aW50MzJfdCAqcCwgc3Rh dHVzOwogCWludCBsZW47CiAJc3RydWN0IHBhY2tldCAqbmZzX3BhY2tldDsKIApAQCAtNzYxLDcg KzgzOCwxMCBAQCBzdGF0aWMgaW50IG5mc19sb29rdXBfcmVxKHN0cnVjdCBuZnNfcHJpdiAqbnBy aXYsIHN0cnVjdCBuZnNfZmggKmZoLAogCWlmIChJU19FUlIobmZzX3BhY2tldCkpCiAJCXJldHVy biBQVFJfRVJSKG5mc19wYWNrZXQpOwogCi0JcCA9ICh2b2lkICopbmZzX3BhY2tldC0+ZGF0YSAr IHNpemVvZihzdHJ1Y3QgcnBjX3JlcGx5KSArIDQ7CisJcCA9ICh2b2lkICopbmZzX3BhY2tldC0+ ZGF0YSArIHNpemVvZihzdHJ1Y3QgcnBjX3JlcGx5KTsKKwlzdGF0dXMgPSBudG9oMzIobmV0X3Jl YWRfdWludDMyKHArKykpOworCWlmIChzdGF0dXMgIT0gTkZTM19PSykKKwkJcmV0dXJuIG5mc19w cmludGVycihzdGF0dXMsICIlczogTE9PS1VQIGZhaWxlZCIsIF9fZnVuY19fKTsKIAogCW5pbm9k ZS0+Zmguc2l6ZSA9IG50b2gzMihuZXRfcmVhZF91aW50MzIocCsrKSk7CiAJaWYgKG5pbm9kZS0+ Zmguc2l6ZSA+IE5GUzNfRkhTSVpFKSB7CkBAIC03ODcsNyArODY3LDcgQEAgc3RhdGljIGludCBu ZnNfbG9va3VwX3JlcShzdHJ1Y3QgbmZzX3ByaXYgKm5wcml2LCBzdHJ1Y3QgbmZzX2ZoICpmaCwK IHN0YXRpYyB2b2lkICpuZnNfcmVhZGRpcmF0dHJfcmVxKHN0cnVjdCBuZnNfcHJpdiAqbnByaXYs IHN0cnVjdCBuZnNfZGlyICpkaXIpCiB7CiAJdWludDMyX3QgZGF0YVsxMDI0XTsKLQl1aW50MzJf dCAqcDsKKwl1aW50MzJfdCAqcCwgc3RhdHVzOwogCWludCBsZW47CiAJc3RydWN0IHBhY2tldCAq bmZzX3BhY2tldDsKIAl2b2lkICpidWY7CkBAIC04NDUsNyArOTI1LDEzIEBAIHN0YXRpYyB2b2lk ICpuZnNfcmVhZGRpcmF0dHJfcmVxKHN0cnVjdCBuZnNfcHJpdiAqbnByaXYsIHN0cnVjdCBuZnNf ZGlyICpkaXIpCiAJaWYgKElTX0VSUihuZnNfcGFja2V0KSkKIAkJcmV0dXJuIE5VTEw7CiAKLQlw ID0gKHZvaWQgKiluZnNfcGFja2V0LT5kYXRhICsgc2l6ZW9mKHN0cnVjdCBycGNfcmVwbHkpICsg NDsKKwlwID0gKHZvaWQgKiluZnNfcGFja2V0LT5kYXRhICsgc2l6ZW9mKHN0cnVjdCBycGNfcmVw bHkpOworCXN0YXR1cyA9IG50b2gzMihuZXRfcmVhZF91aW50MzIocCsrKSk7CisJaWYgKHN0YXR1 cyAhPSBORlMzX09LKSB7CisJCW5mc19wcmludGVycihzdGF0dXMsICIlczogUkVBRERJUiBmYWls ZWQiLCBfX2Z1bmNfXyk7CisJCXJldHVybiBOVUxMOworCX0KKwogCXAgPSBuZnNfcmVhZF9wb3N0 X29wX2F0dHIocCwgTlVMTCk7CiAKIAkvKiB1cGRhdGUgY29va2lldmVyZiAqLwpAQCAtODc5LDcg Kzk2NSw3IEBAIHN0YXRpYyBpbnQgbmZzX3JlYWRfcmVxKHN0cnVjdCBmaWxlX3ByaXYgKnByaXYs IHVpbnQ2NF90IG9mZnNldCwKIAkJdWludDMyX3QgcmVhZGxlbikKIHsKIAl1aW50MzJfdCBkYXRh WzEwMjRdOwotCXVpbnQzMl90ICpwOworCXVpbnQzMl90ICpwLCBzdGF0dXM7CiAJaW50IGxlbjsK IAlzdHJ1Y3QgcGFja2V0ICpuZnNfcGFja2V0OwogCXVpbnQzMl90IHJsZW4sIGVvZjsKQEAgLTky Miw3ICsxMDA4LDEwIEBAIHN0YXRpYyBpbnQgbmZzX3JlYWRfcmVxKHN0cnVjdCBmaWxlX3ByaXYg KnByaXYsIHVpbnQ2NF90IG9mZnNldCwKIAlpZiAoSVNfRVJSKG5mc19wYWNrZXQpKQogCQlyZXR1 cm4gUFRSX0VSUihuZnNfcGFja2V0KTsKIAotCXAgPSAodm9pZCAqKW5mc19wYWNrZXQtPmRhdGEg KyBzaXplb2Yoc3RydWN0IHJwY19yZXBseSkgKyA0OworCXAgPSAodm9pZCAqKW5mc19wYWNrZXQt PmRhdGEgKyBzaXplb2Yoc3RydWN0IHJwY19yZXBseSk7CisJc3RhdHVzID0gbnRvaDMyKG5ldF9y ZWFkX3VpbnQzMihwKyspKTsKKwlpZiAoc3RhdHVzICE9IE5GUzNfT0spCisJCXJldHVybiBuZnNf cHJpbnRlcnIoc3RhdHVzLCAiJXM6IFJFQUQgZmFpbGVkIiwgX19mdW5jX18pOwogCiAJcCA9IG5m c19yZWFkX3Bvc3Rfb3BfYXR0cihwLCBOVUxMKTsKIApAQCAtOTgxLDcgKzEwNzAsNyBAQCBzdGF0 aWMgaW50IG5mc19yZWFkbGlua19yZXEoc3RydWN0IG5mc19wcml2ICpucHJpdiwgc3RydWN0IG5m c19maCAqZmgsCiAJCQkgICAgY2hhciAqKnRhcmdldCkKIHsKIAl1aW50MzJfdCBkYXRhWzEwMjRd OwotCXVpbnQzMl90ICpwOworCXVpbnQzMl90ICpwLCBzdGF0dXM7CiAJdWludDMyX3QgbGVuOwog CXN0cnVjdCBwYWNrZXQgKm5mc19wYWNrZXQ7CiAKQEAgLTEwMTcsNyArMTEwNiwxMCBAQCBzdGF0 aWMgaW50IG5mc19yZWFkbGlua19yZXEoc3RydWN0IG5mc19wcml2ICpucHJpdiwgc3RydWN0IG5m c19maCAqZmgsCiAJaWYgKElTX0VSUihuZnNfcGFja2V0KSkKIAkJcmV0dXJuIFBUUl9FUlIobmZz X3BhY2tldCk7CiAKLQlwID0gKHZvaWQgKiluZnNfcGFja2V0LT5kYXRhICsgc2l6ZW9mKHN0cnVj dCBycGNfcmVwbHkpICsgNDsKKwlwID0gKHZvaWQgKiluZnNfcGFja2V0LT5kYXRhICsgc2l6ZW9m KHN0cnVjdCBycGNfcmVwbHkpOworCXN0YXR1cyA9IG50b2gzMihuZXRfcmVhZF91aW50MzIocCsr KSk7CisJaWYgKHN0YXR1cyAhPSBORlMzX09LKQorCQlyZXR1cm4gbmZzX3ByaW50ZXJyKHN0YXR1 cywgIiVzOiBSRUFETElOSyBmYWlsZWQiLCBfX2Z1bmNfXyk7CiAKIAlwID0gbmZzX3JlYWRfcG9z dF9vcF9hdHRyKHAsIE5VTEwpOwogCi0tIAoyLjI4LjAKCgpfX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fXwpiYXJlYm94IG1haWxpbmcgbGlzdApiYXJlYm94QGxp c3RzLmluZnJhZGVhZC5vcmcKaHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0 aW5mby9iYXJlYm94Cg==