Received: by 2002:a05:6a10:1a4d:0:0:0:0 with SMTP id nk13csp1058234pxb; Tue, 8 Feb 2022 08:21:28 -0800 (PST) X-Google-Smtp-Source: ABdhPJxX1MPINEs6j4CWj209U/Tcoo4uMQGBniJaIDPsDRfgtzJE8sjPzIpDAYhoUC7wuGj22udx X-Received: by 2002:a63:8bc4:: with SMTP id j187mr4137329pge.384.1644337288691; Tue, 08 Feb 2022 08:21:28 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1644337288; cv=none; d=google.com; s=arc-20160816; b=bccMIlMJJXM6+iEOd40Mv+yVTLrCCHXkz00p9uO5n9IPAshjt81+lgL9VWQv1iKCfH L1z1oclbAWzx9zBC60y38ASCHIZhrVLcYJ7/1SUvReEYHJENNL5f/z6AUW5JKe31Y9FS C1Ev7ZIIEEolXJZTnOFmVovMCa1EnIWcJZ+reLG6y+D7sSaLma09bDpvo79ito5GQNDc YO9zszn0WXXih4PeQy/7Y/K0zSOcgnM6B3bL0WvGu/9x7+LkIEZaJpdgYcegRv11tc0v s7fl8jE8FPw2R0DXjC8akR1BOWZ/RSDwsxispF7AAKzCUB0jgouv1XSRfIOIjMpKQgz8 ydlQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:content-language :in-reply-to:mime-version:user-agent:date:message-id:from:references :cc:to:subject:dkim-signature; bh=+fYYVy93BDFqw0cCdynsbSRegfY0xYWHIfwAqDxymeY=; b=E6KcQFseJq5olBCJrbkd6nkvH42EO7FzxErOXdZKNc4NaVVXq5zs7epCMvCKn4IIgH njdhTmRhwxgUgUrtOyRWf/COed4GRjJbi2X17ek36QcM7ady3Nw5dEmdpRhgT1CLWiib sUFCUOXg44FEVdtgQBYlccW8MD+7Qtzh7W5FTpFUvevZSUkcABFwRg85UaOCrzPnwYvp Q5BPEyJ6ZPfpCF3zSkEHIHRFsf9vrvgiR4H8fQwVKiz+QR+BmBEGIWGk6cugQX24ril3 3mxv3D4m6GDvXClC0d4uEfpJpmwkFw4s3sFpfjJHY8LS4bZIt3ojToWIkZUfbQKX7gTm k4/g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel-dk.20210112.gappssmtp.com header.s=20210112 header.b=hp3MMQ8Z; 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 lb12si798733pjb.189.2022.02.08.08.21.14; Tue, 08 Feb 2022 08:21:28 -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; dkim=pass header.i=@kernel-dk.20210112.gappssmtp.com header.s=20210112 header.b=hp3MMQ8Z; 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 S1389226AbiBGNvY (ORCPT + 99 others); Mon, 7 Feb 2022 08:51:24 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41088 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1355445AbiBGNqG (ORCPT ); Mon, 7 Feb 2022 08:46:06 -0500 Received: from mail-pf1-x434.google.com (mail-pf1-x434.google.com [IPv6:2607:f8b0:4864:20::434]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 00C9FC043188 for ; Mon, 7 Feb 2022 05:46:00 -0800 (PST) Received: by mail-pf1-x434.google.com with SMTP id g8so3172654pfq.9 for ; Mon, 07 Feb 2022 05:46:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kernel-dk.20210112.gappssmtp.com; s=20210112; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=+fYYVy93BDFqw0cCdynsbSRegfY0xYWHIfwAqDxymeY=; b=hp3MMQ8ZMedpHg9Nevp1XeEuuEA7IKnvKqo3RmIMgSgkNZVcw4jBrSu78B7Dx97yzi ChG12kiPN5PHLwvGlce9A0y5Co7qoc5PD33ihFDc/g1bGg4tbNHvi4ffk8p1O6Ksm5My 8BtSs5gvT2LhokIb2C3tAO+hrK5GTuyzQrRXirbOgMOoWQh3fse1cb5JMHqHIXxI8Fre uYUXkpw437r8QzNVs6c23wTMj6+Kfq6yj2oLsk7GzdQPcsInWy68JVklCfUL8CbW6oGC 7JMcutC1k+rlN6rp3tNzXDqgVacnpF5Doatrua7fNfYRD/YTFpNYv00gpZYUSBG4Ylf1 eI3w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=+fYYVy93BDFqw0cCdynsbSRegfY0xYWHIfwAqDxymeY=; b=j//HtBR/J+Y/m7B79eg2sFYgrvfod3ANXXN3vym3GaQEaI7otjrOK9SvLTQHroDxnp t84Ne4apCHkS9WkhRsHokCG31gVjLFN0CHZteEP/cTfceNFlgU4nNPsJz+jH65jcUHfr zPEFEVgF+yfxzTpQGHxDosaHdHzyN29omD+mDQ0RrwDcBVLFPII3zyON7YKGjyRQQi/I 8ZXRd0Kqya6aV0hCG8ePDa+bMWZnv47t6pAL39QVKfg/7mBd5H5/fa4zZS1X4GsRyba9 +xvheg6zFd7Bdyn1joVb9c53urFx6ifUfXw6lSO71qhBIti4BZnlZBaxQPnWpSlqfTkV Prkg== X-Gm-Message-State: AOAM530Kr5UEqWAk2V2zFdwOKVf+tTZnE8OqzfIc1UFojkWfFjL3mU0e so+Q3JP2EDMUrktSRewfGGMAPQ== X-Received: by 2002:a63:e647:: with SMTP id p7mr9358380pgj.23.1644241560350; Mon, 07 Feb 2022 05:46:00 -0800 (PST) Received: from [192.168.1.116] ([66.219.217.159]) by smtp.gmail.com with ESMTPSA id c11sm12279229pfv.76.2022.02.07.05.45.59 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 07 Feb 2022 05:45:59 -0800 (PST) Subject: Re: [PATCH io_uring-5.17] io_uring: Fix build error potential reading uninitialized value To: Ammar Faizi Cc: GNU/Weeb Mailing List , io-uring Mailing list , Tea Inside Mailing List , Linux Kernel Mailing List , Alviro Iskandar Setiawan , kernel test robot , Dan Carpenter , "Chen, Rong A" , Pavel Begunkov References: <20220207114315.555413-1-ammarfaizi2@gnuweeb.org> From: Jens Axboe Message-ID: <91e8ca64-0670-d998-73d8-f75ec5264cb0@kernel.dk> Date: Mon, 7 Feb 2022 06:45:57 -0700 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 In-Reply-To: <20220207114315.555413-1-ammarfaizi2@gnuweeb.org> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,NICE_REPLY_A,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 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 2/7/22 4:43 AM, Ammar Faizi wrote: > From: Alviro Iskandar Setiawan > > In io_recv() if import_single_range() fails, the @flags variable is > uninitialized, then it will goto out_free. > > After the goto, the compiler doesn't know that (ret < min_ret) is > always true, so it thinks the "if ((flags & MSG_WAITALL) ..." path > could be taken. > > The complaint comes from gcc-9 (Debian 9.3.0-22) 9.3.0: > ``` > fs/io_uring.c:5238 io_recvfrom() error: uninitialized symbol 'flags' > ``` > Fix this by bypassing the @ret and @flags check when > import_single_range() fails. The compiler should be able to deduce this, and I guess newer compilers do which is why we haven't seen this warning before. I'm fine with doing this as a cleanup, but I think the commit title should be modified a bit. It sounds like there might be an issue reading uninitialized data, which isn't actually true. -- Jens Axboe