From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.5 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_PASS,URIBL_BLOCKED, USER_AGENT_MUTT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id B3736C282C8 for ; Mon, 28 Jan 2019 09:07:28 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 8050420989 for ; Mon, 28 Jan 2019 09:07:28 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726661AbfA1JH2 (ORCPT ); Mon, 28 Jan 2019 04:07:28 -0500 Received: from mga11.intel.com ([192.55.52.93]:26541 "EHLO mga11.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726611AbfA1JH1 (ORCPT ); Mon, 28 Jan 2019 04:07:27 -0500 X-Amp-Result: UNKNOWN X-Amp-Original-Verdict: FILE UNKNOWN X-Amp-File-Uploaded: False Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga102.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 28 Jan 2019 01:07:27 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.56,533,1539673200"; d="scan'208,223";a="141940695" Received: from kuha.fi.intel.com ([10.237.72.189]) by fmsmga001.fm.intel.com with SMTP; 28 Jan 2019 01:07:24 -0800 Received: by kuha.fi.intel.com (sSMTP sendmail emulation); Mon, 28 Jan 2019 11:07:24 +0200 Date: Mon, 28 Jan 2019 11:07:24 +0200 From: Heikki Krogerus To: Sasha Levin Cc: "Rafael J. Wysocki" , Andy Shevchenko , stable@vger.kernel.org Subject: Re: [PATCH] device property: Fix the length used in PROPERTY_ENTRY_STRING Message-ID: <20190128090724.GE7262@kuha.fi.intel.com> References: <20190123144416.51859-1-heikki.krogerus@linux.intel.com> <20190126160946.3D3CD218B0@mail.kernel.org> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="lrZ03NoBR/3+SXJZ" Content-Disposition: inline In-Reply-To: <20190126160946.3D3CD218B0@mail.kernel.org> User-Agent: Mutt/1.10.1 (2018-07-13) Sender: stable-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: stable@vger.kernel.org --lrZ03NoBR/3+SXJZ Content-Type: text/plain; charset=us-ascii Content-Disposition: inline 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 --lrZ03NoBR/3+SXJZ Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="for_v4.9.x.patch" >From 6bd60b922b1f1e43fd534a11194553f27c036a1e Mon Sep 17 00:00:00 2001 From: Heikki Krogerus 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 --- 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 --lrZ03NoBR/3+SXJZ Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="for_v4.14.x.patch" >From 9ebe90b6f12d4107e8b7c3949a924486d311e28f Mon Sep 17 00:00:00 2001 From: Heikki Krogerus 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 --- 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 --lrZ03NoBR/3+SXJZ--