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 78A39C36002 for ; Sun, 6 Apr 2025 17:17:44 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 616696B0005; Sun, 6 Apr 2025 13:17:42 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 5C5256B0006; Sun, 6 Apr 2025 13:17:42 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 48CA26B0008; Sun, 6 Apr 2025 13:17:42 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id 2C0B96B0005 for ; Sun, 6 Apr 2025 13:17:42 -0400 (EDT) Received: from smtpin28.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 607DD1C9060 for ; Sun, 6 Apr 2025 17:17:42 +0000 (UTC) X-FDA: 83304275964.28.6C0E97E Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by imf29.hostedemail.com (Postfix) with ESMTP id BBBFD12000A for ; Sun, 6 Apr 2025 17:17:40 +0000 (UTC) Authentication-Results: imf29.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=fWb04Fxa; dmarc=pass (policy=quarantine) header.from=kernel.org; spf=pass (imf29.hostedemail.com: domain of mingo@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=mingo@kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1743959860; 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: in-reply-to:in-reply-to:references:references:dkim-signature; bh=/6TkX8mBz8w0Pmu6hW2tM0PMcakwmtE/cgsb+sPE6B4=; b=mUypw/FTaxkCN7oX/YDz2slDIO78Zg3ymNwpH6LhjPr7pyMFTumuNCaQa3T4OgYolf3gLd EqQjtwLDz38dQrHfHT/1uSSbzAk0Ye3I+T605kX56fyZDh2nFcLDXcqhSoEg9z3l/0J6P7 aAIuR0gUUIVXCxNi7T62Or1EXChf2Uw= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1743959860; a=rsa-sha256; cv=none; b=b6k/MpWqvBq9SlS8HlZzOEk7rXBREVpUjxeXEriWV12QhocUSjR2Tl4l6qPpC+NreeJBrw rrhVoB0sCx4hghDgUCBugrpKtt6mvawYsGigvTqt8G4HRyQNNy30M6Br++JQHvAv8L0ufI YRr7PTNbJcBgQZp0kJLzJorIkhcg0Go= ARC-Authentication-Results: i=1; imf29.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=fWb04Fxa; dmarc=pass (policy=quarantine) header.from=kernel.org; spf=pass (imf29.hostedemail.com: domain of mingo@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=mingo@kernel.org Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by dfw.source.kernel.org (Postfix) with ESMTP id 671565C58D1; Sun, 6 Apr 2025 17:15:22 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 7EBBFC4CEE3; Sun, 6 Apr 2025 17:17:36 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1743959858; bh=yK1e0myiFTb+uJXfZR0VyuGCt6MMn7FjTJOXv1FdeHI=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=fWb04FxaJge/33W4VTTInpdz5RXtuzLHMzvAVv4MVe+Gaq5xgogS9FCn2NzUNngxS M5XFyAsWetmOhaY4IIFHAIwsVl1CYWY96aDoxdK0pPo1f6PUQpPxLtYvfBZIJ2XrWV 9bwXeFz6pdOo6LGkhrlXyulJq+MhtTTBNHGTq3YHQzIjcYPNCPXutGd3nXqhZZb5V0 wUIvc9KFoxQr6NoPNpXFHSshskeby54iO0LvLr8lwGWTktZPtus/lhs7sPyDQ2C3jF 0j8WfTMJBePIRSMdsdORzW7KkGbyE5rneLARcYqJXAzmw2a+C5sX6glQNJIbvJM7cj KQefFb4MD1/vg== Date: Sun, 6 Apr 2025 19:17:34 +0200 From: Ingo Molnar To: David Hildenbrand Cc: Lorenzo Stoakes , Dan Carpenter , kernel test robot , oe-kbuild@lists.linux.dev, Dan Carpenter , linux-mm@kvack.org, linux-kernel@vger.kernel.org, "Liam R. Howlett" , x86@kernel.org Subject: Re: [PATCH v3] x86/mm/pat: Fix VM_PAT handling when fork() fails in copy_page_range() Message-ID: References: <94c35e89-f915-4122-b1a0-436893201373@stanley.mountain> <92c40df4-2e93-40ca-929e-a0b50ab2b631@redhat.com> <18abdf06-9d45-42bf-b666-af1a416bf2a6@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <18abdf06-9d45-42bf-b666-af1a416bf2a6@redhat.com> X-Rspamd-Server: rspam07 X-Rspamd-Queue-Id: BBBFD12000A X-Stat-Signature: z4ibnjaixiq1popmei91wxn8d4iu93gz X-Rspam-User: X-HE-Tag: 1743959860-656062 X-HE-Meta: U2FsdGVkX19q/ZClUP0vVO/iofHN3BGIgEeb9ory9Wlz4Xo3WKhbr7nxBBKmaX5CoQ4Kxixh6KRvhrs3EZMO4eF8lZRE+zO0dJE6Lg/2PGp1OJd+LYiMChen0EanIY/jqsPTDnDltsHpErq2kOTY451iNjsVROzKgSpuFzyzo6/iSgpxUUnMgiifJMP7tvjivroPDsTcpWE0vyQj3wdTNJ02aAyUvimpT9WOvTTZua2O4rMIe0f+Lu0p14AdDQarTNMahSLT9auYfQdadRdYNImJXKG+aJAdT7v9PAG49aYbo6GJ1NPiiPnDEo/16WN6Xc+dfYZPnssqBKoo8oTGRiycsh6diFHoZ4WSNFAPagsrM9Yij3KRIt34ZUBbK9w8m0copyzY+4wOH7q37SnpBXRqRcd9O7cDAs/PVb3TMriunnVGN6kqcEgmNW4fYxA64OBg8qidzSxwQG9T55eFjw42cTmTT6eZcfctGjwe+fv78e3YtZaF9UyhLKM25ahhurXKf2zS7GKVQFZK9jYQKBaEc5GSarBKFzASfxTm633VMZT8utSpJT8OJQXdAgUmFDlMQRqZndcJZ26/0CUl4AoodAQUa5K2WnMpDI7D9nPCb9K5KqmdwMgvii9p9/C812OX4Ejn+Ej/fkeffmPFVMl/SyquZMx2uRCUlbTQ1kfzRskudRwDDVeD2LptBg1gfU4BuQ8WXfIYEFqmnSVW3F3Zqj/5490akkJcJT+qRiLO+nkcxuC3jKZv632xCwfg+CUii6/C3ccFHhnYbEchkr19zLS99ZzUD4ZPSq/9cHDHtceHdL2ikZ4PEaWFL0EDCU0IL8HKu8jO/zADNG+Ktn9d5m9WfmPcF2Bkjdig2PnINRz1O9vTMVjqVDc0f2GzQ1slDfAGha2T+71Zqtj0YrvOf5wrN8Zy7m+Ni0NFm8UkQ6VBNu4H0C/3LbGFtG5dIPzNXRDa9BfCtTxPEdp 5B8/KADR mtbpi0zdL0vIkE/EEgG7GfijqfqxLeQZg4Umd8XATVtJcCMbaROhoTlZNMrFGuk2edehXwGlCQp0AcsBMtHmPa49tPP5aBw6nHjbQUNKbH/XKT5++dovGR9hme8E730bF/VSxGgsboSV/H3gyBB6mXOt0pv1OwclVmQJl3NiDv3TPABPZSm6YFDstZJsyNclAVxoQx6I8+PtAlep9NfZMhs+g3mxxI8VdLJY0OG4V6TxQHkpJyrN5gmVSXY+d/K2DeSQdVUBM9kQNyddhJodvhrqGySd0si6ZczZu 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: * David Hildenbrand wrote: > On 04.04.25 14:20, David Hildenbrand wrote: > > On 04.04.25 13:52, Lorenzo Stoakes wrote: > > > On Thu, Apr 03, 2025 at 10:59:12PM +0200, David Hildenbrand wrote: > > > > On 03.04.25 17:14, Dan Carpenter wrote: > > > > > Sorry, I've been having trouble with my email recently... I replied > > > > > earlier but my email got eaten on the way out. > > > > > > > > > > What happened here is that the zero day bot emails go to me first and > > > > > then I review them or forward them depending on if they're a real > > > > > issue or not. > > > > > > > > > > Here it's a false postive because it's set and used if the > > > > > (src_vma->vm_flags & VM_PFNMAP) flag is set. Smatch doesn't parse > > > > > this correctly. I've been meaning to fix this in Smatch for a > > > > > while. > > > > > > > > There is a slight complication (on top of the VM_PFNMAP checks): > > > > > > > > If "src_vma->vm_flags & VM_PAT" we > > > > * set pfn > > > > * set dst_vma->vm_flags |= VM_PFNMAP > > > > > > > > Then, we only consume the pfn if "dst_vma->vm_flags & VM_PFNMAP" > > > > > > > > While we won't be using the uninitialized pfn (good), we'd still pass an > > > > uninitialized pfn, which IIRC is UB; likely nothing happens on GCC clang, > > > > but we better handle it. > > > > > > > > So that should better be changed; I'll send a fix. > > > > > > Maybe just worth setting pfn = 0 _as well_ in the caller, belts + braces maybe? > > > > I'm planning on doing the following, just didn't get to testing it: > > > > Ah, now I get your comment. Yeah, we could just set pfn=0 in the caller as > well to make smatch completely happy I guess. Yeah, that's far cleaner than these rather ugly code constructs in the error paths. It's a pretty standard API where output pointers may not get touched on errors - if Smatch has a problem with it, fix Smatch or the callers. Thanks, Ingo