From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752780AbbJTAtn (ORCPT ); Mon, 19 Oct 2015 20:49:43 -0400 Received: from mailout3.samsung.com ([203.254.224.33]:41081 "EHLO mailout3.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752699AbbJTAtg (ORCPT ); Mon, 19 Oct 2015 20:49:36 -0400 X-AuditID: cbfee68d-f79ae6d00000149a-85-56258f9b41c2 Date: Tue, 20 Oct 2015 00:49:31 +0000 (GMT) From: MyungJoo Ham Subject: Re: [PATCH] devfreq: correctly check failed allocation To: Insu Yun , =?utf-8?Q?=EB=B0=95=EA=B2=BD=EB=AF=BC?= , "linux-pm@vger.kernel.org" , "linux-kernel@vger.kernel.org" Cc: "taesoo@gatech.edu" , "yeongjin.jang@gatech.edu" , "insu@gatech.edu" , "changwoo@gatech.edu" Reply-to: myungjoo.ham@samsung.com MIME-version: 1.0 X-MTR: 20151020004542784@myungjoo.ham Msgkey: 20151020004542784@myungjoo.ham X-EPLocale: ko_KR.utf-8 X-Priority: 3 X-EPWebmail-Msg-Type: personal X-EPWebmail-Reply-Demand: 0 X-EPApproval-Locale: X-EPHeader: ML X-MLAttribute: X-RootMTR: 20151020004542784@myungjoo.ham X-ParentMTR: X-ArchiveUser: X-CPGSPASS: N X-ConfirmMail: N,general Content-type: text/plain; charset=utf-8 MIME-version: 1.0 Message-id: <2024270770.1209641445302170458.JavaMail.weblogic@epmlwas01b> X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFvrMIsWRmVeSWpSXmKPExsWyRsSkWHd2v2qYQfsrNYvLu+awOTB6fN4k F8AYxWWTkpqTWZZapG+XwJXx58li9oJHPBXf/ncxNzBu4eli5OQQElCXWLTkJFsXIweHhICJ xJHrVSBhCQExiQv31gOFuYBKljJKrF88jQUiYSLx8fdsdojEHEaJEydeMYMkWARUJQ4ebmAC GcQmoCcx83MyiCksYC9x+lURSLmIwFNGiVM/H4D1MgvsYpSYsuY0C8QRShJr9r0Cs3kFBCVO znwCtUxVYlLrC0aIuJrE3al7mSDi4hIX5l5ih7B5JWa0P4Wql5OY9nUNM4QtLXF+1gZGmG8W f38MFeeXOHZ7B9QcAYmpZw5C1WhJfLxyHyrOJ7Fm4VsWmPpdp5Yzw+y6v2UuVI2ExNaWJ6wg NrOAosSU7ofsIA8zC2hKrN+lj+4VXgFPifWPDjCB/C4hMJVDorlzP+MERqVZSOpmIRk1C2EU spIFjCyrGEVTC5ILipPSiwz1ihNzi0vz0vWS83M3MQLTwul/z3p3MN4+YH2IUYCDUYmHVyNG NUyINbGsuDL3EKMpMJYmMkuJJucDk09eSbyhsZmRhamJqbGRuaWZkjivotTPYCGB9MSS1OzU 1ILUovii0pzU4kOMTBycUg2Mcuq2r75GOM9I5f+8d6pP+eUzdpJRZZE5Sf2rZnu9mvc5u8dJ seWkas3XqL9aPz7b2pqUXG+rkev5ePNS7lMnIRel3ae0//KqJSz+8GD66dmHjwpOX6n6/Xsc 2wy/nJOXr32qnBN9Y4XQiRvJm/zEr+vfL9ULWxwdZ8rWzHa6nq0wZHF8quAEJZbijERDLeai 4kQA5/BRDQYDAAA= X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFjrKKsWRmVeSWpSXmKPExsVy+t/tXt3Z/aphBqdvK1lc3jWHzYHR4/Mm uQDGqDSbjNTElNQihdS85PyUzLx0WyXv4HjneFMzA0NdQ0sLcyWFvMTcVFslF58AXbfMHKCh SgpliTmlQKGAxOJiJX07m6L80pJUhYz84hJbpWhDcyM9IwM9UyM9Q+NYK0MDAyNToJqEtIw/ TxazFzziqfj2v4u5gXELTxcjJ4eQgLrEoiUn2UBsCQETiY+/Z7ND2GISF+6tB4pzAdXMYZQ4 ceIVM0iCRUBV4uDhBqYuRg4ONgE9iZmfk0FMYQF7idOvikDKRQSeMkqc+vmAHcRhFtjFKDFl zWkWiGVKEmv2vQKzeQUEJU7OfMICsUxVYlLrC0aIuJrE3al7mSDi4hIX5l6COohXYkb7U6h6 OYlpX9cwQ9jSEudnbWCEOXrx98dQcX6JY7d3QM0RkJh65iBUjZbExyv3oeJ8EmsWvmWBqd91 ajkzzK77W+ZC1UhIbG15wgpiMwsoSkzpfsgO8jCzgKbE+l366F7hFfCUWP/oANMERtlZSFKz kHTPQuhGVrKAkWUVo2hqQXJBcVJ6hZFecWJucWleul5yfu4mRnASerZoB+O/89aHGAU4GJV4 eDViVMOEWBPLiitzDzFKcDArifBq9ACFeFMSK6tSi/Lji0pzUosPMZoC42wis5Rocj4wQeaV xBsaG5uYmZhamlgYmJorifPe2MsQJiSQnliSmp2aWpBaBNPHxMEp1cCoqbn7WWDS9hml0+ev ZvMvflC1I/2R3kf9NXKT+F4tvndm1lo3Ial/X7KWbWKOk/PiPGNrUuhuw7NI6kf3rS5Z6Xe7 LzJdCI+scG++emjTRS+1q090G5N7j3l8vvdBt/D+/QVH/m6fdbSva9kfc4dbs6f/tijcvKLO cTPjMre/nFf+pdk+K5dcrsRSnJFoqMVcVJwIAHebMwlYAwAA DLP-Filter: Pass X-CFilter-Loop: Reflected Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from base64 to 8bit by mail.home.local id t9K0npNZ012339 >Since devm_kzalloc can be failed in memory pressure, >check return value and handle error. > >Signed-off-by: Insu Yun >--- > drivers/devfreq/devfreq.c | 14 ++++++++++++++ > 1 file changed, 14 insertions(+) > >diff --git a/drivers/devfreq/devfreq.c b/drivers/devfreq/devfreq.c >index ca1b362..814089f 100644 >--- a/drivers/devfreq/devfreq.c >+++ b/drivers/devfreq/devfreq.c >@@ -482,9 +482,23 @@ struct devfreq *devfreq_add_device(struct device *dev, > devfreq->profile->max_state * > devfreq->profile->max_state, > GFP_KERNEL); >+ if (!devfreq->trans_table) { >+ dev_err(dev, "%s: Unable to create transition table for the device\n", >+ __func__); >+ err = -ENOMEM; >+ goto err_dev; >+ } >+ I don't see a label 'err_dev' in devfreq.c And please note that you are under a mutex lock here as well; you must unlock it before returning. For devfreq.c of most recent release candidate, please refer to https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/drivers/devfreq/devfreq.c?id=7379047d5585187d1288486d4627873170d0005a You don't seem to be based on a recent RC as well. Cheers, MyungJoo {.n++%ݶw{.n+{G{ayʇڙ,jfhz_(階ݢj"mG?&~iOzv^m ?I