linux/drivers/clk/mvebu
Kees Cook f316cdff8d clk: Annotate struct clk_hw_onecell_data with __counted_by
Prepare for the coming implementation by GCC and Clang of the __counted_by
attribute. Flexible array members annotated with __counted_by can have
their accesses bounds-checked at run-time checking via CONFIG_UBSAN_BOUNDS
(for array indexing) and CONFIG_FORTIFY_SOURCE (for strcpy/memcpy-family
functions).

As found with Coccinelle[1], add __counted_by for struct clk_hw_onecell_data.
Additionally, since the element count member must be set before accessing
the annotated flexible array member, move its initialization earlier.

[1] https://github.com/kees/kernel-tools/blob/trunk/coccinelle/examples/counted_by.cocci

Cc: Michael Turquette <mturquette@baylibre.com>
Cc: Stephen Boyd <sboyd@kernel.org>
Cc: Joel Stanley <joel@jms.id.au>
Cc: Andrew Jeffery <andrew@aj.id.au>
Cc: Taichi Sugaya <sugaya.taichi@socionext.com>
Cc: Takao Orito <orito.takao@socionext.com>
Cc: Qin Jian <qinjian@cqplus1.com>
Cc: Andrew Lunn <andrew@lunn.ch>
Cc: Gregory Clement <gregory.clement@bootlin.com>
Cc: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
Cc: Andy Gross <agross@kernel.org>
Cc: Bjorn Andersson <andersson@kernel.org>
Cc: Konrad Dybcio <konrad.dybcio@linaro.org>
Cc: Sergio Paracuellos <sergio.paracuellos@gmail.com>
Cc: Matthias Brugger <matthias.bgg@gmail.com>
Cc: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Cc: Maxime Ripard <mripard@kernel.org>
Cc: Chen-Yu Tsai <wens@csie.org>
Cc: Jernej Skrabec <jernej.skrabec@gmail.com>
Cc: David Airlie <airlied@gmail.com>
Cc: Daniel Vetter <daniel@ffwll.ch>
Cc: Samuel Holland <samuel@sholland.org>
Cc: Vinod Koul <vkoul@kernel.org>
Cc: Kishon Vijay Abraham I <kishon@kernel.org>
Cc: linux-clk@vger.kernel.org
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-aspeed@lists.ozlabs.org
Cc: linux-arm-msm@vger.kernel.org
Cc: linux-mediatek@lists.infradead.org
Cc: dri-devel@lists.freedesktop.org
Cc: linux-sunxi@lists.linux.dev
Cc: linux-phy@lists.infradead.org
Signed-off-by: Kees Cook <keescook@chromium.org>
Link: https://lore.kernel.org/r/20230817203019.never.795-kees@kernel.org
Reviewed-by: Gustavo A. R. Silva <gustavoars@kernel.org>
Signed-off-by: Stephen Boyd <sboyd@kernel.org>
2023-08-22 13:51:26 -07:00
..
ap806-system-controller.c clk: mvebu: ap80x: add AP807 clock support 2019-09-17 22:15:41 -07:00
ap-cpu-clk.c clk: mvebu: Use of_get_cpu_hwid() to read CPU ID 2023-06-20 11:56:27 -07:00
armada_ap_cp_helper.c clk: mvebu: Use of_address_to_resource() 2023-06-14 18:26:12 -07:00
armada_ap_cp_helper.h clk: mvebu: add helper file for Armada AP and CP clocks 2019-08-08 09:08:09 -07:00
armada-37xx-periph.c clk: mvebu: Convert to platform remove callback returning void 2023-03-28 19:31:44 -07:00
armada-37xx-tbg.c clk: mvebu: Convert to platform remove callback returning void 2023-03-28 19:31:44 -07:00
armada-37xx-xtal.c clk: mvebu: Convert to platform remove callback returning void 2023-03-28 19:31:44 -07:00
armada-38x.c clk: mvebu: use SPDX-License-Identifier 2018-10-01 15:12:47 -07:00
armada-39x.c clk: mvebu: use SPDX-License-Identifier 2018-10-01 15:12:47 -07:00
armada-370.c clk: armada-370: fix refcount leak in a370_clk_init() 2018-12-28 11:42:41 -08:00
armada-375.c clk: mvebu: use SPDX-License-Identifier 2018-10-01 15:12:47 -07:00
armada-xp.c clk: armada-xp: remove unused code 2019-11-13 13:19:56 -08:00
clk-corediv.c clk: Remove io.h from clk-provider.h 2019-05-15 13:21:37 -07:00
clk-cpu.c clk: mvebu: Iterate over possible CPUs instead of DT CPU nodes 2023-06-20 11:56:28 -07:00
common.c clk: mvebu: fix spelling mistake "gatable" -> "gateable" 2019-04-18 14:53:23 -07:00
common.h clk: mvebu: use SPDX-License-Identifier 2018-10-01 15:12:47 -07:00
cp110-system-controller.c clk: Annotate struct clk_hw_onecell_data with __counted_by 2023-08-22 13:51:26 -07:00
dove-divider.c clk: move from strlcpy with unused retval to strscpy 2022-08-22 16:22:53 -07:00
dove-divider.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
dove.c clk: dove: fix refcount leak in dove_clk_init() 2018-12-28 11:45:43 -08:00
Kconfig clk: mvebu: ARMADA_AP_CPU_CLK needs to select ARMADA_AP_CP_HELPER 2020-07-11 09:07:06 -07:00
kirkwood.c clk: kirkwood: Fix a clocking boot regression 2021-08-28 21:11:22 -07:00
Makefile clk: mvebu: add CPU clock driver for Armada 7K/8K 2019-08-08 09:08:09 -07:00
mv98dx3236.c clk: mv98dx3236: fix refcount leak in mv98dx3236_clk_init() 2018-12-28 11:45:41 -08:00
orion.c clk: mvebu: use SPDX-License-Identifier 2018-10-01 15:12:47 -07:00