On Wed, Jan 23, 2019 at 05:44:16PM +0300, Heikki Krogerus wrote:
> With string type property entries we need to use
> sizeof(const char *) instead of the number of characters as
> the length of the entry.
> 
> If the string was shorter then sizeof(const char *),
> attempts to read it would have failed with -EOVERFLOW. The
> problem has been hidden because all build-in string
> properties have had a string longer then 8 characters until
> now.
> 

Reviewed-by: Andy Shevchenko <andriy.shevche...@linux.intel.com>

> Fixes: a85f42047533 ("device property: helper macros for property entry 
> creation")
> Cc: sta...@vger.kernel.org
> Signed-off-by: Heikki Krogerus <heikki.kroge...@linux.intel.com>
> ---
>  include/linux/property.h | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/include/linux/property.h b/include/linux/property.h
> index 3789ec755fb6..65d3420dd5d1 100644
> --- a/include/linux/property.h
> +++ b/include/linux/property.h
> @@ -258,7 +258,7 @@ struct property_entry {
>  #define PROPERTY_ENTRY_STRING(_name_, _val_)         \
>  (struct property_entry) {                            \
>       .name = _name_,                                 \
> -     .length = sizeof(_val_),                        \
> +     .length = sizeof(const char *),                 \
>       .type = DEV_PROP_STRING,                        \
>       { .value = { .str = _val_ } },                  \
>  }
> -- 
> 2.20.1
> 

-- 
With Best Regards,
Andy Shevchenko


Reply via email to