From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-oo1-xc2d.google.com (mail-oo1-xc2d.google.com [IPv6:2607:f8b0:4864:20::c2d]) by sourceware.org (Postfix) with ESMTPS id 178AE3858D28 for ; Fri, 19 May 2023 11:48:35 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 178AE3858D28 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=linaro.org Received: by mail-oo1-xc2d.google.com with SMTP id 006d021491bc7-54f9729f469so858895eaf.1 for ; Fri, 19 May 2023 04:48:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1684496914; x=1687088914; h=content-transfer-encoding:in-reply-to:organization:from:references :cc:to:content-language:subject:user-agent:mime-version:date :message-id:from:to:cc:subject:date:message-id:reply-to; bh=RRsfMbvyK1I98yuVxaNpd3PkcjtYlAb/REVJWICslOk=; b=oscXxrEolDyQRNe9RZIqML89j15cWbmWges2VkApmZnEgwwUmHWWbXL1qzRNEMTXgW wZlfXcsuOXkG1b1uYyOmwR9ZFWIJaulJ/uSFikduONymSiUR/PxCL7rTKcktmWmVR1Ex enRm2xKh8wlI4Yl21QdT5IuaJX+/waBZ817FHbs9DhZRmyPHUS+SRwKIDs18hnGAjMh7 /bKFfHuTfeaxOE/hyNUebJhgg5JXTK76nSfvMKTqK3bQ/Aucs9kv6ydMsdYtANQsML5V gZQWGWXPVdTAdP/Kpr+r3vGTXSfQQbjRoeY3L8RZQUUZChPXG2czA8ZQAWnSFEzOkEDU jjYQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1684496914; x=1687088914; h=content-transfer-encoding:in-reply-to:organization:from:references :cc:to:content-language:subject:user-agent:mime-version:date :message-id:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=RRsfMbvyK1I98yuVxaNpd3PkcjtYlAb/REVJWICslOk=; b=M41aLZIj9S046jtVicfeMtS6kSBq6ydLZZ+I/NTXKXLl9CBXmUtlF6R/jcyhewueBZ FTa4ZJuLfGGsCbZOCvgWb8QJ5hHl+iwF8+ZniNb38Gxlawav0ZXCGQJOdAOonqcJHpKe aMblsPkPP9d8JYy9pzd2MyyUcPCFFahD3mM/0VRPUH74LXgOG7rYbMW2Q1oDIDkfmgSE PvjVPxK0DM2lecpCLha5zy5Xq3aDen6yDRvIxvNjiCV4K7iXobtiqogHZXdrtpqoPT3F q6uSGwx3vHX/lGh3KC7vJnch7I1Lvhct6Gu2UuQcSg6Prme5E6UdZavkaJ9nFzEnNXHb RILA== X-Gm-Message-State: AC+VfDwBFCLVnWy5DyFLrpFlNyjtMOpcYzPCjhRuv+t1A4ZKHacdjL5e SdpgP4+yKdFZPKj0u5/QQ2EWXRPeUNdVuwUz7pFmzg== X-Google-Smtp-Source: ACHHUZ5r/CWKBYLR0xPvsuAsH5rNTvSlWjZz6TYf5KCN+X6cQ5gGmtnl9KcEABSfPQbZFX4a2eMdYQ== X-Received: by 2002:a05:6808:aa6:b0:396:40e8:689 with SMTP id r6-20020a0568080aa600b0039640e80689mr862413oij.53.1684496914335; Fri, 19 May 2023 04:48:34 -0700 (PDT) Received: from ?IPV6:2804:1b3:a7c0:c914:8492:9e02:3fc8:883f? ([2804:1b3:a7c0:c914:8492:9e02:3fc8:883f]) by smtp.gmail.com with ESMTPSA id i17-20020a544091000000b003941c3b9f0dsm1505027oii.41.2023.05.19.04.48.32 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 19 May 2023 04:48:33 -0700 (PDT) Message-ID: <374d9752-5a9b-15b2-058f-62943e6c7a33@linaro.org> Date: Fri, 19 May 2023 08:48:31 -0300 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH] Increase judgment on buf. Content-Language: en-US To: Peng Fan , libc-alpha@sourceware.org Cc: Xi Ruoyao References: <20230519035713.3453563-1-fanpeng@loongson.cn> From: Adhemerval Zanella Netto Organization: Linaro In-Reply-To: <20230519035713.3453563-1-fanpeng@loongson.cn> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-13.8 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,NICE_REPLY_A,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,TXREP,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 server2.sourceware.org List-Id: On 19/05/23 00:57, Peng Fan wrote: > When buf is empty, if it is not checked, the subsequent assignment > operation will trigger a page fault. This is unnecessary. > > Signed-off-by: lixing > Signed-off-by: Peng Fan The stat family is explicitly marked with nonnull for the input struct stat buffer, and calling with a NULL argument is an UB. > --- > sysdeps/unix/sysv/linux/fstatat64.c | 8 ++++++-- > 1 file changed, 6 insertions(+), 2 deletions(-) > > diff --git a/sysdeps/unix/sysv/linux/fstatat64.c b/sysdeps/unix/sysv/linux/fstatat64.c > index 3509d3ca6d..b635a8299a 100644 > --- a/sysdeps/unix/sysv/linux/fstatat64.c > +++ b/sysdeps/unix/sysv/linux/fstatat64.c > @@ -52,9 +52,13 @@ fstatat64_time64_statx (int fd, const char *file, struct __stat64_t64 *buf, > { > /* 32-bit kABI with default 64-bit time_t, e.g. arc, riscv32. Also > 64-bit time_t support is done through statx syscall. */ > - struct statx tmp; > + struct statx tmp, *ptr; > + if (buf) > + ptr = &tmp; > + else > + ptr = NULL; > int r = INTERNAL_SYSCALL_CALL (statx, fd, file, AT_NO_AUTOMOUNT | flag, > - STATX_BASIC_STATS, &tmp); > + STATX_BASIC_STATS, ptr); > if (r != 0) > return r; >