Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752172AbdLMJMc (ORCPT ); Wed, 13 Dec 2017 04:12:32 -0500 Received: from mail-bn3nam01on0045.outbound.protection.outlook.com ([104.47.33.45]:4736 "EHLO NAM01-BN3-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751507AbdLMJMN (ORCPT ); Wed, 13 Dec 2017 04:12:13 -0500 From: "Rangankar, Manish" To: Jia-Ju Bai , Dept-Eng QLogic Storage Upstream , "jejb@linux.vnet.ibm.com" , "martin.petersen@oracle.com" CC: "linux-scsi@vger.kernel.org" , "linux-kernel@vger.kernel.org" Subject: Re: [PATCH] qedi: Fix a possible sleep-in-atomic bug in qedi_process_tmf_resp Thread-Topic: [PATCH] qedi: Fix a possible sleep-in-atomic bug in qedi_process_tmf_resp Thread-Index: AQHTc/H/oAs9Khu9bEWqBkbD5fWK2KNBWTYA Date: Wed, 13 Dec 2017 09:12:11 +0000 Message-ID: References: <1513156268-13328-1-git-send-email-baijiaju1990@gmail.com> In-Reply-To: <1513156268-13328-1-git-send-email-baijiaju1990@gmail.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: spf=none (sender IP is ) smtp.mailfrom=Manish.Rangankar@cavium.com; x-originating-ip: [114.143.185.87] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1;BN3PR07MB2482;6:1Ji/UpWULX+m/3xL1mqw5/QMVD102sQ3D2KDKGUSLohXL1G8q756hoK1A0DhDAiyv2u6ua31FeEVE7WgjiZSy7olSWxhxwNBhqk6NXwrp4jPADK1jSdXlp+IzYi8XjZDCgegZqATVT14sTWEDBwlNi6aOgwxTPNG9kq6k1zDvPgmLPfEs1c/363qvzZwSOqyo76WoNBxT2qf+kPgDGpf0m/LS171ZFcda62KSz3uuUfNApKBBVsrX3bAn2iUCr+HHn/SNzVDx/C/hIjkmldCuOCyHGEy57zAqGErdAiAeJhQHmMgXG5EYfqXVs3gujV5GxUmOiyS8fEarw8pMba6t54f9quFnTv55Kk1WD5c7pU=;5:1Wl3e1Z+IzVL4eb/PIhtaTTKYEB9LkT+ihP56CaSTDRNN81VvqnWI/sGMhM4va86BlEQY0ENpTPkEdz1j/WcS9zGlaxKYUxXu+dpYnoeRKZ2jtpU9pUR2oXjBbVF0kOeABaPy8GVt4cHlM+YibM0SZt3Sqe7OZSj/8zYfA36NfE=;24:nOK5l11yWVB06ylfFXiuF04HcNhhRMBJvBOnf3/jXnoX6r1jdLkgckNyMTkqbVkb8nK/wdNZ9vlZ0/VcSvxCBAgarJqW8vjlZf4tLJLR/S8=;7:bRpZ1jEOcD4S0nyL3rxbpw+Y7grEPJqLNxl/tCLuCj5xG7KLlJYFjXtl7ijdVxKi+GHhookfNq0p2g/dkttzWa9apqjRi5TuwONixQhl+nO4bFAqymwJ4JQwZ3uOTfXGinqVhJUaHkp9utvys4uV6D75uR8a+atEeXy6hqGkL3WXqYKLH1ObobO+p2NEU/HsdxB65Cio7HshueGaBptnklZj4JbFBPkmE/OCC/uy/AIWw3mg2K0S7F0QlX5XxlV1 x-ms-exchange-antispam-srfa-diagnostics: SSOS; x-ms-office365-filtering-correlation-id: 16ef99bd-7e8f-4e6d-3fc6-08d5420997f5 x-microsoft-antispam: UriScan:;BCL:0;PCL:0;RULEID:(4534020)(4602075)(4627115)(201703031133081)(201702281549075)(5600026)(4604075)(2017052603307);SRVR:BN3PR07MB2482; x-ms-traffictypediagnostic: BN3PR07MB2482: x-microsoft-antispam-prvs: x-exchange-antispam-report-test: UriScan:; x-exchange-antispam-report-cfa-test: BCL:0;PCL:0;RULEID:(6040450)(2401047)(5005006)(8121501046)(3002001)(10201501046)(93006095)(93001095)(3231023)(6041248)(20161123555025)(20161123558100)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123560025)(20161123562025)(20161123564025)(6072148)(201708071742011);SRVR:BN3PR07MB2482;BCL:0;PCL:0;RULEID:(100000803101)(100110400095);SRVR:BN3PR07MB2482; x-forefront-prvs: 052017CAF1 x-forefront-antispam-report: SFV:NSPM;SFS:(10009020)(376002)(366004)(346002)(199004)(189003)(24454002)(66066001)(3846002)(478600001)(316002)(3660700001)(4326008)(230783001)(3280700002)(76176011)(229853002)(2906002)(72206003)(99286004)(36756003)(81156014)(6506007)(14454004)(2501003)(102836003)(8676002)(6436002)(6116002)(5660300001)(81166006)(59450400001)(77096006)(105586002)(6246003)(86362001)(7736002)(305945005)(53936002)(2900100001)(25786009)(6486002)(39060400002)(2950100002)(68736007)(110136005)(97736004)(2201001)(6512007)(54906003)(106356001)(8936002)(53546011)(31853002);DIR:OUT;SFP:1101;SCL:1;SRVR:BN3PR07MB2482;H:BN3PR07MB2483.namprd07.prod.outlook.com;FPR:;SPF:None;PTR:InfoNoRecords;A:1;MX:1;LANG:en; spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM Content-Type: text/plain; charset="us-ascii" Content-ID: <352840AEB62B484492A03B8585BF37CC@namprd07.prod.outlook.com> MIME-Version: 1.0 X-OriginatorOrg: cavium.com X-MS-Exchange-CrossTenant-Network-Message-Id: 16ef99bd-7e8f-4e6d-3fc6-08d5420997f5 X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Dec 2017 09:12:11.2958 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 711e4ccf-2e9b-4bcf-a551-4094005b6194 X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR07MB2482 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 quoted-printable to 8bit by nfs id vBD9CawX016279 Content-Length: 1278 Lines: 45 On 13/12/17 2:41 PM, "Jia-Ju Bai" wrote: >The driver may sleep under a spinlock. >The function call path is: >qedi_cpu_offline (acquire the spinlock) > qedi_fp_process_cqes > qedi_mtask_completion > qedi_process_tmf_resp > kzalloc(GFP_KERNEL) --> may sleep > >To fix it, GFP_KERNEL is replaced with GFP_ATOMIC. > >This bug is found by my static analysis tool(DSAC) and checked by my code >review. > >Signed-off-by: Jia-Ju Bai >--- > drivers/scsi/qedi/qedi_fw.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > >diff --git a/drivers/scsi/qedi/qedi_fw.c b/drivers/scsi/qedi/qedi_fw.c >index bd302d3..20a9259 100644 >--- a/drivers/scsi/qedi/qedi_fw.c >+++ b/drivers/scsi/qedi/qedi_fw.c >@@ -198,7 +198,7 @@ static void qedi_process_tmf_resp(struct qedi_ctx >*qedi, > cqe_tmp_response = &cqe->cqe_common.iscsi_hdr.tmf_response; > > qedi_cmd = task->dd_data; >- qedi_cmd->tmf_resp_buf = kzalloc(sizeof(*resp_hdr_ptr), GFP_KERNEL); >+ qedi_cmd->tmf_resp_buf = kzalloc(sizeof(*resp_hdr_ptr), GFP_ATOMIC); > if (!qedi_cmd->tmf_resp_buf) { > QEDI_ERR(&qedi->dbg_ctx, > "Failed to allocate resp buf, cid=0x%x\n", >-- >1.7.9.5 Thanks, Acked-by: Manish Rangankar >