leds: mt6370: Annotate struct mt6370_priv with __counted_by
Subsystems (2)
PATCH 1/1 leds: mt6370: Annotate struct mt6370_priv 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 mt6370_priv.
[1] https://github.com/kees/kernel-tools/blob/trunk/coccinelle/examples/counted_by.cocci
--- drivers/leds/flash/leds-mt6370-flash.c | 2 +- drivers/leds/rgb/leds-mt6370-rgb.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)
drivers/leds/flash/leds-mt6370-flash.c +1 -1
@@ -81,7 +81,7 @@ struct mt6370_priv {unsigned int fled_torch_used;unsigned int leds_active;unsigned int leds_count; -struct mt6370_led leds[]; + struct mt6370_led leds[] __counted_by(leds_count); };static int mt6370_torch_brightness_set (struct led_classdev *lcdev,enum led_brightness level)
drivers/leds/rgb/leds-mt6370-rgb.c +1 -1
@@ -153,7 +153,7 @@ struct mt6370_priv {const struct mt6370_pdata *pdata;unsigned int leds_count;unsigned int leds_active; -struct mt6370_led leds[]; + struct mt6370_led leds[] __counted_by(leds_count); };static const struct reg_field common_reg_fields[F_MAX_FIELDS ] = {
Signature · 1 line
2.34.1
Quoted 10 lines · Kees Cook
Prepare for the coming implementation by GCC and Clang of the
__counted_byattribute. Flexible array members annotated with__counted_bycan have their accesses bounds-checked at run-time checking viaCONFIG_UBSAN_BOUNDS(for array indexing) andCONFIG_FORTIFY_SOURCE(for strcpy/memcpy-family functions).As found with Coccinelle[1], add
__counted_byfor structmt6370_priv.[1] https://github.com/kees/kernel-tools/blob/trunk/coccinelle/examples/counted_by.cocci
Quoted 13 lines
Cc Pavel Machek <[email protected]>Cc Lee Jones <[email protected]>Cc Matthias Brugger <[email protected]>Cc AngeloGioacchino Del Regno <[email protected]>Cc Alice Chen <[email protected]>Cc Jacek Anaszewski <[email protected]>Cc ChiYuan Huang <[email protected]>Cc ChiaEn Wu <[email protected]>Cc kernel test robot <[email protected]>Signed-off-by Kees Cook <[email protected]>
Thanks
Signature · 1 line
Gustavo
Quoted 31 lines
--- drivers/leds/flash/leds-mt6370-flash.c | 2 +- drivers/leds/rgb/leds-mt6370-rgb.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)drivers/leds/flash/leds-mt6370-flash.c +1
-1@@ -81,7 +81,7 @@ struct mt6370_priv {unsigned int fled_torch_used;unsigned int leds_active;unsigned int leds_count; -struct mt6370_led leds[]; + struct mt6370_led leds[] __counted_by(leds_count); };static int mt6370_torch_brightness_set (struct led_classdev *lcdev,enum led_brightness level)drivers/leds/rgb/leds-mt6370-rgb.c +1
-1@@ -153,7 +153,7 @@ struct mt6370_priv {const struct mt6370_pdata *pdata;unsigned int leds_count;unsigned int leds_active; -struct mt6370_led leds[]; + struct mt6370_led leds[] __counted_by(leds_count); };static const struct reg_field common_reg_fields[F_MAX_FIELDS ] = {
Il 15/09/23 22:10, Kees Cook ha scritto:
Quoted 10 lines
Prepare for the coming implementation by GCC and Clang of the
__counted_byattribute. Flexible array members annotated with__counted_bycan have their accesses bounds-checked at run-time checking viaCONFIG_UBSAN_BOUNDS(for array indexing) andCONFIG_FORTIFY_SOURCE(for strcpy/memcpy-family functions).As found with Coccinelle[1], add
__counted_byfor structmt6370_priv.[1] https://github.com/kees/kernel-tools/blob/trunk/coccinelle/examples/counted_by.cocci
Quoted 13 lines
Cc Pavel Machek <[email protected]>Cc Lee Jones <[email protected]>Cc Matthias Brugger <[email protected]>Cc AngeloGioacchino Del Regno <[email protected]>Cc Alice Chen <[email protected]>Cc Jacek Anaszewski <[email protected]>Cc ChiYuan Huang <[email protected]>Cc ChiaEn Wu <[email protected]>Cc kernel test robot <[email protected]>Signed-off-by Kees Cook <[email protected]>
Re: (subset) [PATCH] leds: mt6370: Annotate struct mt6370_priv with __counted_by
In reply to Kees CookQuoted 9 lines · Kees Cook
Prepare for the coming implementation by GCC and Clang of the
__counted_byattribute. Flexible array members annotated with__counted_bycan have their accesses bounds-checked at run-time checking viaCONFIG_UBSAN_BOUNDS(for array indexing) andCONFIG_FORTIFY_SOURCE(for strcpy/memcpy-family functions).As found with Coccinelle[1], add
__counted_byfor structmt6370_priv.[...]
Applied, thanks!
[1/1] leds: mt6370: Annotate struct mt6370_priv with __counted_by
commit: 799107c1bb9049f9b3f28b5d651e336d09856019
--
Lee Jones [李琼斯]