ar8327: use flex array for name

Simplifies allocation.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22069
Signed-off-by: Robert Marko <robimarko@gmail.com>
This commit is contained in:
Rosen Penev 2026-02-08 14:10:16 -08:00 committed by Robert Marko
parent 96a8957b7d
commit 0278e25d67
2 changed files with 2 additions and 3 deletions

View File

@ -319,7 +319,7 @@ ar8327_led_create(struct ar8xxx_priv *priv,
if (led_info->led_num >= AR8327_NUM_LEDS)
return -EINVAL;
aled = kzalloc(sizeof(*aled) + strlen(led_info->name) + 1,
aled = kzalloc(struct_size(aled, name, strlen(led_info->name) + 1),
GFP_KERNEL);
if (!aled)
return -ENOMEM;
@ -333,7 +333,6 @@ ar8327_led_create(struct ar8xxx_priv *priv,
if (aled->mode == AR8327_LED_MODE_HW)
aled->enable_hw_mode = true;
aled->name = (char *)(aled + 1);
strcpy(aled->name, led_info->name);
aled->cdev.name = aled->name;

View File

@ -339,7 +339,6 @@ struct ar8327_led {
struct led_classdev cdev;
struct ar8xxx_priv *sw_priv;
char *name;
bool active_low;
u8 led_num;
enum ar8327_led_mode mode;
@ -350,6 +349,7 @@ struct ar8327_led {
bool enable_hw_mode;
enum ar8327_led_pattern pattern;
struct fwnode_handle *fwnode;
char name[];
};
struct ar8327_data {