Received: by 2002:a05:6358:d09b:b0:dc:cd0c:909e with SMTP id jc27csp2512640rwb; Fri, 11 Nov 2022 10:18:02 -0800 (PST) X-Google-Smtp-Source: AA0mqf5Ak4ECc3yT/DmJz4srV5F+sU0qVw5cou7anU+K7F+9D8vKGPRL0yWx5QsnrFTBodaHecdZ X-Received: by 2002:a17:902:d381:b0:186:5de3:8f10 with SMTP id e1-20020a170902d38100b001865de38f10mr3595204pld.92.1668190681990; Fri, 11 Nov 2022 10:18:01 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1668190681; cv=none; d=google.com; s=arc-20160816; b=gyNEAdTz3MAS3H936IkDUyw6RicM06ODeOxidoh+HybSiwyi+H7GRTAlqYZknL5ddD 4IxxZpc8A45r0GSKe3zrAq/X9j3CUR1nnUjbytodwifmB/E0nUybFd7srj8bj1EI2Y4w avrgjTanZHVAkycS3tv/bRmtZx5fLxd9xst7rKI1Kz9u8Qm6ikXKuHuzLIpqlEOGXmOk LBk7M6DM4XR2OUmtsl3UbQ50vjg1ha1FUjO8z+fngDuLXRn/kaXh2nDnfbqUxSymZZSa Ka+VdkAnL2N79nP6gfgHZwSmXKMnZqLvtFe2PJ+7j4AgJpryVP/u7UBlSkANyn0KuC5K mjUg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:in-reply-to:from :content-language:references:cc:to:subject:reply-to:user-agent :mime-version:date:message-id; bh=/ZYnJpNBTkVwcsM3dHDRjlZc0IYWodOTWFE5Dh0LHRk=; b=tbwLH6GnwR/BdD4EBOWaeRwhhD54qy+CHR31AMcbPPmjqIwZdkHP+pF4XadAf3ULrT HKfIleTx2omZXhOKwDzsh2FBKn6pu2vY5vGZeGJ/7MmReL8tx4oNXJY3AbwF1Mgs2FJl gkLiqKEiN1zU23P6Q5IqvBFsD5hWGhupAJUN0CKP3dfc9FDR11Yd6xRbEQ7KG9JaqhKm q8LXWHjb35pnHAaGbDQexIh7iERc/th5W1aOfx6ELb2FdQPJHVjX4xZzvDeczqynpYLF D86rvf6mWtwHM0QOQFM1gTODXU/IRLXCjsN8QbuA08fx8UU9tASc2bm/GDzWwn7KfqNM Etxg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id l4-20020a170902d04400b0017f802fcffesi2761393pll.410.2022.11.11.10.17.49; Fri, 11 Nov 2022 10:18:01 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233802AbiKKRa5 (ORCPT + 91 others); Fri, 11 Nov 2022 12:30:57 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:34658 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232372AbiKKRa4 (ORCPT ); Fri, 11 Nov 2022 12:30:56 -0500 X-Greylist: delayed 420 seconds by postgrey-1.37 at lindbergh.monkeyblade.net; Fri, 11 Nov 2022 09:30:54 PST Received: from mp-relay-02.fibernetics.ca (mp-relay-02.fibernetics.ca [208.85.217.137]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id A1EAEFAEA; Fri, 11 Nov 2022 09:30:54 -0800 (PST) Received: from mailpool-fe-02.fibernetics.ca (mailpool-fe-02.fibernetics.ca [208.85.217.145]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mp-relay-02.fibernetics.ca (Postfix) with ESMTPS id 704576F8DD; Fri, 11 Nov 2022 17:23:52 +0000 (UTC) Received: from localhost (mailpool-mx-01.fibernetics.ca [208.85.217.140]) by mailpool-fe-02.fibernetics.ca (Postfix) with ESMTP id 5789B604F8; Fri, 11 Nov 2022 17:23:52 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at X-Spam-Score: -0.199 X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,NICE_REPLY_A, SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 Received: from mailpool-fe-02.fibernetics.ca ([208.85.217.145]) by localhost (mail-mx-01.fibernetics.ca [208.85.217.140]) (amavisd-new, port 10024) with ESMTP id gs7efaBP5g_h; Fri, 11 Nov 2022 17:23:52 +0000 (UTC) Received: from [192.168.48.17] (host-45-78-203-98.dyn.295.ca [45.78.203.98]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: dgilbert@interlog.com) by mail.ca.inter.net (Postfix) with ESMTPSA id A788D601E4; Fri, 11 Nov 2022 17:23:51 +0000 (UTC) Message-ID: Date: Fri, 11 Nov 2022 12:23:51 -0500 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.4.2 Reply-To: dgilbert@interlog.com Subject: Re: [PATCH] scsi: scsi_debug: Fix a warning in resp_write_scat() To: Harshit Mogalapalli Cc: error27@gmail.com, harshit.m.mogalapalli@gmail.com, "James E.J. Bottomley" , "Martin K. Petersen" , linux-scsi@vger.kernel.org, linux-kernel@vger.kernel.org References: <20221111100526.1790533-1-harshit.m.mogalapalli@oracle.com> Content-Language: en-CA From: Douglas Gilbert In-Reply-To: <20221111100526.1790533-1-harshit.m.mogalapalli@oracle.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 2022-11-11 05:05, Harshit Mogalapalli wrote: > As 'lbdof_blen' is coming from user, if the size in kzalloc() > is >= MAX_ORDER then we hit a warning. > > Call trace: > > sg_ioctl > sg_ioctl_common > scsi_ioctl > sg_scsi_ioctl > blk_execute_rq > blk_mq_sched_insert_request > blk_mq_run_hw_queue > __blk_mq_delay_run_hw_queue > __blk_mq_run_hw_queue > blk_mq_sched_dispatch_requests > __blk_mq_sched_dispatch_requests > blk_mq_dispatch_rq_list > scsi_queue_rq > scsi_dispatch_cmd > scsi_debug_queuecommand > schedule_resp > resp_write_scat > > If you try to allocate a memory larger than(>=) MAX_ORDER, then kmalloc() > will definitely fail. It creates a stack trace and messes up dmesg. > The user controls the size here so if they specify a too large size it > will fail. > > Add __GFP_NOWARN in order to avoid too large allocation warning. > This is detected by static analysis using smatch. > > Fixes: 481b5e5c7949 ("scsi: scsi_debug: add resp_write_scat function") > Signed-off-by: Harshit Mogalapalli Acked-by: Douglas Gilbert Thanks. > --- > drivers/scsi/scsi_debug.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/scsi/scsi_debug.c b/drivers/scsi/scsi_debug.c > index 697fc57bc711..273224d29ce9 100644 > --- a/drivers/scsi/scsi_debug.c > +++ b/drivers/scsi/scsi_debug.c > @@ -3778,7 +3778,7 @@ static int resp_write_scat(struct scsi_cmnd *scp, > mk_sense_buffer(scp, ILLEGAL_REQUEST, INVALID_FIELD_IN_CDB, 0); > return illegal_condition_result; > } > - lrdp = kzalloc(lbdof_blen, GFP_ATOMIC); > + lrdp = kzalloc(lbdof_blen, GFP_ATOMIC | __GFP_NOWARN); > if (lrdp == NULL) > return SCSI_MLQUEUE_HOST_BUSY; > if (sdebug_verbose)