From patchwork Tue Feb 21 06:33:40 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Arseniy Krasnov X-Patchwork-Id: 59776 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:adf:eb09:0:0:0:0:0 with SMTP id s9csp1710342wrn; Mon, 20 Feb 2023 22:46:37 -0800 (PST) X-Google-Smtp-Source: AK7set+YWbZSgEmFQiw1GiHPFUtTJJSRRJLkrcS7Nf5iCi7pqeKWChYNdwRO3ctdQumcJ5JUFTY3 X-Received: by 2002:a05:6402:1853:b0:4ad:a70c:f9d8 with SMTP id v19-20020a056402185300b004ada70cf9d8mr2967435edy.16.1676961997760; Mon, 20 Feb 2023 22:46:37 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1676961997; cv=none; d=google.com; s=arc-20160816; b=dWdsirRQY9u+wEuIw9t0EWRfOKXTsWSf9tSVj/KUj7rCBY/6p/Gyduoa/1+izPjRQx oUbxUF8N8097GjlESoh99dXq1m+fVz7U6BsK9rxXKG6eHHXknNNCkyO1nwBraZRfYKvb 5S9Xg4lyOaqfeUV7ochK3CIdwVF9wcOAuqgqKZXDN3iLrCuvGvx0PYwux1sJDbz+/KOD Cmk8bHrXKH17VgJZsY9bIcA/5jeIYmE8s4P9CEWxluumz/W4NDYK+fX2msOiXhQKlwXM y1M88U3O8ppcUKTFyxzZlTV1U+3eww7DxZykmOCHeYMXB8MZbOVUFqShyZ4eiClU94qQ AEGg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:content-transfer-encoding :content-id:content-language:accept-language:message-id:date :thread-index:thread-topic:subject:cc:to:from:dkim-signature; bh=J4GGD+2l/dLrAC7SommQy5cNs2a8BqaY2AypKovMSnw=; b=kuZifgT+mUC3uqeDkfz+19YYgWyaZWK0aUwiK3ZDYVfFW9KNPCTYbqEhYsZ3HBnvGy 6PeTHTfFZf7deyhFT8fU0XnaZOIE1lLmwxGQkIenwyMSblNHFiCamtNbn/x0QIK1Bh3m LK+ZeFdBjjc4Rtgc3Q+r6egev6Edz9Kglw2vgVLlwzhvTCC0qAVdV3Tz4nNn6XVFqLZY c8NbmBXWCb6d/HodsJtukcoSGEpJQ3Zv6LppAp4weznAUisCYd9yOacloTPOyw/sSU6o YkBzq117229V7z64A0SfZBUqdOFtNOA7UzPtAY6vo5Jmp4tA1I5LNpXXFIqrIvs/ToQJ qMHQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@sberdevices.ru header.s=mail header.b=H5mWv+a4; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=sberdevices.ru Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id w23-20020aa7cb57000000b004acc7a0756fsi7276977edt.457.2023.02.20.22.46.14; Mon, 20 Feb 2023 22:46:37 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@sberdevices.ru header.s=mail header.b=H5mWv+a4; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=sberdevices.ru Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233144AbjBUGdp (ORCPT + 99 others); Tue, 21 Feb 2023 01:33:45 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:45552 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229643AbjBUGdo (ORCPT ); Tue, 21 Feb 2023 01:33:44 -0500 Received: from mx.sberdevices.ru (mx.sberdevices.ru [45.89.227.171]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 166A01116A for ; Mon, 20 Feb 2023 22:33:43 -0800 (PST) Received: from s-lin-edge02.sberdevices.ru (localhost [127.0.0.1]) by mx.sberdevices.ru (Postfix) with ESMTP id 736BB5FD4A; Tue, 21 Feb 2023 09:33:41 +0300 (MSK) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sberdevices.ru; s=mail; t=1676961221; bh=J4GGD+2l/dLrAC7SommQy5cNs2a8BqaY2AypKovMSnw=; h=From:To:Subject:Date:Message-ID:Content-Type:MIME-Version; b=H5mWv+a4/3PrOU5+6r/HWaHqjlghL3+HU74g0ctMEHN3mho1SxruF31ruNO1VxZMk sB0/GB+XlkCEmw/2H8rcZza/BqO8s0DAgRiLYlJxMeD4vAc9enKve7P2jBBYC7vzlL yoc84zuACIZKQsKbMVdDcMzJzpb9phq52zJV/CBDxrL52FqSDgdtD1dCZWzlzNvaiY Tl5Ovq3zroo7TBRyl0nJu+1ZOA6n1s1Zxxe43Wlbx8EIRoLZjMYcWLp6GfDlnFKMgv E7aSbSBp+edvh8fPZkYVUEF3MlsxY6BKbNl77v8zzZQ/7dFrprBSsuuewuemYLk/jL +lCDG44njt/8Q== Received: from S-MS-EXCH01.sberdevices.ru (S-MS-EXCH01.sberdevices.ru [172.16.1.4]) by mx.sberdevices.ru (Postfix) with ESMTP; Tue, 21 Feb 2023 09:33:41 +0300 (MSK) From: Arseniy Krasnov To: Liang Yang , Miquel Raynal , Richard Weinberger , "Vignesh Raghavendra" , Neil Armstrong , Kevin Hilman , Jerome Brunet , Martin Blumenstingl CC: "linux-mtd@lists.infradead.org" , "linux-arm-kernel@lists.infradead.org" , "linux-amlogic@lists.infradead.org" , "linux-kernel@vger.kernel.org" , kernel , "Krasnov Arseniy" Subject: [PATCH] mtd: rawnand: meson: initialize struct with zeroes Thread-Topic: [PATCH] mtd: rawnand: meson: initialize struct with zeroes Thread-Index: AQHZRb5vNxURJELs6U2kTl21bK7YBg== Date: Tue, 21 Feb 2023 06:33:40 +0000 Message-ID: <688e481f-5273-e74a-3349-cbf8de73e791@sberdevices.ru> Accept-Language: en-US, ru-RU Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [172.16.1.12] Content-ID: <7E6F31EA176CE44E979062A9F4E1BC7F@sberdevices.ru> MIME-Version: 1.0 X-KSMG-Rule-ID: 4 X-KSMG-Message-Action: clean X-KSMG-AntiSpam-Status: not scanned, disabled by settings X-KSMG-AntiSpam-Interceptor-Info: not scanned X-KSMG-AntiPhishing: not scanned, disabled by settings X-KSMG-AntiVirus: Kaspersky Secure Mail Gateway, version 1.1.2.30, bases: 2023/02/21 02:56:00 #20885447 X-KSMG-AntiVirus-Status: Clean, skipped X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1758422103631812951?= X-GMAIL-MSGID: =?utf-8?q?1758422103631812951?= This structure must be zeroed, because it's field 'hw->core' is used as 'parent' in 'clk_core_fill_parent_index()', but it will be uninitialized. This happens, because when this struct is not zeroed, pointer 'hw' is "initialized" by garbage, which is valid pointer, but points to some garbage. So 'hw' will be dereferenced, but 'core' contains some random data which will be interpreted as pointer. The following backtrace is result of dereference of such pointer: [ 1.081319] __clk_register+0x414/0x820 [ 1.085113] devm_clk_register+0x64/0xd0 [ 1.088995] meson_nfc_probe+0x258/0x6ec [ 1.092875] platform_probe+0x70/0xf0 [ 1.096498] really_probe+0xc8/0x3e0 [ 1.100034] __driver_probe_device+0x84/0x190 [ 1.104346] driver_probe_device+0x44/0x120 [ 1.108487] __driver_attach+0xb4/0x220 [ 1.112282] bus_for_each_dev+0x78/0xd0 [ 1.116077] driver_attach+0x2c/0x40 [ 1.119613] bus_add_driver+0x184/0x240 [ 1.123408] driver_register+0x80/0x140 [ 1.127203] __platform_driver_register+0x30/0x40 [ 1.131860] meson_nfc_driver_init+0x24/0x30 Signed-off-by: Arseniy Krasnov --- drivers/mtd/nand/raw/meson_nand.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- 2.35.0 diff --git a/drivers/mtd/nand/raw/meson_nand.c b/drivers/mtd/nand/raw/meson_nand.c index 5ee01231ac4c..30e326adabfc 100644 --- a/drivers/mtd/nand/raw/meson_nand.c +++ b/drivers/mtd/nand/raw/meson_nand.c @@ -991,7 +991,7 @@ static const struct mtd_ooblayout_ops meson_ooblayout_ops = { static int meson_nfc_clk_init(struct meson_nfc *nfc) { - struct clk_parent_data nfc_divider_parent_data[1]; + struct clk_parent_data nfc_divider_parent_data[1] = {0}; struct clk_init_data init = {0}; int ret;