All of lore.kernel.org
 help / color / mirror / Atom feed
From: Heikki Krogerus <heikki.krogerus@linux.intel.com>
To: Sasha Levin <sashal@kernel.org>
Cc: "Rafael J. Wysocki" <rafael.j.wysocki@intel.com>,
	Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
	stable@vger.kernel.org
Subject: Re: [PATCH] device property: Fix the length used in PROPERTY_ENTRY_STRING
Date: Mon, 28 Jan 2019 11:07:24 +0200	[thread overview]
Message-ID: <20190128090724.GE7262@kuha.fi.intel.com> (raw)
In-Reply-To: <20190126160946.3D3CD218B0@mail.kernel.org>

[-- Attachment #1: Type: text/plain, Size: 2577 bytes --]

On Sat, Jan 26, 2019 at 04:09:45PM +0000, Sasha Levin wrote:
> Hi,
> 
> [This is an automated email]
> 
> This commit has been processed because it contains a "Fixes:" tag,
> fixing commit: a85f42047533 device property: helper macros for property entry creation.
> 
> The bot has tested the following trees: v4.20.4, v4.19.17, v4.14.95, v4.9.152.
> 
> v4.20.4: Build OK!
> v4.19.17: Build OK!
> v4.14.95: Failed to apply! Possible dependencies:
>     63dcc7090137 ("device property: Get rid of union aliasing")
>     6e98503dba64 ("efi/apple-properties: Remove redundant attribute initialization from unmarshal_key_value_pairs()")
>     b2ca8bdff60c ("device property: Reuse property_entry_free_data()")
>     d5f962fa269e ("device property: Move property_entry_free_data() upper")
> 
> v4.9.152: Failed to apply! Possible dependencies:
>     027b25b26447 ("ACPI: Add FWNODE_ACPI_STATIC fwnode type")
>     07bb80d40b0e ("device property: Add support for remote endpoints")
>     0f194992c85f ("device property: Fix reading pset strings using array access functions")
>     1df09bc66f9b ("of: Move OF property and graph API from base.c to property.c")
>     21ea73f54c6d ("device property: Add fwnode_get_named_child_node()")
>     2475a2b6c877 ("drivers/of/base.c: Add of_property_read_u64_index")
>     2bd5452d46df ("device property: Add support for fwnode endpoints")
>     34055190b19d ("ACPI / property: Add fwnode_get_next_child_node()")
>     3708184afc77 ("device property: Move FW type specific functionality to FW specific files")
>     39e5aeed835d ("device property: Constify argument to pset fwnode backend")
>     3b27d00e7b6d ("device property: Move fwnode graph ops to firmware specific locations")
>     5fa23530d4fc ("of: base: add support to find the level of the last cache")
>     63dcc7090137 ("device property: Get rid of union aliasing")
>     79389a83bc38 ("ACPI / property: Add support for remote endpoints")
>     99db5ff7fe0b ("ACPI / property: Hierarchical properties support update")
>     afaf26fd8458 ("device property: Add fwnode_get_parent()")
>     b85ad494098b ("of: introduce of_graph_get_remote_node")
>     bec84da8d1da ("device property: allow to constify properties")
>     db3e50f3234b ("device property: Get rid of struct fwnode_handle type field")
>     dfa672fbc0d9 ("ACPI / property: Add possiblity to retrieve parent firmware node")
>     e7887c284969 ("device property: Add fwnode_handle_get()")
> 
> 
> How should we proceed with this patch?

Can we use the attached separate patches with v4.9 and v4.14 ?

thanks,

-- 
heikki

[-- Attachment #2: for_v4.9.x.patch --]
[-- Type: text/plain, Size: 1341 bytes --]

From 6bd60b922b1f1e43fd534a11194553f27c036a1e Mon Sep 17 00:00:00 2001
From: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Date: Wed, 23 Jan 2019 17:16:47 +0300
Subject: [PATCH] device property: Fix the length used in PROPERTY_ENTRY_STRING

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.

Fixes: a85f42047533 ("device property: helper macros for property entry creation")
Cc: stable@vger.kernel.org # 4.9.x
Signed-off-by: Heikki Krogerus <heikki.krogerus@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 459337fb44d0..d5c7ebda4113 100644
--- a/include/linux/property.h
+++ b/include/linux/property.h
@@ -233,7 +233,7 @@ struct property_entry {
 #define PROPERTY_ENTRY_STRING(_name_, _val_)		\
 (struct property_entry) {				\
 	.name = _name_,					\
-	.length = sizeof(_val_),			\
+	.length = sizeof(const char *),			\
 	.is_string = true,				\
 	{ .value = { .str = _val_ } },			\
 }
-- 
2.20.1


[-- Attachment #3: for_v4.14.x.patch --]
[-- Type: text/plain, Size: 1342 bytes --]

From 9ebe90b6f12d4107e8b7c3949a924486d311e28f Mon Sep 17 00:00:00 2001
From: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Date: Wed, 23 Jan 2019 17:16:47 +0300
Subject: [PATCH] device property: Fix the length used in PROPERTY_ENTRY_STRING

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.

Fixes: a85f42047533 ("device property: helper macros for property entry creation")
Cc: stable@vger.kernel.org # 4.14.x
Signed-off-by: Heikki Krogerus <heikki.krogerus@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 89d94b349912..45777ec1c524 100644
--- a/include/linux/property.h
+++ b/include/linux/property.h
@@ -252,7 +252,7 @@ struct property_entry {
 #define PROPERTY_ENTRY_STRING(_name_, _val_)		\
 (struct property_entry) {				\
 	.name = _name_,					\
-	.length = sizeof(_val_),			\
+	.length = sizeof(const char *),			\
 	.is_string = true,				\
 	{ .value = { .str = _val_ } },			\
 }
-- 
2.20.1


  parent reply	other threads:[~2019-01-28  9:07 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-01-23 14:44 [PATCH] device property: Fix the length used in PROPERTY_ENTRY_STRING Heikki Krogerus
2019-01-25 14:32 ` Andy Shevchenko
2019-01-30 23:57   ` Rafael J. Wysocki
     [not found] ` <20190126160946.3D3CD218B0@mail.kernel.org>
2019-01-28  9:07   ` Heikki Krogerus [this message]
2019-03-20 20:20     ` Greg KH

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190128090724.GE7262@kuha.fi.intel.com \
    --to=heikki.krogerus@linux.intel.com \
    --cc=andriy.shevchenko@linux.intel.com \
    --cc=rafael.j.wysocki@intel.com \
    --cc=sashal@kernel.org \
    --cc=stable@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.