From: Karol Herbst Subject: [RFC PATCH 02/29] hwmon: properly check for errors Date: Fri, 15 Sep 2017 19:11:02 +0200 Message-ID: <20170915171129.5009-3-karolherbst@gmail.com> References: <20170915171129.5009-1-karolherbst@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20170915171129.5009-1-karolherbst-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: nouveau-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "Nouveau" To: nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org List-Id: nouveau.vger.kernel.org T3RoZXJ3aXNlIGh3bW9uIGludGVycHJldHMgZXJyb3IgY29kZXMgYXMgcmVhbCB2YWx1ZXMuCgpT aWduZWQtb2ZmLWJ5OiBLYXJvbCBIZXJic3QgPGthcm9saGVyYnN0QGdtYWlsLmNvbT4KLS0tCiBk cm0vbm91dmVhdS9ub3V2ZWF1X2h3bW9uLmMgfCAzMyArKysrKysrKysrKysrKysrKysrKysrKysr Ky0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCAyNiBpbnNlcnRpb25zKCspLCA3IGRlbGV0aW9ucygt KQoKZGlmZiAtLWdpdCBhL2RybS9ub3V2ZWF1L25vdXZlYXVfaHdtb24uYyBiL2RybS9ub3V2ZWF1 L25vdXZlYXVfaHdtb24uYwppbmRleCBmMTkxNGQ5YS4uMGQ3NWMxNGQgMTAwNjQ0Ci0tLSBhL2Ry bS9ub3V2ZWF1L25vdXZlYXVfaHdtb24uYworKysgYi9kcm0vbm91dmVhdS9ub3V2ZWF1X2h3bW9u LmMKQEAgLTQ3MCwxOCArNDcwLDIzIEBAIG5vdXZlYXVfZmFuX3JlYWQoc3RydWN0IGRldmljZSAq ZGV2LCB1MzIgYXR0ciwgaW50IGNoYW5uZWwsIGxvbmcgKnZhbCkKIAlzdHJ1Y3QgZHJtX2Rldmlj ZSAqZHJtX2RldiA9IGRldl9nZXRfZHJ2ZGF0YShkZXYpOwogCXN0cnVjdCBub3V2ZWF1X2RybSAq ZHJtID0gbm91dmVhdV9kcm0oZHJtX2Rldik7CiAJc3RydWN0IG52a21fdGhlcm0gKnRoZXJtID0g bnZ4eF90aGVybSgmZHJtLT5jbGllbnQuZGV2aWNlKTsKKwlpbnQgcmV0OwogCiAJaWYgKCF0aGVy bSkKIAkJcmV0dXJuIC1FT1BOT1RTVVBQOwogCiAJc3dpdGNoIChhdHRyKSB7CiAJY2FzZSBod21v bl9mYW5faW5wdXQ6Ci0JCSp2YWwgPSBudmttX3RoZXJtX2Zhbl9zZW5zZSh0aGVybSk7CisJCXJl dCA9IG52a21fdGhlcm1fZmFuX3NlbnNlKHRoZXJtKTsKIAkJYnJlYWs7CiAJZGVmYXVsdDoKIAkJ cmV0dXJuIC1FT1BOT1RTVVBQOwogCX0KIAorCWlmIChyZXQgPCAwKQorCQlyZXR1cm4gcmV0Owor CisJKnZhbCA9IHJldDsKIAlyZXR1cm4gMDsKIH0KIApAQCAtNDkxLDcgKzQ5Niw3IEBAIG5vdXZl YXVfaW5fcmVhZChzdHJ1Y3QgZGV2aWNlICpkZXYsIHUzMiBhdHRyLCBpbnQgY2hhbm5lbCwgbG9u ZyAqdmFsKQogCXN0cnVjdCBkcm1fZGV2aWNlICpkcm1fZGV2ID0gZGV2X2dldF9kcnZkYXRhKGRl dik7CiAJc3RydWN0IG5vdXZlYXVfZHJtICpkcm0gPSBub3V2ZWF1X2RybShkcm1fZGV2KTsKIAlz dHJ1Y3QgbnZrbV92b2x0ICp2b2x0ID0gbnZ4eF92b2x0KCZkcm0tPmNsaWVudC5kZXZpY2UpOwot CWludCByZXQ7CisJaW50IHJldCA9IDA7CiAKIAlpZiAoIXZvbHQpCiAJCXJldHVybiAtRU9QTk9U U1VQUDsKQEAgLTQ5OSw3ICs1MDQsOCBAQCBub3V2ZWF1X2luX3JlYWQoc3RydWN0IGRldmljZSAq ZGV2LCB1MzIgYXR0ciwgaW50IGNoYW5uZWwsIGxvbmcgKnZhbCkKIAlzd2l0Y2ggKGF0dHIpIHsK IAljYXNlIGh3bW9uX2luX2lucHV0OgogCQlyZXQgPSBudmttX3ZvbHRfZ2V0KHZvbHQpOwotCQkq dmFsID0gcmV0IDwgMCA/IHJldCA6IChyZXQgLyAxMDAwKTsKKwkJaWYgKHJldCA+PSAwKQorCQkJ KnZhbCA9IHJldCAvIDEwMDA7CiAJCWJyZWFrOwogCWNhc2UgaHdtb25faW5fbWluOgogCQkqdmFs ID0gdm9sdC0+bWluX3V2ID4gMCA/ICh2b2x0LT5taW5fdXYgLyAxMDAwKSA6IC1FTk9ERVY7CkBA IC01MTEsNyArNTE3LDcgQEAgbm91dmVhdV9pbl9yZWFkKHN0cnVjdCBkZXZpY2UgKmRldiwgdTMy IGF0dHIsIGludCBjaGFubmVsLCBsb25nICp2YWwpCiAJCXJldHVybiAtRU9QTk9UU1VQUDsKIAl9 CiAKLQlyZXR1cm4gMDsKKwlyZXR1cm4gcmV0OwogfQogCiBzdGF0aWMgaW50CkBAIC01MjAsMjEg KzUyNiwyNiBAQCBub3V2ZWF1X3B3bV9yZWFkKHN0cnVjdCBkZXZpY2UgKmRldiwgdTMyIGF0dHIs IGludCBjaGFubmVsLCBsb25nICp2YWwpCiAJc3RydWN0IGRybV9kZXZpY2UgKmRybV9kZXYgPSBk ZXZfZ2V0X2RydmRhdGEoZGV2KTsKIAlzdHJ1Y3Qgbm91dmVhdV9kcm0gKmRybSA9IG5vdXZlYXVf ZHJtKGRybV9kZXYpOwogCXN0cnVjdCBudmttX3RoZXJtICp0aGVybSA9IG52eHhfdGhlcm0oJmRy bS0+Y2xpZW50LmRldmljZSk7CisJaW50IHJldDsKIAogCWlmICghdGhlcm0gfHwgIXRoZXJtLT5h dHRyX2dldCB8fCAhdGhlcm0tPmZhbl9nZXQpCiAJCXJldHVybiAtRU9QTk9UU1VQUDsKIAogCXN3 aXRjaCAoYXR0cikgewogCWNhc2UgaHdtb25fcHdtX2VuYWJsZToKLQkJKnZhbCA9IHRoZXJtLT5h dHRyX2dldCh0aGVybSwgTlZLTV9USEVSTV9BVFRSX0ZBTl9NT0RFKTsKKwkJcmV0ID0gdGhlcm0t PmF0dHJfZ2V0KHRoZXJtLCBOVktNX1RIRVJNX0FUVFJfRkFOX01PREUpOwogCQlicmVhazsKIAlj YXNlIGh3bW9uX3B3bV9pbnB1dDoKLQkJKnZhbCA9IHRoZXJtLT5mYW5fZ2V0KHRoZXJtKTsKKwkJ cmV0ID0gdGhlcm0tPmZhbl9nZXQodGhlcm0pOwogCQlicmVhazsKIAlkZWZhdWx0OgogCQlyZXR1 cm4gLUVPUE5PVFNVUFA7CiAJfQogCisJaWYgKHJldCA8IDApCisJCXJldHVybiByZXQ7CisKKwkq dmFsID0gcmV0OwogCXJldHVybiAwOwogfQogCkBAIC01NDQsMTggKzU1NSwyNiBAQCBub3V2ZWF1 X3Bvd2VyX3JlYWQoc3RydWN0IGRldmljZSAqZGV2LCB1MzIgYXR0ciwgaW50IGNoYW5uZWwsIGxv bmcgKnZhbCkKIAlzdHJ1Y3QgZHJtX2RldmljZSAqZHJtX2RldiA9IGRldl9nZXRfZHJ2ZGF0YShk ZXYpOwogCXN0cnVjdCBub3V2ZWF1X2RybSAqZHJtID0gbm91dmVhdV9kcm0oZHJtX2Rldik7CiAJ c3RydWN0IG52a21faWNjc2Vuc2UgKmljY3NlbnNlID0gbnZ4eF9pY2NzZW5zZSgmZHJtLT5jbGll bnQuZGV2aWNlKTsKKwlpbnQgcmV0OwogCiAJaWYgKCFpY2NzZW5zZSkKIAkJcmV0dXJuIC1FT1BO T1RTVVBQOwogCiAJc3dpdGNoIChhdHRyKSB7CiAJY2FzZSBod21vbl9wb3dlcl9pbnB1dDoKLQkJ KnZhbCA9IG52a21faWNjc2Vuc2VfcmVhZF9hbGwoaWNjc2Vuc2UpOworCQlyZXQgPSBudmttX2lj Y3NlbnNlX3JlYWRfYWxsKGljY3NlbnNlKTsKKwkJaWYgKHJldCA8IDApCisJCQlyZXR1cm4gcmV0 OworCQkqdmFsID0gcmV0OwogCQlicmVhazsKIAljYXNlIGh3bW9uX3Bvd2VyX21heDoKKwkJaWYg KGljY3NlbnNlLT5wb3dlcl93X21heCA8PSAwKQorCQkJcmV0dXJuIC1FTk9ERVY7CiAJCSp2YWwg PSBpY2NzZW5zZS0+cG93ZXJfd19tYXg7CiAJCWJyZWFrOwogCWNhc2UgaHdtb25fcG93ZXJfY3Jp dDoKKwkJaWYgKGljY3NlbnNlLT5wb3dlcl93X2NyaXQgPD0gMCkKKwkJCXJldHVybiAtRU5PREVW OwogCQkqdmFsID0gaWNjc2Vuc2UtPnBvd2VyX3dfY3JpdDsKIAkJYnJlYWs7CiAJZGVmYXVsdDoK LS0gCjIuMTQuMQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X18KTm91dmVhdSBtYWlsaW5nIGxpc3QKTm91dmVhdUBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0 cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9ub3V2ZWF1Cg==