From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 218BDC54E65 for ; Thu, 22 May 2025 06:59:09 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 6EC5B6B008C; Thu, 22 May 2025 02:59:09 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 6C4236B0092; Thu, 22 May 2025 02:59:09 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 5D9466B0093; Thu, 22 May 2025 02:59:09 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id 3D89E6B008C for ; Thu, 22 May 2025 02:59:09 -0400 (EDT) Received: from smtpin03.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id A63155B639 for ; Thu, 22 May 2025 06:59:08 +0000 (UTC) X-FDA: 83469641976.03.643EEC4 Received: from mail-pl1-f182.google.com (mail-pl1-f182.google.com [209.85.214.182]) by imf22.hostedemail.com (Postfix) with ESMTP id E908EC0002 for ; Thu, 22 May 2025 06:59:05 +0000 (UTC) Authentication-Results: imf22.hostedemail.com; dkim=pass header.d=bytedance.com header.s=google header.b=Cekp1rV3; spf=pass (imf22.hostedemail.com: domain of zhengqi.arch@bytedance.com designates 209.85.214.182 as permitted sender) smtp.mailfrom=zhengqi.arch@bytedance.com; dmarc=pass (policy=quarantine) header.from=bytedance.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1747897146; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=S4LjFz6mOQNEL7zonDklRPi1DtpqOZPfCamZxqL1Q0c=; b=1lpi9BIpIwLzrflMQD8CKg1c/V+mTcyosIV5ogLPRdX7UHWnmUYifpqLwQOfMHSfzsqtQf okciLBO7mGvYv6hYNzCkJ43Ied+jFHNZwqy6teG5LtVy3sl7lzDYSTa2Zjn1+KRwupPoJt yU6rqYjNtpYjlIFWpioA3e/AuGvqwlk= ARC-Authentication-Results: i=1; imf22.hostedemail.com; dkim=pass header.d=bytedance.com header.s=google header.b=Cekp1rV3; spf=pass (imf22.hostedemail.com: domain of zhengqi.arch@bytedance.com designates 209.85.214.182 as permitted sender) smtp.mailfrom=zhengqi.arch@bytedance.com; dmarc=pass (policy=quarantine) header.from=bytedance.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1747897146; a=rsa-sha256; cv=none; b=MzHtpIFOY2sEFHrKK0fDB6SPRfDCOsOKOelFtp8mND/I4ES913ZHfb4uTWoAAaVtlH3dLv Zms0uE4I3vq8yd1Q4ru8TWhCBiO6vw/Iv8063DC0Gx9cITCaN4D78qgJI2wvMuwWFFcpvU 4XHTY9borfrp3DphAIgwAiZMk7L8ODo= Received: by mail-pl1-f182.google.com with SMTP id d9443c01a7336-2322bace4ceso41170305ad.2 for ; Wed, 21 May 2025 23:59:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bytedance.com; s=google; t=1747897144; x=1748501944; darn=kvack.org; h=content-transfer-encoding:in-reply-to:from:references:cc:to:subject :user-agent:mime-version:date:message-id:from:to:cc:subject:date :message-id:reply-to; bh=S4LjFz6mOQNEL7zonDklRPi1DtpqOZPfCamZxqL1Q0c=; b=Cekp1rV3Ua8xZdnfX5nF3IYwcO4r3pJhVepVdV+jKZreuCKDipOorsc3A2YbswxLJv 7mWyes+/WwGqmNpHhCSZjmAQvZVlWrYhSS7gMhQiOs1TaYtJR4cGB43QjWzkPmi+ERWu GG5BAFwm3k7DT5xg0yBcELXO9VudZDSB0cjRGj+NarvTqB2D5AajHIy+BB6uB5glENWl yzAOl6CO7mH0V7tPAaMV9SFrIDXkhA2wzV6rreak/sjTwUdbxTbjZoXWuqVgT3xbC05f 0c42p8shXpVdIsoZngT5X6g5aUi8djrGi8c+GhQL+WrYPeeqRoj68xMl22GQohxjA4Yg KwIg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1747897144; x=1748501944; h=content-transfer-encoding:in-reply-to:from:references:cc:to:subject :user-agent:mime-version:date:message-id:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=S4LjFz6mOQNEL7zonDklRPi1DtpqOZPfCamZxqL1Q0c=; b=CJRVLtA9QiuzPxBW/kIQEwE1fTZzKdSCRL1CFlCI9kJzAPVF9e/gxzQ3V+gL7FhL2L /3P5kW9PuocsUA9fW37hhiz7+t5LdatOfu+VxfwiWeA9mHtqDZsBn5JXlDSfcpz2Oht0 6i/aGSkFPj1M3/ewxBax4eW7KsYGoKPCF0DBFCECeRvEKbjV8k69YSmWyDlQOZT6eOwl KwYeTODwtefZE4dz2J95aFWeud/41G7IVxhcKrzt0n55egKEQoGlnDgkzIrv1s5VcoWe /DRqPMlzxa/G3N6jAIODiEYhZ3EDLZTNMwGUw2BJJTHS/7auiaXEMUQwZUUD2nE/RKTf bHeg== X-Forwarded-Encrypted: i=1; AJvYcCWhny5uZcy3oOzpUVL3OxJbQpfxv8hvxAJhm4GQWREh+eZ5WUk9dbbVuJ6OM7nNnYgQ067tfyDUSg==@kvack.org X-Gm-Message-State: AOJu0YzP2qR0sSsyUvBthEkcwxjAZJwjkKe4DIriSLH2ZJWzerNmX2d0 zxNLXxgScRdE+wlGQ0FOJOO9dkHO9PCBo94jI6kuj0XbqrW7nAsY+RjMwdDWp4KRFjk= X-Gm-Gg: ASbGncvna6ewYDhXNgi+sHu6VKFXBuUq8qmy1oLehWPNa6sJtVZfCL/HQvCbfTr77li iSElTbThtsQ7b668WQ6ojJMzLEJ8myo8kiYoSdWGmZuzM/t3rKTVk2k3AJQkGAHMMjqz1w8h4kc RAjFkq07V1xi641JyU4AhZklTsjo1gY/Xu4VQOEXukc0y9q0Ac8nwA+kiQ9uVi/qPUcBo3LfFjZ jmk61LtOnwUWlvD9mQztrazm/M7/6ww8FkmwcLbku56CO416a3OGcBXeajoqK/5GvvXonQeMPQM wt/rYmvWLe6ER055aNO0bzcQ4CETpkCaZTKIAbj6b57n4k6YxPaOoK9KZULZJTAYeBp3OeP/drM = X-Google-Smtp-Source: AGHT+IGp1JwsZ8Ui4zlhII3RRPZ52m9mG0aZy1A/wKlXOSBG5FU1K00VJkoLeuCiJsLgcvYVGZMmxw== X-Received: by 2002:a17:903:1ca:b0:223:2630:6b82 with SMTP id d9443c01a7336-231d43899c1mr346475295ad.10.1747897144452; Wed, 21 May 2025 23:59:04 -0700 (PDT) Received: from [10.68.122.90] ([63.216.146.178]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-231d4ebb0d4sm102734715ad.195.2025.05.21.23.59.00 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 21 May 2025 23:59:03 -0700 (PDT) Message-ID: <53518ee0-d5fc-472e-bd67-0be5208b5b77@bytedance.com> Date: Thu, 22 May 2025 14:58:57 +0800 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH] mm: fix potential NULL pointer dereference in pagetable_alloc_noprof To: Lorenzo Stoakes , Ye Chey Cc: akpm@linux-foundation.org, david@redhat.com, Liam.Howlett@oracle.com, vbabka@suse.cz, rppt@kernel.org, surenb@google.com, mhocko@suse.com, linux-mm@kvack.org, linux-kernel@vger.kernel.org References: <20250521124008.36139-1-yechey@ai-sast.com> <206c6dc2-792b-4c73-a922-eebd03864d2c@lucifer.local> <257c094c-522c-48c8-9bc2-70571dfb276f@lucifer.local> From: Qi Zheng In-Reply-To: <257c094c-522c-48c8-9bc2-70571dfb276f@lucifer.local> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Rspam-User: X-Stat-Signature: uncin6c44br6bzsqgpary8tbwfdr3jst X-Rspamd-Queue-Id: E908EC0002 X-Rspamd-Server: rspam11 X-HE-Tag: 1747897145-926511 X-HE-Meta: U2FsdGVkX1/J+VRkaPIjeWH/t1goFR1UaAc22D9gbu6YdeZ/QeNjAiR9ZvBiGwRkuTLmIPCA40IIfq8txWuJuvAQEeaGxZfoCc3rdTkR96yB731RvXGENS1CASiqMWDOWEpMF9D94linI0XWuz9LU1W/WIHOBMELvTKjnfZij68cIhAHtBg9qH4VoPQE932rrLrwT86FfXmOa6G5v9nspYki0m1hZMkBu2j4J4+JRYJFvY7CXEiLITZMg3Se7LCtOisbUvS1yjZXhbAEyti/q7Hj78CA6G4mFQ9Qw0/T3TpNl37Lek+QrL+oqA+33JQUCY9/vHFpWn7759BOvfu7h8Vv9NrLOCRJfL1zI/BEgOS7tPd76jkVEODF0gWX6gi+LR9z7OQcxIpbcLYv4rJYqQkpgtybyLAZvhNlexSXHxh2sf5KkZyBeh1F5yhsQ/6gwrAR1SgbL2Z0aKSoTldb6SMz41l8ELLTa7KNuNFFMQiZBxaJwuSYxemCzIgDzAB4M5oMnSGcMA/4cuW37X+c2kfYwxA6+bPTAEYZ+vg3oeLemwBevoQBpm2BBNW0Uc6qLT6elbL0As1vjRdY9VecviUR2Gc27IElOmBhoKfsuk+wgM5eE/uGeoapcjVfXzNeWGGrXWeOdvj8y+ryEww3ZFO9aXMAZrH2KFrAml/9qh6m7ZQjltPWupUAndf6kUnsHympBONq0ZoZACwQCRbbGQlN5bgKTZbt81KqYKJpB25hDLKHMxjKQeByuiaSX/BI50QTd8EArwE4nvN588yYOZOB17WeR+4uv/MHBbBBA28u7R5kOPq9oNTibiYoSPR6suT7gGC/Xdt7u/1ALqRG5wVWYL7WwGer8cXMTmRsDGAd0KJv2xcJT9b/47pnIjsV8m/hG6dM5DolomGGFgS26oBeby4Z3FfrrdBTqdkjSINR29OMXEJY9blYk57cDl3GCcQ+afV1X7XWRn3DClV /KniDU9Y 5psQOG34TagaGrufP55CcsButiIzpM4F7SEnvc/IARpXhHi7b22Nk5DtV+b73wCd4Wk5pjfWQ1CtvBzDg1KytEOMrlxevyq5VqejNpzz3ejWdmKXnn6Ggds3hycrcXvQurjY9TRoFUHjPJdD5umgerwA5wTuPx3vssahKAWVU9is2UDJfkjvbA5LDfkY0U2fi0AciR4ZEoZjACIUURoBY+SK1/+dmWXwOxvjghNPG09YzzxPxSvQZv5oJCxElJ2VLT7qW7JYeJ2zZir3dabrrI6AufwXD5Oo82jPL+Dwz3aTgmZrXVRjurVzAai/IWZOnmnWE4YGggukZoRT4L+FvZ9dZoWQHBXa+VR21yv0T5WHcaLPvr/SE6QQ7TLyZmp7M528aOBXBzftf0vKeUNoSaXJkB3G1GDqKYm2wap9JIZfXTJIJ1DLKquD6gw== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On 5/21/25 8:48 PM, Lorenzo Stoakes wrote: > +cc mailing lists > > Please ensure you always cc these when submitting patches by the way :) > > On Wed, May 21, 2025 at 01:46:48PM +0100, Lorenzo Stoakes wrote: >> On Wed, May 21, 2025 at 08:40:08PM +0800, Ye Chey wrote: >>> The pagetable_alloc_noprof function does not check the return value of >>> alloc_pages_noprof, which could lead to a NULL pointer dereference when >>> memory allocation fails. Add a NULL check to prevent this issue. >>> >>> Signed-off-by: Ye Chey >>> --- >>> include/linux/mm.h | 3 ++- >>> 1 file changed, 2 insertions(+), 1 deletion(-) >>> >>> diff --git a/include/linux/mm.h b/include/linux/mm.h >>> index bf5520693..9052bb531 100644 >>> --- a/include/linux/mm.h >>> +++ b/include/linux/mm.h >>> @@ -3000,7 +3000,8 @@ static inline bool pagetable_is_reserved(struct ptdesc *pt) >>> static inline struct ptdesc *pagetable_alloc_noprof(gfp_t gfp, unsigned int order) >>> { >>> struct page *page = alloc_pages_noprof(gfp | __GFP_COMP, order); >>> - >>> + if (!page) >>> + return NULL; >>> return page_ptdesc(page); >> >> Doesn't page_ptdesc() just cast the page to the appropriate type? And thus can >> handle it being NULL? Right, no NULL check is needed here. >> >>> } >>> #define pagetable_alloc(...) alloc_hooks(pagetable_alloc_noprof(__VA_ARGS__)) >>> -- >>> 2.44.0 >>>