From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 36CFEC433EF for ; Tue, 25 Jan 2022 10:49:59 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Message-Id:Date:Subject:Cc:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=0ZiGlMmM/oPV7GDoZGhE+72HGyk1ByDkVluD57E9g4c=; b=AGBmQtKkCw1Gu8 s8sR3iVSzVSMqNpWc9CgjewpKEHMN8X+Jufh8Gkb5L8I+QX4TpUdU+fqZUnbel59hJISfffTqHaPt 3T9s58t3NbDplIUJnurXOkv7PItd4NTZf2vjvwVmTfCHRmoKEuArXIEQX+mqKm37PoU9KH5dQBM13 2IJAQBVMNi5s3bnYIyQj3ozDVkHrFU1ZWNqVNzhmPlCZUTsS+/1225Ra3/eyDAeZM1moy66J/UEMw qvPLVjSmxt4mhlxY1bICoPwUqgn7RXDxGOOwhjLLMIgx0jX6wqVSQBoMoQjgtMaLGFutPiOb5Tp3B whbHPYBHY48gLANyNEGQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1nCJO6-007W1j-ME; Tue, 25 Jan 2022 10:49:22 +0000 Received: from mail-lf1-x12d.google.com ([2a00:1450:4864:20::12d]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1nCJNM-007VpT-AL for linux-mtd@lists.infradead.org; Tue, 25 Jan 2022 10:48:39 +0000 Received: by mail-lf1-x12d.google.com with SMTP id n8so15539328lfq.4 for ; Tue, 25 Jan 2022 02:48:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kempniu.pl; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=166DZdITYjYjzDbnNQez4A/GbOZtzbLPBXqjxbafScg=; b=QQzbD3wZOAlFRnEfedPvKT4CHxjq1bopr0Rke0vB2Ml5q8SpaFN4kzj30HH2TUXPh6 965Od172gN1qHIxOf4mMWKZ8MDf+aQNO/TXe3iIzHfKBMuWQ7nJi9HsBVv07lDwNSlnk 1G6Q5CwLbhlEF3bHods8EgWKDdPJg6/3zIAnA= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=166DZdITYjYjzDbnNQez4A/GbOZtzbLPBXqjxbafScg=; b=r5U3+1P8shFr6Ho83qDUHYecH9nXpgz8ve4CBUCjFafz8V8jRv3LCUJjX1X5nHUXA7 qBl0lZD3aGIevb3dV4N3MMnUgtPB0w7u1V7xWs/FAysRrJFeGA/b/5hsHYtDVNnlfkWX JJc5s4l2W/NKAxnRDQPOzWKOfA1YLmxfYuU2zqyrOCmVDI56JExNyRe3U3fxdDMpAWUl zb0W1i0vWV8+44n2A6o2BRhBbJIcdw+54aWRywwgjAHfuGLZiVHK1i12ecpio7gtywOA SXS3zFLZlmG27hnfEymQNqBHFiK0THZm0wUpPDNEpgRwfBCwgXYKApgEHkAXec7qPmMJ 5zsw== X-Gm-Message-State: AOAM5310Kg0N198wgJcDEZ+mf0hLZUygMj1oIeqmugJxrOgv2zHSm6xv UvTdOMDUNtNP1NGwIX0EHeOK83nuDLqZYg== X-Google-Smtp-Source: ABdhPJwOvqWVDkLmY/IgfaFa06ks2v1hEwgcx4/2QjLNWnN9WyTSRC+pivvUCsZCIy3G3ojIQsX++g== X-Received: by 2002:ac2:4e0f:: with SMTP id e15mr6715516lfr.304.1643107713425; Tue, 25 Jan 2022 02:48:33 -0800 (PST) Received: from larwa.hq.kempniu.pl ([2001:470:64df:111::221]) by smtp.gmail.com with ESMTPSA id d16sm461896ljj.74.2022.01.25.02.48.32 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 25 Jan 2022 02:48:32 -0800 (PST) From: =?UTF-8?q?Micha=C5=82=20K=C4=99pie=C5=84?= To: Miquel Raynal , Richard Weinberger , Vignesh Raghavendra Cc: Boris Brezillon , linux-mtd@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH v3 2/4] mtd: always initialize 'stats' in struct mtd_oob_ops Date: Tue, 25 Jan 2022 11:48:20 +0100 Message-Id: <20220125104822.8420-3-kernel@kempniu.pl> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20220125104822.8420-1-kernel@kempniu.pl> References: <20220125104822.8420-1-kernel@kempniu.pl> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220125_024836_393748_79F11FE1 X-CRM114-Status: GOOD ( 20.20 ) X-BeenThere: linux-mtd@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Linux MTD discussion mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-mtd" Errors-To: linux-mtd-bounces+linux-mtd=archiver.kernel.org@lists.infradead.org QXMgdGhlICdzdGF0cycgZmllbGQgaW4gc3RydWN0IG10ZF9vb2Jfb3BzIGlzIHVzZWQgaW4gY29u ZGl0aW9uYWwKZXhwcmVzc2lvbnMsIGVuc3VyZSBpdCBpcyBhbHdheXMgemVyby1pbml0aWFsaXpl ZCBpbiBhbGwgc3VjaCBzdHJ1Y3R1cmVzCnRvIHByZXZlbnQgcmFuZG9tIHN0YWNrIGdhcmJhZ2Ug ZnJvbSBiZWluZyBpbnRlcnByZXRlZCBhcyBhIHBvaW50ZXIuCgpTdHJpY3RseSBzcGVha2luZywg dGhpcyBwcm9ibGVtIGN1cnJlbnRseSBvbmx5IG5lZWRzIHRvIGJlIGZpeGVkIGZvcgpzdHJ1Y3Qg bXRkX29vYl9vcHMgc3RydWN0dXJlcyBzdWJzZXF1ZW50bHkgcGFzc2VkIHRvIG10ZF9yZWFkX29v YigpLgpIb3dldmVyLCB0aGlzIGNvbW1pdCBnb2VzIGEgc3RlcCBmdXJ0aGVyIGFuZCBtYWtlcyBh bGwgaW5zdGFuY2VzIG9mCnN0cnVjdCBtdGRfb29iX29wcyBpbiB0aGUgdHJlZSB6ZXJvLWluaXRp YWxpemVkLCBpbiBob3BlIG9mIHByZXZlbnRpbmcKZnV0dXJlIHByb2JsZW1zLCBlLmcuIGlmIHN0 cnVjdCBtdGRfcmVxX3N0YXRzIGdldHMgZXh0ZW5kZWQgd2l0aCB3cml0ZQpzdGF0aXN0aWNzIGF0 IHNvbWUgcG9pbnQuCgpTaWduZWQtb2ZmLWJ5OiBNaWNoYcWCIEvEmXBpZcWEIDxrZXJuZWxAa2Vt cG5pdS5wbD4KLS0tCk9idmlvdXNseSB0aGlzIG9iamVjdGl2ZSBjYW4gYmUgYWNoaWV2ZWQgaW4g dmFyaW91cyB3YXlzLiAgSSB3YXMgYWltaW5nCmZvciBhIG1pbmltYWwgZGlmZiB3aGljaCBkb2Vz IHRoZSBqb2IuCgogZHJpdmVycy9tdGQvaW5mdGxjb3JlLmMgICAgICAgICAgICAgICAgIHwgNiAr KystLS0KIGRyaXZlcnMvbXRkL210ZHN3YXAuYyAgICAgICAgICAgICAgICAgICB8IDYgKysrLS0t CiBkcml2ZXJzL210ZC9uYW5kL29uZW5hbmQvb25lbmFuZF9iYXNlLmMgfCA0ICsrLS0KIGRyaXZl cnMvbXRkL25hbmQvb25lbmFuZC9vbmVuYW5kX2JidC5jICB8IDIgKy0KIGRyaXZlcnMvbXRkL25h bmQvcmF3L25hbmRfYmJ0LmMgICAgICAgICB8IDggKysrKy0tLS0KIGRyaXZlcnMvbXRkL25hbmQv cmF3L3NtX2NvbW1vbi5jICAgICAgICB8IDIgKy0KIGRyaXZlcnMvbXRkL25mdGxjb3JlLmMgICAg ICAgICAgICAgICAgICB8IDYgKysrLS0tCiBkcml2ZXJzL210ZC9zbV9mdGwuYyAgICAgICAgICAg ICAgICAgICAgfCA0ICsrLS0KIGRyaXZlcnMvbXRkL3NzZmRjLmMgICAgICAgICAgICAgICAgICAg ICB8IDIgKy0KIGRyaXZlcnMvbXRkL3Rlc3RzL25hbmRiaXRlcnJzLmMgICAgICAgICB8IDIgKy0K IGRyaXZlcnMvbXRkL3Rlc3RzL29vYnRlc3QuYyAgICAgICAgICAgICB8IDggKysrKy0tLS0KIGRy aXZlcnMvbXRkL3Rlc3RzL3JlYWR0ZXN0LmMgICAgICAgICAgICB8IDIgKy0KIGZzL2pmZnMyL3di dWYuYyAgICAgICAgICAgICAgICAgICAgICAgICB8IDYgKysrLS0tCiAxMyBmaWxlcyBjaGFuZ2Vk LCAyOSBpbnNlcnRpb25zKCspLCAyOSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJz L210ZC9pbmZ0bGNvcmUuYyBiL2RyaXZlcnMvbXRkL2luZnRsY29yZS5jCmluZGV4IDZiNDgzOTdj NzUwYy4uNThjYTFjMjFlYmU2IDEwMDY0NAotLS0gYS9kcml2ZXJzL210ZC9pbmZ0bGNvcmUuYwor KysgYi9kcml2ZXJzL210ZC9pbmZ0bGNvcmUuYwpAQCAtMTM2LDcgKzEzNiw3IEBAIHN0YXRpYyB2 b2lkIGluZnRsX3JlbW92ZV9kZXYoc3RydWN0IG10ZF9ibGt0cmFuc19kZXYgKmRldikKIGludCBp bmZ0bF9yZWFkX29vYihzdHJ1Y3QgbXRkX2luZm8gKm10ZCwgbG9mZl90IG9mZnMsIHNpemVfdCBs ZW4sCiAJCSAgIHNpemVfdCAqcmV0bGVuLCB1aW50OF90ICpidWYpCiB7Ci0Jc3RydWN0IG10ZF9v b2Jfb3BzIG9wczsKKwlzdHJ1Y3QgbXRkX29vYl9vcHMgb3BzID0geyB9OwogCWludCByZXM7CiAK IAlvcHMubW9kZSA9IE1URF9PUFNfUExBQ0VfT09COwpAQCAtMTU2LDcgKzE1Niw3IEBAIGludCBp bmZ0bF9yZWFkX29vYihzdHJ1Y3QgbXRkX2luZm8gKm10ZCwgbG9mZl90IG9mZnMsIHNpemVfdCBs ZW4sCiBpbnQgaW5mdGxfd3JpdGVfb29iKHN0cnVjdCBtdGRfaW5mbyAqbXRkLCBsb2ZmX3Qgb2Zm cywgc2l6ZV90IGxlbiwKIAkJICAgIHNpemVfdCAqcmV0bGVuLCB1aW50OF90ICpidWYpCiB7Ci0J c3RydWN0IG10ZF9vb2Jfb3BzIG9wczsKKwlzdHJ1Y3QgbXRkX29vYl9vcHMgb3BzID0geyB9Owog CWludCByZXM7CiAKIAlvcHMubW9kZSA9IE1URF9PUFNfUExBQ0VfT09COwpAQCAtMTc2LDcgKzE3 Niw3IEBAIGludCBpbmZ0bF93cml0ZV9vb2Ioc3RydWN0IG10ZF9pbmZvICptdGQsIGxvZmZfdCBv ZmZzLCBzaXplX3QgbGVuLAogc3RhdGljIGludCBpbmZ0bF93cml0ZShzdHJ1Y3QgbXRkX2luZm8g Km10ZCwgbG9mZl90IG9mZnMsIHNpemVfdCBsZW4sCiAJCSAgICAgICBzaXplX3QgKnJldGxlbiwg dWludDhfdCAqYnVmLCB1aW50OF90ICpvb2IpCiB7Ci0Jc3RydWN0IG10ZF9vb2Jfb3BzIG9wczsK KwlzdHJ1Y3QgbXRkX29vYl9vcHMgb3BzID0geyB9OwogCWludCByZXM7CiAKIAlvcHMubW9kZSA9 IE1URF9PUFNfUExBQ0VfT09COwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9tdGQvbXRkc3dhcC5jIGIv ZHJpdmVycy9tdGQvbXRkc3dhcC5jCmluZGV4IGU4NmIwNGJjMWQ2Yi4uY2UzNzk2YjkyOWU3IDEw MDY0NAotLS0gYS9kcml2ZXJzL210ZC9tdGRzd2FwLmMKKysrIGIvZHJpdmVycy9tdGQvbXRkc3dh cC5jCkBAIC0zMjMsNyArMzIzLDcgQEAgc3RhdGljIGludCBtdGRzd2FwX3JlYWRfbWFya2Vycyhz dHJ1Y3QgbXRkc3dhcF9kZXYgKmQsIHN0cnVjdCBzd2FwX2ViICplYikKIAlzdHJ1Y3QgbXRkc3dh cF9vb2JkYXRhICpkYXRhLCAqZGF0YTI7CiAJaW50IHJldDsKIAlsb2ZmX3Qgb2Zmc2V0OwotCXN0 cnVjdCBtdGRfb29iX29wcyBvcHM7CisJc3RydWN0IG10ZF9vb2Jfb3BzIG9wcyA9IHsgfTsKIAog CW9mZnNldCA9IG10ZHN3YXBfZWJfb2Zmc2V0KGQsIGViKTsKIApAQCAtMzcwLDcgKzM3MCw3IEBA IHN0YXRpYyBpbnQgbXRkc3dhcF93cml0ZV9tYXJrZXIoc3RydWN0IG10ZHN3YXBfZGV2ICpkLCBz dHJ1Y3Qgc3dhcF9lYiAqZWIsCiAJc3RydWN0IG10ZHN3YXBfb29iZGF0YSBuOwogCWludCByZXQ7 CiAJbG9mZl90IG9mZnNldDsKLQlzdHJ1Y3QgbXRkX29vYl9vcHMgb3BzOworCXN0cnVjdCBtdGRf b29iX29wcyBvcHMgPSB7IH07CiAKIAlvcHMub29ib2ZmcyA9IDA7CiAJb3BzLm9vYmJ1ZiA9ICh1 aW50OF90ICopJm47CkBAIC04NzgsNyArODc4LDcgQEAgc3RhdGljIHVuc2lnbmVkIGludCBtdGRz d2FwX2VibGtfcGFzc2VzKHN0cnVjdCBtdGRzd2FwX2RldiAqZCwKIAlsb2ZmX3QgYmFzZSwgcG9z OwogCXVuc2lnbmVkIGludCAqcDEgPSAodW5zaWduZWQgaW50ICopZC0+cGFnZV9idWY7CiAJdW5z aWduZWQgY2hhciAqcDIgPSAodW5zaWduZWQgY2hhciAqKWQtPm9vYl9idWY7Ci0Jc3RydWN0IG10 ZF9vb2Jfb3BzIG9wczsKKwlzdHJ1Y3QgbXRkX29vYl9vcHMgb3BzID0geyB9OwogCWludCByZXQ7 CiAKIAlvcHMubW9kZSA9IE1URF9PUFNfQVVUT19PT0I7CmRpZmYgLS1naXQgYS9kcml2ZXJzL210 ZC9uYW5kL29uZW5hbmQvb25lbmFuZF9iYXNlLmMgYi9kcml2ZXJzL210ZC9uYW5kL29uZW5hbmQv b25lbmFuZF9iYXNlLmMKaW5kZXggOTU4YmFjNTRiMTkwLi41ODEwMTA0NDIwYTIgMTAwNjQ0Ci0t LSBhL2RyaXZlcnMvbXRkL25hbmQvb25lbmFuZC9vbmVuYW5kX2Jhc2UuYworKysgYi9kcml2ZXJz L210ZC9uYW5kL29uZW5hbmQvb25lbmFuZF9iYXNlLmMKQEAgLTI5MzUsNyArMjkzNSw3IEBAIHN0 YXRpYyBpbnQgZG9fb3RwX3dyaXRlKHN0cnVjdCBtdGRfaW5mbyAqbXRkLCBsb2ZmX3QgdG8sIHNp emVfdCBsZW4sCiAJc3RydWN0IG9uZW5hbmRfY2hpcCAqdGhpcyA9IG10ZC0+cHJpdjsKIAl1bnNp Z25lZCBjaGFyICpwYnVmID0gYnVmOwogCWludCByZXQ7Ci0Jc3RydWN0IG10ZF9vb2Jfb3BzIG9w czsKKwlzdHJ1Y3QgbXRkX29vYl9vcHMgb3BzID0geyB9OwogCiAJLyogRm9yY2UgYnVmZmVyIHBh Z2UgYWxpZ25lZCAqLwogCWlmIChsZW4gPCBtdGQtPndyaXRlc2l6ZSkgewpAQCAtMjk3Nyw3ICsy OTc3LDcgQEAgc3RhdGljIGludCBkb19vdHBfbG9jayhzdHJ1Y3QgbXRkX2luZm8gKm10ZCwgbG9m Zl90IGZyb20sIHNpemVfdCBsZW4sCiAJCXNpemVfdCAqcmV0bGVuLCB1X2NoYXIgKmJ1ZikKIHsK IAlzdHJ1Y3Qgb25lbmFuZF9jaGlwICp0aGlzID0gbXRkLT5wcml2OwotCXN0cnVjdCBtdGRfb29i X29wcyBvcHM7CisJc3RydWN0IG10ZF9vb2Jfb3BzIG9wcyA9IHsgfTsKIAlpbnQgcmV0OwogCiAJ aWYgKEZMRVhPTkVOQU5EKHRoaXMpKSB7CmRpZmYgLS1naXQgYS9kcml2ZXJzL210ZC9uYW5kL29u ZW5hbmQvb25lbmFuZF9iYnQuYyBiL2RyaXZlcnMvbXRkL25hbmQvb25lbmFuZC9vbmVuYW5kX2Ji dC5jCmluZGV4IGIxNzMxNWY4ZTFkNC4uZDdmZTM1YmM0NWNiIDEwMDY0NAotLS0gYS9kcml2ZXJz L210ZC9uYW5kL29uZW5hbmQvb25lbmFuZF9iYnQuYworKysgYi9kcml2ZXJzL210ZC9uYW5kL29u ZW5hbmQvb25lbmFuZF9iYnQuYwpAQCAtNjEsNyArNjEsNyBAQCBzdGF0aWMgaW50IGNyZWF0ZV9i YnQoc3RydWN0IG10ZF9pbmZvICptdGQsIHVpbnQ4X3QgKmJ1Ziwgc3RydWN0IG5hbmRfYmJ0X2Rl c2NyCiAJaW50IHN0YXJ0YmxvY2s7CiAJbG9mZl90IGZyb207CiAJc2l6ZV90IHJlYWRsZW47Ci0J c3RydWN0IG10ZF9vb2Jfb3BzIG9wczsKKwlzdHJ1Y3QgbXRkX29vYl9vcHMgb3BzID0geyB9Owog CWludCByZ247CiAKIAlwcmludGsoS0VSTl9JTkZPICJTY2FubmluZyBkZXZpY2UgZm9yIGJhZCBi bG9ja3NcbiIpOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9tdGQvbmFuZC9yYXcvbmFuZF9iYnQuYyBi L2RyaXZlcnMvbXRkL25hbmQvcmF3L25hbmRfYmJ0LmMKaW5kZXggYWI2MzBhZjNhMzA5Li44MTdm ZmYzNTg0ZTMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvbXRkL25hbmQvcmF3L25hbmRfYmJ0LmMKKysr IGIvZHJpdmVycy9tdGQvbmFuZC9yYXcvbmFuZF9iYnQuYwpAQCAtMzEzLDcgKzMxMyw3IEBAIHN0 YXRpYyBpbnQgc2Nhbl9yZWFkX29vYihzdHJ1Y3QgbmFuZF9jaGlwICp0aGlzLCB1aW50OF90ICpi dWYsIGxvZmZfdCBvZmZzLAogCQkJIHNpemVfdCBsZW4pCiB7CiAJc3RydWN0IG10ZF9pbmZvICpt dGQgPSBuYW5kX3RvX210ZCh0aGlzKTsKLQlzdHJ1Y3QgbXRkX29vYl9vcHMgb3BzOworCXN0cnVj dCBtdGRfb29iX29wcyBvcHMgPSB7IH07CiAJaW50IHJlcywgcmV0ID0gMDsKIAogCW9wcy5tb2Rl ID0gTVREX09QU19QTEFDRV9PT0I7CkBAIC0zNTQsNyArMzU0LDcgQEAgc3RhdGljIGludCBzY2Fu X3dyaXRlX2JidChzdHJ1Y3QgbmFuZF9jaGlwICp0aGlzLCBsb2ZmX3Qgb2Zmcywgc2l6ZV90IGxl biwKIAkJCSAgdWludDhfdCAqYnVmLCB1aW50OF90ICpvb2IpCiB7CiAJc3RydWN0IG10ZF9pbmZv ICptdGQgPSBuYW5kX3RvX210ZCh0aGlzKTsKLQlzdHJ1Y3QgbXRkX29vYl9vcHMgb3BzOworCXN0 cnVjdCBtdGRfb29iX29wcyBvcHMgPSB7IH07CiAKIAlvcHMubW9kZSA9IE1URF9PUFNfUExBQ0Vf T09COwogCW9wcy5vb2JvZmZzID0gMDsKQEAgLTQxNiw3ICs0MTYsNyBAQCBzdGF0aWMgaW50IHNj YW5fYmxvY2tfZmFzdChzdHJ1Y3QgbmFuZF9jaGlwICp0aGlzLCBzdHJ1Y3QgbmFuZF9iYnRfZGVz Y3IgKmJkLAogewogCXN0cnVjdCBtdGRfaW5mbyAqbXRkID0gbmFuZF90b19tdGQodGhpcyk7CiAK LQlzdHJ1Y3QgbXRkX29vYl9vcHMgb3BzOworCXN0cnVjdCBtdGRfb29iX29wcyBvcHMgPSB7IH07 CiAJaW50IHJldCwgcGFnZV9vZmZzZXQ7CiAKIAlvcHMub29ibGVuID0gbXRkLT5vb2JzaXplOwpA QCAtNzU2LDcgKzc1Niw3IEBAIHN0YXRpYyBpbnQgd3JpdGVfYmJ0KHN0cnVjdCBuYW5kX2NoaXAg KnRoaXMsIHVpbnQ4X3QgKmJ1ZiwKIAl1aW50OF90IHJjb2RlID0gdGQtPnJlc2VydmVkX2Jsb2Nr X2NvZGU7CiAJc2l6ZV90IHJldGxlbiwgbGVuID0gMDsKIAlsb2ZmX3QgdG87Ci0Jc3RydWN0IG10 ZF9vb2Jfb3BzIG9wczsKKwlzdHJ1Y3QgbXRkX29vYl9vcHMgb3BzID0geyB9OwogCiAJb3BzLm9v YmxlbiA9IG10ZC0+b29ic2l6ZTsKIAlvcHMub29ib2ZmcyA9IDA7CmRpZmYgLS1naXQgYS9kcml2 ZXJzL210ZC9uYW5kL3Jhdy9zbV9jb21tb24uYyBiL2RyaXZlcnMvbXRkL25hbmQvcmF3L3NtX2Nv bW1vbi5jCmluZGV4IGJhMjRjYjM2ZDBiOS4uNmRmMzNlOGQ3N2RmIDEwMDY0NAotLS0gYS9kcml2 ZXJzL210ZC9uYW5kL3Jhdy9zbV9jb21tb24uYworKysgYi9kcml2ZXJzL210ZC9uYW5kL3Jhdy9z bV9jb21tb24uYwpAQCAtOTksNyArOTksNyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IG10ZF9vb2Js YXlvdXRfb3BzIG9vYl9zbV9zbWFsbF9vcHMgPSB7CiBzdGF0aWMgaW50IHNtX2Jsb2NrX21hcmti YWQoc3RydWN0IG5hbmRfY2hpcCAqY2hpcCwgbG9mZl90IG9mcykKIHsKIAlzdHJ1Y3QgbXRkX2lu Zm8gKm10ZCA9IG5hbmRfdG9fbXRkKGNoaXApOwotCXN0cnVjdCBtdGRfb29iX29wcyBvcHM7CisJ c3RydWN0IG10ZF9vb2Jfb3BzIG9wcyA9IHsgfTsKIAlzdHJ1Y3Qgc21fb29iIG9vYjsKIAlpbnQg cmV0OwogCmRpZmYgLS1naXQgYS9kcml2ZXJzL210ZC9uZnRsY29yZS5jIGIvZHJpdmVycy9tdGQv bmZ0bGNvcmUuYwppbmRleCA5MTNkYjBkZDZhOGQuLjY0ZDMxOWU5NTliMiAxMDA2NDQKLS0tIGEv ZHJpdmVycy9tdGQvbmZ0bGNvcmUuYworKysgYi9kcml2ZXJzL210ZC9uZnRsY29yZS5jCkBAIC0x MjQsNyArMTI0LDcgQEAgaW50IG5mdGxfcmVhZF9vb2Ioc3RydWN0IG10ZF9pbmZvICptdGQsIGxv ZmZfdCBvZmZzLCBzaXplX3QgbGVuLAogCQkgIHNpemVfdCAqcmV0bGVuLCB1aW50OF90ICpidWYp CiB7CiAJbG9mZl90IG1hc2sgPSBtdGQtPndyaXRlc2l6ZSAtIDE7Ci0Jc3RydWN0IG10ZF9vb2Jf b3BzIG9wczsKKwlzdHJ1Y3QgbXRkX29vYl9vcHMgb3BzID0geyB9OwogCWludCByZXM7CiAKIAlv cHMubW9kZSA9IE1URF9PUFNfUExBQ0VfT09COwpAQCAtMTQ1LDcgKzE0NSw3IEBAIGludCBuZnRs X3dyaXRlX29vYihzdHJ1Y3QgbXRkX2luZm8gKm10ZCwgbG9mZl90IG9mZnMsIHNpemVfdCBsZW4s CiAJCSAgIHNpemVfdCAqcmV0bGVuLCB1aW50OF90ICpidWYpCiB7CiAJbG9mZl90IG1hc2sgPSBt dGQtPndyaXRlc2l6ZSAtIDE7Ci0Jc3RydWN0IG10ZF9vb2Jfb3BzIG9wczsKKwlzdHJ1Y3QgbXRk X29vYl9vcHMgb3BzID0geyB9OwogCWludCByZXM7CiAKIAlvcHMubW9kZSA9IE1URF9PUFNfUExB Q0VfT09COwpAQCAtMTY4LDcgKzE2OCw3IEBAIHN0YXRpYyBpbnQgbmZ0bF93cml0ZShzdHJ1Y3Qg bXRkX2luZm8gKm10ZCwgbG9mZl90IG9mZnMsIHNpemVfdCBsZW4sCiAJCSAgICAgIHNpemVfdCAq cmV0bGVuLCB1aW50OF90ICpidWYsIHVpbnQ4X3QgKm9vYikKIHsKIAlsb2ZmX3QgbWFzayA9IG10 ZC0+d3JpdGVzaXplIC0gMTsKLQlzdHJ1Y3QgbXRkX29vYl9vcHMgb3BzOworCXN0cnVjdCBtdGRf b29iX29wcyBvcHMgPSB7IH07CiAJaW50IHJlczsKIAogCW9wcy5tb2RlID0gTVREX09QU19QTEFD RV9PT0I7CmRpZmYgLS1naXQgYS9kcml2ZXJzL210ZC9zbV9mdGwuYyBiL2RyaXZlcnMvbXRkL3Nt X2Z0bC5jCmluZGV4IDBjZmYyY2RhMWI1YS4uY2IxODIzMzNkNjM1IDEwMDY0NAotLS0gYS9kcml2 ZXJzL210ZC9zbV9mdGwuYworKysgYi9kcml2ZXJzL210ZC9zbV9mdGwuYwpAQCAtMjM5LDcgKzIz OSw3IEBAIHN0YXRpYyBpbnQgc21fcmVhZF9zZWN0b3Ioc3RydWN0IHNtX2Z0bCAqZnRsLAogCQkJ ICB1aW50OF90ICpidWZmZXIsIHN0cnVjdCBzbV9vb2IgKm9vYikKIHsKIAlzdHJ1Y3QgbXRkX2lu Zm8gKm10ZCA9IGZ0bC0+dHJhbnMtPm10ZDsKLQlzdHJ1Y3QgbXRkX29vYl9vcHMgb3BzOworCXN0 cnVjdCBtdGRfb29iX29wcyBvcHMgPSB7IH07CiAJc3RydWN0IHNtX29vYiB0bXBfb29iOwogCWlu dCByZXQgPSAtRUlPOwogCWludCB0cnkgPSAwOwpAQCAtMzIzLDcgKzMyMyw3IEBAIHN0YXRpYyBp bnQgc21fd3JpdGVfc2VjdG9yKHN0cnVjdCBzbV9mdGwgKmZ0bCwKIAkJCSAgIGludCB6b25lLCBp bnQgYmxvY2ssIGludCBib2Zmc2V0LAogCQkJICAgdWludDhfdCAqYnVmZmVyLCBzdHJ1Y3Qgc21f b29iICpvb2IpCiB7Ci0Jc3RydWN0IG10ZF9vb2Jfb3BzIG9wczsKKwlzdHJ1Y3QgbXRkX29vYl9v cHMgb3BzID0geyB9OwogCXN0cnVjdCBtdGRfaW5mbyAqbXRkID0gZnRsLT50cmFucy0+bXRkOwog CWludCByZXQ7CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvbXRkL3NzZmRjLmMgYi9kcml2ZXJzL210 ZC9zc2ZkYy5jCmluZGV4IDFkMDVjMTIxOTA0Yy4uMDRkYTY4NWMzNmJlIDEwMDY0NAotLS0gYS9k cml2ZXJzL210ZC9zc2ZkYy5jCisrKyBiL2RyaXZlcnMvbXRkL3NzZmRjLmMKQEAgLTE2Myw3ICsx NjMsNyBAQCBzdGF0aWMgaW50IHJlYWRfcGh5c2ljYWxfc2VjdG9yKHN0cnVjdCBtdGRfaW5mbyAq bXRkLCB1aW50OF90ICpzZWN0X2J1ZiwKIC8qIFJlYWQgcmVkdW5kYW5jeSBhcmVhICh3cmFwcGVy IHRvIE1URF9SRUFEX09PQiAqLwogc3RhdGljIGludCByZWFkX3Jhd19vb2Ioc3RydWN0IG10ZF9p bmZvICptdGQsIGxvZmZfdCBvZmZzLCB1aW50OF90ICpidWYpCiB7Ci0Jc3RydWN0IG10ZF9vb2Jf b3BzIG9wczsKKwlzdHJ1Y3QgbXRkX29vYl9vcHMgb3BzID0geyB9OwogCWludCByZXQ7CiAKIAlv cHMubW9kZSA9IE1URF9PUFNfUkFXOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9tdGQvdGVzdHMvbmFu ZGJpdGVycnMuYyBiL2RyaXZlcnMvbXRkL3Rlc3RzL25hbmRiaXRlcnJzLmMKaW5kZXggMDgwODRj MDE4YTU5Li45OGQ3NTA4Zjk1YjEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvbXRkL3Rlc3RzL25hbmRi aXRlcnJzLmMKKysrIGIvZHJpdmVycy9tdGQvdGVzdHMvbmFuZGJpdGVycnMuYwpAQCAtOTksNyAr OTksNyBAQCBzdGF0aWMgaW50IHdyaXRlX3BhZ2UoaW50IGxvZykKIHN0YXRpYyBpbnQgcmV3cml0 ZV9wYWdlKGludCBsb2cpCiB7CiAJaW50IGVyciA9IDA7Ci0Jc3RydWN0IG10ZF9vb2Jfb3BzIG9w czsKKwlzdHJ1Y3QgbXRkX29vYl9vcHMgb3BzID0geyB9OwogCiAJaWYgKGxvZykKIAkJcHJfaW5m bygicmV3cml0ZSBwYWdlXG4iKTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvbXRkL3Rlc3RzL29vYnRl c3QuYyBiL2RyaXZlcnMvbXRkL3Rlc3RzL29vYnRlc3QuYwppbmRleCA1MzI5OTdlMTBlMjkuLjEz ZmVkMzk4OTM3ZSAxMDA2NDQKLS0tIGEvZHJpdmVycy9tdGQvdGVzdHMvb29idGVzdC5jCisrKyBi L2RyaXZlcnMvbXRkL3Rlc3RzL29vYnRlc3QuYwpAQCAtNTYsNyArNTYsNyBAQCBzdGF0aWMgdm9p ZCBkb192YXJ5X29mZnNldCh2b2lkKQogc3RhdGljIGludCB3cml0ZV9lcmFzZWJsb2NrKGludCBl Ym51bSkKIHsKIAlpbnQgaTsKLQlzdHJ1Y3QgbXRkX29vYl9vcHMgb3BzOworCXN0cnVjdCBtdGRf b29iX29wcyBvcHMgPSB7IH07CiAJaW50IGVyciA9IDA7CiAJbG9mZl90IGFkZHIgPSAobG9mZl90 KWVibnVtICogbXRkLT5lcmFzZXNpemU7CiAKQEAgLTE2NSw3ICsxNjUsNyBAQCBzdGF0aWMgc2l6 ZV90IG1lbWZmc2hvdyhsb2ZmX3QgYWRkciwgbG9mZl90IG9mZnNldCwgY29uc3Qgdm9pZCAqY3Ms CiBzdGF0aWMgaW50IHZlcmlmeV9lcmFzZWJsb2NrKGludCBlYm51bSkKIHsKIAlpbnQgaTsKLQlz dHJ1Y3QgbXRkX29vYl9vcHMgb3BzOworCXN0cnVjdCBtdGRfb29iX29wcyBvcHMgPSB7IH07CiAJ aW50IGVyciA9IDA7CiAJbG9mZl90IGFkZHIgPSAobG9mZl90KWVibnVtICogbXRkLT5lcmFzZXNp emU7CiAJc2l6ZV90IGJpdGZsaXBzOwpAQCAtMjYwLDcgKzI2MCw3IEBAIHN0YXRpYyBpbnQgdmVy aWZ5X2VyYXNlYmxvY2soaW50IGVibnVtKQogCiBzdGF0aWMgaW50IHZlcmlmeV9lcmFzZWJsb2Nr X2luX29uZV9nbyhpbnQgZWJudW0pCiB7Ci0Jc3RydWN0IG10ZF9vb2Jfb3BzIG9wczsKKwlzdHJ1 Y3QgbXRkX29vYl9vcHMgb3BzID0geyB9OwogCWludCBlcnIgPSAwOwogCWxvZmZfdCBhZGRyID0g KGxvZmZfdCllYm51bSAqIG10ZC0+ZXJhc2VzaXplOwogCXNpemVfdCBsZW4gPSBtdGQtPm9vYmF2 YWlsICogcGdjbnQ7CkBAIC0zMzgsNyArMzM4LDcgQEAgc3RhdGljIGludCBfX2luaXQgbXRkX29v YnRlc3RfaW5pdCh2b2lkKQogCWludCBlcnIgPSAwOwogCXVuc2lnbmVkIGludCBpOwogCXVpbnQ2 NF90IHRtcDsKLQlzdHJ1Y3QgbXRkX29vYl9vcHMgb3BzOworCXN0cnVjdCBtdGRfb29iX29wcyBv cHMgPSB7IH07CiAJbG9mZl90IGFkZHIgPSAwLCBhZGRyMDsKIAogCXByaW50ayhLRVJOX0lORk8g IlxuIik7CmRpZmYgLS1naXQgYS9kcml2ZXJzL210ZC90ZXN0cy9yZWFkdGVzdC5jIGIvZHJpdmVy cy9tdGQvdGVzdHMvcmVhZHRlc3QuYwppbmRleCBlNzBkNTg4MDgzYTMuLjk5NjcwZWY5MWYyYiAx MDA2NDQKLS0tIGEvZHJpdmVycy9tdGQvdGVzdHMvcmVhZHRlc3QuYworKysgYi9kcml2ZXJzL210 ZC90ZXN0cy9yZWFkdGVzdC5jCkBAIC00Nyw3ICs0Nyw3IEBAIHN0YXRpYyBpbnQgcmVhZF9lcmFz ZWJsb2NrX2J5X3BhZ2UoaW50IGVibnVtKQogCQkJCWVyciA9IHJldDsKIAkJfQogCQlpZiAobXRk LT5vb2JzaXplKSB7Ci0JCQlzdHJ1Y3QgbXRkX29vYl9vcHMgb3BzOworCQkJc3RydWN0IG10ZF9v b2Jfb3BzIG9wcyA9IHsgfTsKIAogCQkJb3BzLm1vZGUgICAgICA9IE1URF9PUFNfUExBQ0VfT09C OwogCQkJb3BzLmxlbiAgICAgICA9IDA7CmRpZmYgLS1naXQgYS9mcy9qZmZzMi93YnVmLmMgYi9m cy9qZmZzMi93YnVmLmMKaW5kZXggYzY4MjFhNTA5NDgxLi40MDYxZTBiYTcwMTAgMTAwNjQ0Ci0t LSBhL2ZzL2pmZnMyL3didWYuYworKysgYi9mcy9qZmZzMi93YnVmLmMKQEAgLTEwMzUsNyArMTAz NSw3IEBAIGludCBqZmZzMl9jaGVja19vb2JfZW1wdHkoc3RydWN0IGpmZnMyX3NiX2luZm8gKmMs CiB7CiAJaW50IGksIHJldDsKIAlpbnQgY21sZW4gPSBtaW5fdChpbnQsIGMtPm9vYmF2YWlsLCBP T0JfQ01fU0laRSk7Ci0Jc3RydWN0IG10ZF9vb2Jfb3BzIG9wczsKKwlzdHJ1Y3QgbXRkX29vYl9v cHMgb3BzID0geyB9OwogCiAJb3BzLm1vZGUgPSBNVERfT1BTX0FVVE9fT09COwogCW9wcy5vb2Js ZW4gPSBOUl9PT0JfU0NBTl9QQUdFUyAqIGMtPm9vYmF2YWlsOwpAQCAtMTA3Niw3ICsxMDc2LDcg QEAgaW50IGpmZnMyX2NoZWNrX29vYl9lbXB0eShzdHJ1Y3QgamZmczJfc2JfaW5mbyAqYywKIGlu dCBqZmZzMl9jaGVja19uYW5kX2NsZWFubWFya2VyKHN0cnVjdCBqZmZzMl9zYl9pbmZvICpjLAog CQkJCSBzdHJ1Y3QgamZmczJfZXJhc2VibG9jayAqamViKQogewotCXN0cnVjdCBtdGRfb29iX29w cyBvcHM7CisJc3RydWN0IG10ZF9vb2Jfb3BzIG9wcyA9IHsgfTsKIAlpbnQgcmV0LCBjbWxlbiA9 IG1pbl90KGludCwgYy0+b29iYXZhaWwsIE9PQl9DTV9TSVpFKTsKIAogCW9wcy5tb2RlID0gTVRE X09QU19BVVRPX09PQjsKQEAgLTExMDEsNyArMTEwMSw3IEBAIGludCBqZmZzMl93cml0ZV9uYW5k X2NsZWFubWFya2VyKHN0cnVjdCBqZmZzMl9zYl9pbmZvICpjLAogCQkJCSBzdHJ1Y3QgamZmczJf ZXJhc2VibG9jayAqamViKQogewogCWludCByZXQ7Ci0Jc3RydWN0IG10ZF9vb2Jfb3BzIG9wczsK KwlzdHJ1Y3QgbXRkX29vYl9vcHMgb3BzID0geyB9OwogCWludCBjbWxlbiA9IG1pbl90KGludCwg Yy0+b29iYXZhaWwsIE9PQl9DTV9TSVpFKTsKIAogCW9wcy5tb2RlID0gTVREX09QU19BVVRPX09P QjsKLS0gCjIuMzQuMQoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fXwpMaW51eCBNVEQgZGlzY3Vzc2lvbiBtYWlsaW5nIGxpc3QKaHR0cDovL2xp c3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9saW51eC1tdGQvCg== From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 03B09C433F5 for ; Tue, 25 Jan 2022 10:52:01 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1378560AbiAYKvp (ORCPT ); Tue, 25 Jan 2022 05:51:45 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:43638 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1377118AbiAYKsg (ORCPT ); Tue, 25 Jan 2022 05:48:36 -0500 Received: from mail-lf1-x135.google.com (mail-lf1-x135.google.com [IPv6:2a00:1450:4864:20::135]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 19FF4C061760 for ; Tue, 25 Jan 2022 02:48:35 -0800 (PST) Received: by mail-lf1-x135.google.com with SMTP id a28so25813107lfl.7 for ; Tue, 25 Jan 2022 02:48:35 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kempniu.pl; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=166DZdITYjYjzDbnNQez4A/GbOZtzbLPBXqjxbafScg=; b=QQzbD3wZOAlFRnEfedPvKT4CHxjq1bopr0Rke0vB2Ml5q8SpaFN4kzj30HH2TUXPh6 965Od172gN1qHIxOf4mMWKZ8MDf+aQNO/TXe3iIzHfKBMuWQ7nJi9HsBVv07lDwNSlnk 1G6Q5CwLbhlEF3bHods8EgWKDdPJg6/3zIAnA= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=166DZdITYjYjzDbnNQez4A/GbOZtzbLPBXqjxbafScg=; b=oj6zLoKCk0FnwizxmZoYzHJP/WzGe9teygSnQc8mc1o9xCQQDMLWi6lZzDk5jEED8O +GgnnO6AxP4VP5oVsMWL3h/WANY8TPABcJF44cV+mgyL7aWbo1ygs99/uxQxkEfdpOXN lqZe7ddqPksWSIbQ3lnUWEScH81a4aUKTcE/eFKgCHvETbLJAdZMMBWYjmZyZ05m9o3s jCbwwfY5JOjfp5+ZB6E3dGgDyztucs/CfIfZltHggRZpULobbfkiKYs6n8FU9C8UWR/f 5Bx2OtVQSZEes+CVeQs9cel7Ip3b8A3CkCUW5mrWbLYcejl1kBCM4pXC62Hi42AvU4Y/ 81Ag== X-Gm-Message-State: AOAM5305Nn9er4Gv/RhSukHPjoCDE1l6WusfoRmOhmcGBEID5chw0b0f +wwfxwJjF5D9TwiYHzOhJo0oRA== X-Google-Smtp-Source: ABdhPJwOvqWVDkLmY/IgfaFa06ks2v1hEwgcx4/2QjLNWnN9WyTSRC+pivvUCsZCIy3G3ojIQsX++g== X-Received: by 2002:ac2:4e0f:: with SMTP id e15mr6715516lfr.304.1643107713425; Tue, 25 Jan 2022 02:48:33 -0800 (PST) Received: from larwa.hq.kempniu.pl ([2001:470:64df:111::221]) by smtp.gmail.com with ESMTPSA id d16sm461896ljj.74.2022.01.25.02.48.32 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 25 Jan 2022 02:48:32 -0800 (PST) From: =?UTF-8?q?Micha=C5=82=20K=C4=99pie=C5=84?= To: Miquel Raynal , Richard Weinberger , Vignesh Raghavendra Cc: Boris Brezillon , linux-mtd@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH v3 2/4] mtd: always initialize 'stats' in struct mtd_oob_ops Date: Tue, 25 Jan 2022 11:48:20 +0100 Message-Id: <20220125104822.8420-3-kernel@kempniu.pl> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20220125104822.8420-1-kernel@kempniu.pl> References: <20220125104822.8420-1-kernel@kempniu.pl> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org As the 'stats' field in struct mtd_oob_ops is used in conditional expressions, ensure it is always zero-initialized in all such structures to prevent random stack garbage from being interpreted as a pointer. Strictly speaking, this problem currently only needs to be fixed for struct mtd_oob_ops structures subsequently passed to mtd_read_oob(). However, this commit goes a step further and makes all instances of struct mtd_oob_ops in the tree zero-initialized, in hope of preventing future problems, e.g. if struct mtd_req_stats gets extended with write statistics at some point. Signed-off-by: Michał Kępień --- Obviously this objective can be achieved in various ways. I was aiming for a minimal diff which does the job. drivers/mtd/inftlcore.c | 6 +++--- drivers/mtd/mtdswap.c | 6 +++--- drivers/mtd/nand/onenand/onenand_base.c | 4 ++-- drivers/mtd/nand/onenand/onenand_bbt.c | 2 +- drivers/mtd/nand/raw/nand_bbt.c | 8 ++++---- drivers/mtd/nand/raw/sm_common.c | 2 +- drivers/mtd/nftlcore.c | 6 +++--- drivers/mtd/sm_ftl.c | 4 ++-- drivers/mtd/ssfdc.c | 2 +- drivers/mtd/tests/nandbiterrs.c | 2 +- drivers/mtd/tests/oobtest.c | 8 ++++---- drivers/mtd/tests/readtest.c | 2 +- fs/jffs2/wbuf.c | 6 +++--- 13 files changed, 29 insertions(+), 29 deletions(-) diff --git a/drivers/mtd/inftlcore.c b/drivers/mtd/inftlcore.c index 6b48397c750c..58ca1c21ebe6 100644 --- a/drivers/mtd/inftlcore.c +++ b/drivers/mtd/inftlcore.c @@ -136,7 +136,7 @@ static void inftl_remove_dev(struct mtd_blktrans_dev *dev) int inftl_read_oob(struct mtd_info *mtd, loff_t offs, size_t len, size_t *retlen, uint8_t *buf) { - struct mtd_oob_ops ops; + struct mtd_oob_ops ops = { }; int res; ops.mode = MTD_OPS_PLACE_OOB; @@ -156,7 +156,7 @@ int inftl_read_oob(struct mtd_info *mtd, loff_t offs, size_t len, int inftl_write_oob(struct mtd_info *mtd, loff_t offs, size_t len, size_t *retlen, uint8_t *buf) { - struct mtd_oob_ops ops; + struct mtd_oob_ops ops = { }; int res; ops.mode = MTD_OPS_PLACE_OOB; @@ -176,7 +176,7 @@ int inftl_write_oob(struct mtd_info *mtd, loff_t offs, size_t len, static int inftl_write(struct mtd_info *mtd, loff_t offs, size_t len, size_t *retlen, uint8_t *buf, uint8_t *oob) { - struct mtd_oob_ops ops; + struct mtd_oob_ops ops = { }; int res; ops.mode = MTD_OPS_PLACE_OOB; diff --git a/drivers/mtd/mtdswap.c b/drivers/mtd/mtdswap.c index e86b04bc1d6b..ce3796b929e7 100644 --- a/drivers/mtd/mtdswap.c +++ b/drivers/mtd/mtdswap.c @@ -323,7 +323,7 @@ static int mtdswap_read_markers(struct mtdswap_dev *d, struct swap_eb *eb) struct mtdswap_oobdata *data, *data2; int ret; loff_t offset; - struct mtd_oob_ops ops; + struct mtd_oob_ops ops = { }; offset = mtdswap_eb_offset(d, eb); @@ -370,7 +370,7 @@ static int mtdswap_write_marker(struct mtdswap_dev *d, struct swap_eb *eb, struct mtdswap_oobdata n; int ret; loff_t offset; - struct mtd_oob_ops ops; + struct mtd_oob_ops ops = { }; ops.ooboffs = 0; ops.oobbuf = (uint8_t *)&n; @@ -878,7 +878,7 @@ static unsigned int mtdswap_eblk_passes(struct mtdswap_dev *d, loff_t base, pos; unsigned int *p1 = (unsigned int *)d->page_buf; unsigned char *p2 = (unsigned char *)d->oob_buf; - struct mtd_oob_ops ops; + struct mtd_oob_ops ops = { }; int ret; ops.mode = MTD_OPS_AUTO_OOB; diff --git a/drivers/mtd/nand/onenand/onenand_base.c b/drivers/mtd/nand/onenand/onenand_base.c index 958bac54b190..5810104420a2 100644 --- a/drivers/mtd/nand/onenand/onenand_base.c +++ b/drivers/mtd/nand/onenand/onenand_base.c @@ -2935,7 +2935,7 @@ static int do_otp_write(struct mtd_info *mtd, loff_t to, size_t len, struct onenand_chip *this = mtd->priv; unsigned char *pbuf = buf; int ret; - struct mtd_oob_ops ops; + struct mtd_oob_ops ops = { }; /* Force buffer page aligned */ if (len < mtd->writesize) { @@ -2977,7 +2977,7 @@ static int do_otp_lock(struct mtd_info *mtd, loff_t from, size_t len, size_t *retlen, u_char *buf) { struct onenand_chip *this = mtd->priv; - struct mtd_oob_ops ops; + struct mtd_oob_ops ops = { }; int ret; if (FLEXONENAND(this)) { diff --git a/drivers/mtd/nand/onenand/onenand_bbt.c b/drivers/mtd/nand/onenand/onenand_bbt.c index b17315f8e1d4..d7fe35bc45cb 100644 --- a/drivers/mtd/nand/onenand/onenand_bbt.c +++ b/drivers/mtd/nand/onenand/onenand_bbt.c @@ -61,7 +61,7 @@ static int create_bbt(struct mtd_info *mtd, uint8_t *buf, struct nand_bbt_descr int startblock; loff_t from; size_t readlen; - struct mtd_oob_ops ops; + struct mtd_oob_ops ops = { }; int rgn; printk(KERN_INFO "Scanning device for bad blocks\n"); diff --git a/drivers/mtd/nand/raw/nand_bbt.c b/drivers/mtd/nand/raw/nand_bbt.c index ab630af3a309..817fff3584e3 100644 --- a/drivers/mtd/nand/raw/nand_bbt.c +++ b/drivers/mtd/nand/raw/nand_bbt.c @@ -313,7 +313,7 @@ static int scan_read_oob(struct nand_chip *this, uint8_t *buf, loff_t offs, size_t len) { struct mtd_info *mtd = nand_to_mtd(this); - struct mtd_oob_ops ops; + struct mtd_oob_ops ops = { }; int res, ret = 0; ops.mode = MTD_OPS_PLACE_OOB; @@ -354,7 +354,7 @@ static int scan_write_bbt(struct nand_chip *this, loff_t offs, size_t len, uint8_t *buf, uint8_t *oob) { struct mtd_info *mtd = nand_to_mtd(this); - struct mtd_oob_ops ops; + struct mtd_oob_ops ops = { }; ops.mode = MTD_OPS_PLACE_OOB; ops.ooboffs = 0; @@ -416,7 +416,7 @@ static int scan_block_fast(struct nand_chip *this, struct nand_bbt_descr *bd, { struct mtd_info *mtd = nand_to_mtd(this); - struct mtd_oob_ops ops; + struct mtd_oob_ops ops = { }; int ret, page_offset; ops.ooblen = mtd->oobsize; @@ -756,7 +756,7 @@ static int write_bbt(struct nand_chip *this, uint8_t *buf, uint8_t rcode = td->reserved_block_code; size_t retlen, len = 0; loff_t to; - struct mtd_oob_ops ops; + struct mtd_oob_ops ops = { }; ops.ooblen = mtd->oobsize; ops.ooboffs = 0; diff --git a/drivers/mtd/nand/raw/sm_common.c b/drivers/mtd/nand/raw/sm_common.c index ba24cb36d0b9..6df33e8d77df 100644 --- a/drivers/mtd/nand/raw/sm_common.c +++ b/drivers/mtd/nand/raw/sm_common.c @@ -99,7 +99,7 @@ static const struct mtd_ooblayout_ops oob_sm_small_ops = { static int sm_block_markbad(struct nand_chip *chip, loff_t ofs) { struct mtd_info *mtd = nand_to_mtd(chip); - struct mtd_oob_ops ops; + struct mtd_oob_ops ops = { }; struct sm_oob oob; int ret; diff --git a/drivers/mtd/nftlcore.c b/drivers/mtd/nftlcore.c index 913db0dd6a8d..64d319e959b2 100644 --- a/drivers/mtd/nftlcore.c +++ b/drivers/mtd/nftlcore.c @@ -124,7 +124,7 @@ int nftl_read_oob(struct mtd_info *mtd, loff_t offs, size_t len, size_t *retlen, uint8_t *buf) { loff_t mask = mtd->writesize - 1; - struct mtd_oob_ops ops; + struct mtd_oob_ops ops = { }; int res; ops.mode = MTD_OPS_PLACE_OOB; @@ -145,7 +145,7 @@ int nftl_write_oob(struct mtd_info *mtd, loff_t offs, size_t len, size_t *retlen, uint8_t *buf) { loff_t mask = mtd->writesize - 1; - struct mtd_oob_ops ops; + struct mtd_oob_ops ops = { }; int res; ops.mode = MTD_OPS_PLACE_OOB; @@ -168,7 +168,7 @@ static int nftl_write(struct mtd_info *mtd, loff_t offs, size_t len, size_t *retlen, uint8_t *buf, uint8_t *oob) { loff_t mask = mtd->writesize - 1; - struct mtd_oob_ops ops; + struct mtd_oob_ops ops = { }; int res; ops.mode = MTD_OPS_PLACE_OOB; diff --git a/drivers/mtd/sm_ftl.c b/drivers/mtd/sm_ftl.c index 0cff2cda1b5a..cb182333d635 100644 --- a/drivers/mtd/sm_ftl.c +++ b/drivers/mtd/sm_ftl.c @@ -239,7 +239,7 @@ static int sm_read_sector(struct sm_ftl *ftl, uint8_t *buffer, struct sm_oob *oob) { struct mtd_info *mtd = ftl->trans->mtd; - struct mtd_oob_ops ops; + struct mtd_oob_ops ops = { }; struct sm_oob tmp_oob; int ret = -EIO; int try = 0; @@ -323,7 +323,7 @@ static int sm_write_sector(struct sm_ftl *ftl, int zone, int block, int boffset, uint8_t *buffer, struct sm_oob *oob) { - struct mtd_oob_ops ops; + struct mtd_oob_ops ops = { }; struct mtd_info *mtd = ftl->trans->mtd; int ret; diff --git a/drivers/mtd/ssfdc.c b/drivers/mtd/ssfdc.c index 1d05c121904c..04da685c36be 100644 --- a/drivers/mtd/ssfdc.c +++ b/drivers/mtd/ssfdc.c @@ -163,7 +163,7 @@ static int read_physical_sector(struct mtd_info *mtd, uint8_t *sect_buf, /* Read redundancy area (wrapper to MTD_READ_OOB */ static int read_raw_oob(struct mtd_info *mtd, loff_t offs, uint8_t *buf) { - struct mtd_oob_ops ops; + struct mtd_oob_ops ops = { }; int ret; ops.mode = MTD_OPS_RAW; diff --git a/drivers/mtd/tests/nandbiterrs.c b/drivers/mtd/tests/nandbiterrs.c index 08084c018a59..98d7508f95b1 100644 --- a/drivers/mtd/tests/nandbiterrs.c +++ b/drivers/mtd/tests/nandbiterrs.c @@ -99,7 +99,7 @@ static int write_page(int log) static int rewrite_page(int log) { int err = 0; - struct mtd_oob_ops ops; + struct mtd_oob_ops ops = { }; if (log) pr_info("rewrite page\n"); diff --git a/drivers/mtd/tests/oobtest.c b/drivers/mtd/tests/oobtest.c index 532997e10e29..13fed398937e 100644 --- a/drivers/mtd/tests/oobtest.c +++ b/drivers/mtd/tests/oobtest.c @@ -56,7 +56,7 @@ static void do_vary_offset(void) static int write_eraseblock(int ebnum) { int i; - struct mtd_oob_ops ops; + struct mtd_oob_ops ops = { }; int err = 0; loff_t addr = (loff_t)ebnum * mtd->erasesize; @@ -165,7 +165,7 @@ static size_t memffshow(loff_t addr, loff_t offset, const void *cs, static int verify_eraseblock(int ebnum) { int i; - struct mtd_oob_ops ops; + struct mtd_oob_ops ops = { }; int err = 0; loff_t addr = (loff_t)ebnum * mtd->erasesize; size_t bitflips; @@ -260,7 +260,7 @@ static int verify_eraseblock(int ebnum) static int verify_eraseblock_in_one_go(int ebnum) { - struct mtd_oob_ops ops; + struct mtd_oob_ops ops = { }; int err = 0; loff_t addr = (loff_t)ebnum * mtd->erasesize; size_t len = mtd->oobavail * pgcnt; @@ -338,7 +338,7 @@ static int __init mtd_oobtest_init(void) int err = 0; unsigned int i; uint64_t tmp; - struct mtd_oob_ops ops; + struct mtd_oob_ops ops = { }; loff_t addr = 0, addr0; printk(KERN_INFO "\n"); diff --git a/drivers/mtd/tests/readtest.c b/drivers/mtd/tests/readtest.c index e70d588083a3..99670ef91f2b 100644 --- a/drivers/mtd/tests/readtest.c +++ b/drivers/mtd/tests/readtest.c @@ -47,7 +47,7 @@ static int read_eraseblock_by_page(int ebnum) err = ret; } if (mtd->oobsize) { - struct mtd_oob_ops ops; + struct mtd_oob_ops ops = { }; ops.mode = MTD_OPS_PLACE_OOB; ops.len = 0; diff --git a/fs/jffs2/wbuf.c b/fs/jffs2/wbuf.c index c6821a509481..4061e0ba7010 100644 --- a/fs/jffs2/wbuf.c +++ b/fs/jffs2/wbuf.c @@ -1035,7 +1035,7 @@ int jffs2_check_oob_empty(struct jffs2_sb_info *c, { int i, ret; int cmlen = min_t(int, c->oobavail, OOB_CM_SIZE); - struct mtd_oob_ops ops; + struct mtd_oob_ops ops = { }; ops.mode = MTD_OPS_AUTO_OOB; ops.ooblen = NR_OOB_SCAN_PAGES * c->oobavail; @@ -1076,7 +1076,7 @@ int jffs2_check_oob_empty(struct jffs2_sb_info *c, int jffs2_check_nand_cleanmarker(struct jffs2_sb_info *c, struct jffs2_eraseblock *jeb) { - struct mtd_oob_ops ops; + struct mtd_oob_ops ops = { }; int ret, cmlen = min_t(int, c->oobavail, OOB_CM_SIZE); ops.mode = MTD_OPS_AUTO_OOB; @@ -1101,7 +1101,7 @@ int jffs2_write_nand_cleanmarker(struct jffs2_sb_info *c, struct jffs2_eraseblock *jeb) { int ret; - struct mtd_oob_ops ops; + struct mtd_oob_ops ops = { }; int cmlen = min_t(int, c->oobavail, OOB_CM_SIZE); ops.mode = MTD_OPS_AUTO_OOB; -- 2.34.1