Re: [PATCH] device property: Fix the length used in PROPERTY_ENTRY_STRING

From: Rafael J. Wysocki
Date: Wed Jan 30 2019 - 18:58:35 EST


On Friday, January 25, 2019 3:32:05 PM CET Andy Shevchenko wrote:
> 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.shevchenko@xxxxxxxxxxxxxxx>
>
> > Fixes: a85f42047533 ("device property: helper macros for property entry creation")
> > Cc: stable@xxxxxxxxxxxxxxx
> > Signed-off-by: Heikki Krogerus <heikki.krogerus@xxxxxxxxxxxxxxx>
> > ---
> > 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_ } }, \
> > }
>
>

Patch applied, thanks!