Hi,

On Sat, Oct 24, 2026 at 07:48:48PM -0700, Dmitry Torokhov wrote:
> Pass the destination buffer size to sbs_read_string_data(), and pass
> the buffer capacity reserving space for a trailing NUL terminator to
> i2c_smbus_read_block_data().
> 
> Signed-off-by: Dmitry Torokhov <[email protected]>
> ---

Acked-by: Sebastian Reichel <[email protected]>

-- Sebastian

>  drivers/power/supply/sbs-battery.c | 8 +++++---
>  1 file changed, 5 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/power/supply/sbs-battery.c 
> b/drivers/power/supply/sbs-battery.c
> index 6714313bb3a3..f8b194c58a62 100644
> --- a/drivers/power/supply/sbs-battery.c
> +++ b/drivers/power/supply/sbs-battery.c
> @@ -424,7 +424,8 @@ static int sbs_read_string_data_fallback(struct 
> i2c_client *client, u8 address,
>       return ret;
>  }
>  
> -static int sbs_read_string_data(struct i2c_client *client, u8 address, char 
> *values)
> +static int sbs_read_string_data(struct i2c_client *client, u8 address,
> +                             char *values, size_t size)
>  {
>       struct sbs_info *chip = i2c_get_clientdata(client);
>       int retries = chip->i2c_retry_count;
> @@ -440,7 +441,7 @@ static int sbs_read_string_data(struct i2c_client 
> *client, u8 address, char *val
>       }
>  
>       while (retries > 0) {
> -             ret = i2c_smbus_read_block_data(client, address, values);
> +             ret = i2c_smbus_read_block_data(client, address, size - 1, 
> values);
>               if (ret >= 0)
>                       break;
>               retries--;
> @@ -709,7 +710,8 @@ static const char *sbs_get_constant_string(struct 
> sbs_info *chip,
>  
>               addr = sbs_data[ret].addr;
>  
> -             ret = sbs_read_string_data(chip->client, addr, buf);
> +             ret = sbs_read_string_data(chip->client, addr, buf,
> +                                        sizeof(chip->strings[0]));
>               if (ret < 0)
>                       return ERR_PTR(ret);
>       }
> 
> -- 
> 2.56.0.257.gf7497c7d27-goog
> 

Attachment: signature.asc
Description: PGP signature

_______________________________________________
Openipmi-developer mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openipmi-developer

Reply via email to