From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753498AbdJMDI7 (ORCPT ); Thu, 12 Oct 2017 23:08:59 -0400 Received: from mail-ve1eur01on0139.outbound.protection.outlook.com ([104.47.1.139]:40592 "EHLO EUR01-VE1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1753292AbdJMDI4 (ORCPT ); Thu, 12 Oct 2017 23:08:56 -0400 X-HPESVCS-Source-Ip: 10.159.218.88 From: Lixin Wang To: Pantelis Antoniou , Rob Herring , Frank Rowand CC: , , alawang Subject: [PATCH] of: overlay: fix memory leak related to duplicated property Date: Fri, 13 Oct 2017 11:07:36 +0800 Message-ID: <1507864056-52089-1-git-send-email-alan.1.wang@nokia-sbell.com> X-Mailer: git-send-email 2.6.2 In-Reply-To: <1507859591-2337-1-git-send-email-alan.1.wang@nokia-sbell.com> References: <1507859591-2337-1-git-send-email-alan.1.wang@nokia-sbell.com> X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:131.228.2.241;IPV:CAL;SCL:-1;CTRY:FI;EFV:NLI;SFV:NSPM;SFS:(10019020)(6009001)(39860400002)(376002)(346002)(2980300002)(438002)(199003)(189002)(478600001)(26826003)(36756003)(5003940100001)(68736007)(107886003)(6266002)(53936002)(4326008)(39060400002)(22756006)(97736004)(33646002)(50986999)(76176999)(106466001)(90966002)(2906002)(6666003)(356003)(2950100002)(47776003)(54906003)(305945005)(106002)(103686004)(189998001)(50466002)(5660300001)(48376002)(16586007)(50226002)(316002)(42186006)(46386002)(86362001)(110136005)(8676002)(81156014)(45336002)(81166006)(52956003)(8936002);DIR:OUT;SFP:1102;SCL:1;SRVR:HE1PR0701MB2970;H:mailrelay.int.nokia.com;FPR:;SPF:Pass;PTR:InfoDomainNonexistent;A:0;MX:1;LANG:en; X-Microsoft-Exchange-Diagnostics: 1;DB5EUR03FT013;1:spFqLEosNiMdBKnh+ynypn5TC7WctNrB1rEXeGy6FAHPDa8zGFdylAWGElHlQP31SXCGQa26WUcYAGpfPH3XCbNJkeKRqond1Dk9ag6jnCbutKj8VS1efxh4KaXY/zsZ MIME-Version: 1.0 Content-Type: text/plain X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: caf94b8a-dd6b-4b84-f6dc-08d511e7bc18 X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001)(2017030254152)(8251501002)(2017052603199)(201703131423075)(201703031133081)(201702281549075);SRVR:HE1PR0701MB2970; X-Microsoft-Exchange-Diagnostics: 1;HE1PR0701MB2970;3:UehP9ZjtmnvcD18dUOCboHI8J4Pvzr5yyMKSPkrtcEVI/pmDIHKW6p87TWOuUF0N6EPpj6oCYK/86xKZ8dShU3SStjxK28ONbY+RSlOpi66TZrdXwCbLkYjMlNyQr2BlBhSiWuRzyALg1FRYuKyKzbJ7IwtE59RBYOgu/2fIBQ+Xcm2K1bdcucMLg7P08Gm/IlWSEpzsTjneAOuXOPGg5r/xRs0Qfzsf9uDfk4+3c+IerouYir0gnIxfVUHEo4+DdHGwbT4ek/ODl7a2MU3F+7yPE6fM5TGJn09vm/4SIPa/8Je3C11JW0EIxdrDvVBu0WhIhZAF81VffMIJPUK0FVUvqeBOSxAUD9FlrLifhew=;25:ol4e3/pevg1suXv0FD1Y4XziSsWswZalAtxLW+iJCwwDRwucpXaTC8UxYcBT4vXl/KcpR5wD0PX7Dav7nTdoyAY13k6Jx4xOl1DC4HdUkXE7crT8JozIqgUDrbecg07Wa+f2dYU7bU2Gt8RZ3le7Kp2ulM3eQQLZ0rm6j/KtUlengYmAFNtg1mFGhT2pkmaKas9PMonRnUxVlb+QL7W0OwsSGTDmWCIPnV0HTzLQSi7e6LcdCjw1rUztGE0FMkdRC1tbJcLQM19jfwTWp5Bif2VKHHwWZV4mB4lzTt0pvaJh/xKvBw9o4gGdeq1kNXHw2RNDTH57kU+Toa85M0YwCw== X-MS-TrafficTypeDiagnostic: HE1PR0701MB2970: X-Microsoft-Exchange-Diagnostics: 1;HE1PR0701MB2970;31:0iEmzJho2jprfGMH7rS/US1oTgEbZvg8+Ji9vaExNLDujEHZkRsUh+gqpS7vV9hWj3hM2eOpJebeOs5+psdhofG1Y6hoH1vS84QqL7Gr62VdN+xW9guJzw1ZDNR7+bNrZ1CUhgAFbQLB3KFJTl7/U22wgLPgOi1ht9wrfMfrwSH+TdGb2HHXE0579KYAGT8Fh31gOhN3rIkW7dsBo+5t4OdoxKUuqe+svp7L6T/hly4=;20:CNHfo5cm5pUidEpmIs+G6aOxZt2CJNEiHNL55EpZu1HTmuZpXecTxsWBqASEwX+5s2fd/ZucSXZ3Ad1Ffnrg/UKARFg9UynKRmCLJI5JBrZ3pITX9Skz8m+NawF9Fz5Kg/4Rk1R1NI0m9hgIxG0F17H+9bLQB6LPA2lCYLBWTnoF5hknsxySyOfvVi+hcaOCRYjf7xwM+UdaR19uKw2x0RW+CIaopWdeRWqKqVhUCBujA/tiY1iylclQwmT0BXtgjvOpw9uRdBWxN1pgxl2XMSgD9XKK/Q1FJ2V78iBxA3GY+OihVw3AEESsD72i+MhLiMHKxNHAvTGnEP5R9EXGml8k4a0HCpFLULDsaty3HlQydsf409LIaA3tZ0h3X7Hdr7JT75TR8B0hhirlMnqRQYES9LFJP2OHZuHeEP1WgWRU2Un0Z7dDntyOow1t8KZGOVDwbiDaOUqM8ODzdqDaoG1GD15KU3wEsBFEIHy4sJgkk0BG5I+jwk7T1DU6rpWmoH5eMvoiGyi8YTb7F5WBPDcBK9zrwt8Wd5rmaacsaPD+uMrIbQS5YBT9A1nKCcaOoTU+ySkROWv67Y/qsamrTDi37M0NM9p0EIgOEo/WIbg= X-Exchange-Antispam-Report-Test: UriScan:; X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(2401047)(8121501046)(5005006)(100000703101)(100105400095)(3002001)(10201501046)(93006095)(93004095)(6055026)(6041248)(20161123562025)(20161123564025)(20161123560025)(20161123555025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123558100)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095);SRVR:HE1PR0701MB2970;BCL:0;PCL:0;RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095);SRVR:HE1PR0701MB2970; X-Microsoft-Exchange-Diagnostics: 1;HE1PR0701MB2970;4:qjIcjpSKQfESJzrLQElp1skSlCbc959fLD8N7lAPU8f/8GQ9qYklAXT2I5i4GcEK7oJ4ds6x95LX+CNjHRq3/a2ClpPtsFhNn2HyzxVpvfh3Q0GtXdnRZosJehDuMwIw85dzR4OhEj/gjLTVQCEX6+MSL9lPvuZv5sXTSAR4zm7Gc1YTF7nMExu5hEw/dp7tVgr1TdOnL94FxzuTl3czX4RJy7fPGahFvJUI7lN/ttHmdsVkOD+0PDGYqKfECJ/k X-Forefront-PRVS: 04599F3534 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;HE1PR0701MB2970;23:QqAFvbjZWceUqkUGh7urezZUrxS4XlJv2KswPdW?= =?us-ascii?Q?g7buiQejd/o0LnjhotrbLBuvcBFr7QdgezlszU08PYflqjj4MRdN/KeU+DfJ?= =?us-ascii?Q?T4HuVzJC7a2QRhQVJWWxgJMcsWgdf4B3qbpgXoFK7GGTIz7wk0RikbZpjdWR?= =?us-ascii?Q?4UqU2NYu7LCkNaCLNFWpeDZaZQ8ic9LWL27Y8mew6S9qDkSvDop9YFCSdQoz?= =?us-ascii?Q?lA6KLbmqJI/3rN6gMHAYUd7I0oday/TcNk7fcMUABboYp3VoLnZRjNOGyJnb?= =?us-ascii?Q?xCXtCUiEaJHng69HukFBm7sGTKJnTq7PBF1/gljTsq/km15n+39M7d/qCwJ8?= =?us-ascii?Q?1zOIc+qsUBDMxGkGBZzdmVgLYX39y9dwWWdmRlpX9VowMN557kArlZQ6PFza?= =?us-ascii?Q?WVNhrcgSKztfzY3KR9vygmRLUI2/gUQEv1f50z+Tez2BHnwRESPZO6bbynEE?= =?us-ascii?Q?MKcWY3iPcdyJQ2JAjg9c+8npyrzQnwt+aYSU95roXdLfg3v5Dmzy0wuExdG8?= =?us-ascii?Q?sMAz5lZGQm5tRwVNukcOo5FzjpHFg6Nq3CVSFe3CybIj415u+U7a2OtCdn79?= =?us-ascii?Q?ybxLOMgfqKDhsaHC6434BWkHhTh4hMWphlLZ8/90APFgmgH1M9G/YaRxcT+a?= =?us-ascii?Q?B5D432puiqAzA1FhTemxNvQw2dyB4q787KZOqJOt8q1zTuadouZx2D+SNmam?= =?us-ascii?Q?bV+Na59rOfmPWdmGRMNX0xazo+dD0LQyQLC/RfjFlceHhDt+OgSzQNgHinBq?= =?us-ascii?Q?N/9xNDR2ODN5cdaw6PwmFq4g0jtapYhUrCEDGbrqGLTcxqwhsNYOxy3L7o8Z?= =?us-ascii?Q?TY9LyOXgfEEAeooXnssPbpPuFphZxJhugLiTDXmeiu0QVwDdA0fxZiw3CFYf?= =?us-ascii?Q?0SZyivZYoxkAJyPhjctkbU45wgIW778Dpmm6lLGzqXkiS4O2Y/8wQe4huh6Y?= =?us-ascii?Q?x6hG7NuveACVtWBxk2OXQ3TZrUfylYjELwJLC/5w0e4SXJm4nfrbIf5ylqU/?= =?us-ascii?Q?7k03SVzxmHncZ7344GbntRE1DlKqZYa6kDoug8YEUbMs9cOTIp7lKBf6V4eS?= =?us-ascii?Q?1xas4UVUBGXs9OX4rTrjiAh8yajnXXfRi3JkP1ye2e9wh2ZAUHXYO8NtgYQd?= =?us-ascii?Q?3shgoK/qKT3MwLLImF8lLgbDNwYhyuyPv8P5yIYHN/Ne0b1K/RpAY5dLgclH?= =?us-ascii?Q?SokgQELrmo5t63alrzFFio26ekV/12FPRgMHk?= X-Microsoft-Exchange-Diagnostics: 1;HE1PR0701MB2970;6:8trgJ/9D20RUh9Uy62CvUCKQ9VUCI1man0SXCl38ceMR6CeLgkvMQkxo4hxZqAG/Prp/dxjqvlH0rqIVrRxLbdDyECqlvF2lAKa13brgeiv5a3EtWuA2iGi+yfBJ8vmx9dM4LB9oWPHQpidB/koj98JG6E/6GK10OhbxWNtvNqjqAlhLTFE+oh66pgN9mNHnOh1CPFVzr3kPQyMeF/ulzVvCVTjjRle++7oREsxlzDBgilSestsEn4HwtYQDujROpnh9dY3wKY0i1/EST0OYZR2VpNCHCJLLaNo+eyNrGMBTNT9B/mG6l1xyk1NA85M6qSrREPejQdQux8/D2VoVAw==;5:lFbXYJxwKp/BzFFHrgp/oElIve0eju+EA9VOt1in/IsFQfSRnYuJ0EY7F1ef1DtRPXq9FJNOlL/uHdKXZ7/fRKIH0HKjMxIweZcn5OlYZ/1C8qutkUbtf7wMRlNayh0iQBN+V2rE5mfXJlwHoe+q6A==;24:wnUhd5UJq0OAbzmW86HXpXGd+L04KWyhydk1mNXOGNa8f3lhO3YZWAyGI1hZ7Eex2IQJ1ZMCvaKDKewQcXsRTOF5tlTMHfCRuowSTI+peGk=;7:GWuH00SafSXZw3QXum1fKzcHCun0VVVFeMXo63QPPQ83R5h3yv6riwUbdSHne2MDiu5U+7kkLMj06gQDeMn0sNqlXPbK2+sIhr3W2ZCwG5NUOVL4pI/bTuGAN0rU+C46XZtmWjL/PY+WqrCo8nPePJ5RtF7SJPH1ZXQ8DW0x4/DkqpmZDYvrp7F9bIf5Dp95bcsaU1jra0fpV3Fm29cfWTyVXlHUhEB7dYV6dWanS2k= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: nokia-sbell.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Oct 2017 03:08:53.1632 (UTC) X-MS-Exchange-CrossTenant-Id: 5d471751-9675-428d-917b-70f44f9630b0 X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5d471751-9675-428d-917b-70f44f9630b0;Ip=[131.228.2.241];Helo=[mailrelay.int.nokia.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0701MB2970 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: alawang Hello, Sorry It was my fault in last email that wrote the wrong subject and sign off name. Correct them this time. Thanks Function of_changeset_add_property or of_changeset_update_property may fails. In this case the property just allocated is never deallocated. Signed-off-by: Lixin Wang --- drivers/of/overlay.c | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/drivers/of/overlay.c b/drivers/of/overlay.c index 8ecfee3..af3b9a1 100644 --- a/drivers/of/overlay.c +++ b/drivers/of/overlay.c @@ -162,6 +162,7 @@ static int of_overlay_apply_single_property(struct of_overlay *ov, bool is_symbols_node) { struct property *propn = NULL, *tprop; + int ret = 0; /* NOTE: Multiple changes of single properties not supported */ tprop = of_find_property(target, prop->name, NULL); @@ -186,10 +187,16 @@ static int of_overlay_apply_single_property(struct of_overlay *ov, /* not found? add */ if (tprop == NULL) - return of_changeset_add_property(&ov->cset, target, propn); - - /* found? update */ - return of_changeset_update_property(&ov->cset, target, propn); + ret = of_changeset_add_property(&ov->cset, target, propn); + else /* found? update */ + ret = of_changeset_update_property(&ov->cset, target, propn); + + if (ret) { + kfree(propn->name); + kfree(propn->value); + kfree(propn); + } + return ret; } static int of_overlay_apply_single_device_node(struct of_overlay *ov, -- 2.6.2