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 CC12CC77B7C for ; Wed, 25 Jun 2025 07:49:26 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 72B636B00B8; Wed, 25 Jun 2025 03:49:26 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 6DC6D6B00BA; Wed, 25 Jun 2025 03:49:26 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 5F2FC6B00BB; Wed, 25 Jun 2025 03:49:26 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id 4F2EA6B00B8 for ; Wed, 25 Jun 2025 03:49:26 -0400 (EDT) Received: from smtpin01.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 20F791064DA for ; Wed, 25 Jun 2025 07:49:26 +0000 (UTC) X-FDA: 83593147932.01.84F311B Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.223.131]) by imf30.hostedemail.com (Postfix) with ESMTP id DB35380003 for ; Wed, 25 Jun 2025 07:49:23 +0000 (UTC) Authentication-Results: imf30.hostedemail.com; dkim=pass header.d=suse.de header.s=susede2_rsa header.b=ky+FwROw; dkim=pass header.d=suse.de header.s=susede2_ed25519 header.b=ddo9K6Xb; dkim=pass header.d=suse.de header.s=susede2_rsa header.b=ky+FwROw; dkim=pass header.d=suse.de header.s=susede2_ed25519 header.b=ddo9K6Xb; spf=pass (imf30.hostedemail.com: domain of osalvador@suse.de designates 195.135.223.131 as permitted sender) smtp.mailfrom=osalvador@suse.de; dmarc=pass (policy=none) header.from=suse.de ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1750837764; 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=xBi6Z7Br2c0Ky9I5Xc5h8XCGppMNPPySOqJFZ6G+/yM=; b=DjsepBTGAXYPUImnvPAzRclDRwZUmzQgXyGyHYbrExbGL+UcXsue2IBSuS6QnNp8falgRz 26akngXNNr3nkVnC9KBtoSta2uBJUPpmjwNMKKNbZ6l6xGmNgLRpQDGLbZfdWGJz5QRZIm sYdrf5MYK1jl+2JbUMtBZlYP07SX7VI= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1750837764; a=rsa-sha256; cv=none; b=hj8ZD06T1mxhUZncPiJs53Li9JN3Nbl8CXl3MtzWcOLGA6FXrNwLqFCWHGfMrMyjE3wV1t W8FHLDPYWieAxyHLvdrRaEpR0P/xMBoGePlgGbg0xN+HpvCUkff8kSDl2+dT4/LsMp+85Z i/HBoM2sWeFlnXSOB8o/lk+ceL9EIDc= ARC-Authentication-Results: i=1; imf30.hostedemail.com; dkim=pass header.d=suse.de header.s=susede2_rsa header.b=ky+FwROw; dkim=pass header.d=suse.de header.s=susede2_ed25519 header.b=ddo9K6Xb; dkim=pass header.d=suse.de header.s=susede2_rsa header.b=ky+FwROw; dkim=pass header.d=suse.de header.s=susede2_ed25519 header.b=ddo9K6Xb; spf=pass (imf30.hostedemail.com: domain of osalvador@suse.de designates 195.135.223.131 as permitted sender) smtp.mailfrom=osalvador@suse.de; dmarc=pass (policy=none) header.from=suse.de Received: from imap1.dmz-prg2.suse.org (imap1.dmz-prg2.suse.org [IPv6:2a07:de40:b281:104:10:150:64:97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp-out2.suse.de (Postfix) with ESMTPS id 189201F457; Wed, 25 Jun 2025 07:49:22 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1750837762; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=xBi6Z7Br2c0Ky9I5Xc5h8XCGppMNPPySOqJFZ6G+/yM=; b=ky+FwROwA/HryequEQWELKvrAPkwcLMgifCo+pE8kwT5wY6bh07Du3hHENhvh3mWrBx83z /hAHCFN7f0LNT44WSVvI84up2xLATcEnnSo60K7zZEyjIdJwbSWgDu+7xzx6+NMcHhNGYM TPy3r+XrgpMrBFYCRWvO1kXk0ZcU2Qk= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1750837762; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=xBi6Z7Br2c0Ky9I5Xc5h8XCGppMNPPySOqJFZ6G+/yM=; b=ddo9K6XbN25y0Gyu8a4lfZ3xhytzMt0D6rnvFqivCeTC9uXDxJILafG4YkdM/inyDz+QAC fjL+nEp79QDIH2Dg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1750837762; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=xBi6Z7Br2c0Ky9I5Xc5h8XCGppMNPPySOqJFZ6G+/yM=; b=ky+FwROwA/HryequEQWELKvrAPkwcLMgifCo+pE8kwT5wY6bh07Du3hHENhvh3mWrBx83z /hAHCFN7f0LNT44WSVvI84up2xLATcEnnSo60K7zZEyjIdJwbSWgDu+7xzx6+NMcHhNGYM TPy3r+XrgpMrBFYCRWvO1kXk0ZcU2Qk= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1750837762; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=xBi6Z7Br2c0Ky9I5Xc5h8XCGppMNPPySOqJFZ6G+/yM=; b=ddo9K6XbN25y0Gyu8a4lfZ3xhytzMt0D6rnvFqivCeTC9uXDxJILafG4YkdM/inyDz+QAC fjL+nEp79QDIH2Dg== Received: from imap1.dmz-prg2.suse.org (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by imap1.dmz-prg2.suse.org (Postfix) with ESMTPS id A271213301; Wed, 25 Jun 2025 07:49:21 +0000 (UTC) Received: from dovecot-director2.suse.de ([2a07:de40:b281:106:10:150:64:167]) by imap1.dmz-prg2.suse.org with ESMTPSA id ja7oJAGqW2hkEQAAD6G6ig (envelope-from ); Wed, 25 Jun 2025 07:49:21 +0000 Date: Wed, 25 Jun 2025 09:49:20 +0200 From: Oscar Salvador To: David Hildenbrand Cc: Andrew Morton , Muchun Song , Peter Xu , Gavin Guo , linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v2 1/5] mm,hugetlb: Change mechanism to detect a COW on private mapping Message-ID: References: <20250620123014.29748-1-osalvador@suse.de> <20250620123014.29748-2-osalvador@suse.de> <45d66a0c-a5ed-4894-999c-0ed5b732ebb0@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <45d66a0c-a5ed-4894-999c-0ed5b732ebb0@redhat.com> X-Rspamd-Action: no action X-Rspamd-Server: rspam07 X-Rspamd-Queue-Id: DB35380003 X-Stat-Signature: m8ud76r5qdfcf8bpjuszbcdqupqtjk9w X-Rspam-User: X-HE-Tag: 1750837763-143305 X-HE-Meta: U2FsdGVkX1+eo1khlQqMKMU8d6TLbgseB0DpsGzaThHRTpDQeiiHqEnJrXUwHDdg78h+w0TJ8XCKQB5V09OPlYslyp4bBheElqzhCKvgYCLoNF426Y2h2aozKHzd9AFF4AFpx6fl2uDqK4uF3VfSiPSEInT733jYezQNlAOSyr6qEmgiNOMZmMmxHQeZtfIu/BoWJKPKgQ0A2RIqdm4O+dtuD+AMa4G9OEiLMfwzPEsRJGc/hTEcuBB771pTPp1gnbx+zLr9d+9/WKK5ovkLleZm/mRiyaMzcqDsJ5YgRyT/72aDj9haIJXJaB+i1BP5xH3nL4BEmn4FgMqe4zx1koq798x1F6hUEcVbkpU9rhIRLozQa5REi5WnjT9Gi5sIYU1kn4vbSW0FeJtdZPzqDqR/z1n6FN1OoKc6nz34vHavVUfS5ClFbGYMWI3QW5KvbHt87S+1Vrtibixd+zGfv7pTT9n1w2F3Ca/rFHUsOTKGxZuLWDE7uOnBrDL0s4KwQZLn1Xq1g4dshb4O98wCoxsSlE+6qZ6U0m6Qm/PTh1+j1V1rWPL5tsh4UbabASKD6BzKoFZ0Bbsz8XemxsVtORs104IQOkq4BfsRgafNPWnk21HoRZQnikbWDGRrsI0DCbgzhe2Gw88P2hcJzk3oXKQaLQ/NhxWCZb5wIxb43W3Hu/67nF2uHH8rIoBjij+IU9s/UsdXcT4DOUKOXdDrtswcgwm5U1A14q23AXLoSWbjlZdcxJwSYWcg1qgShMNrEgcf9CvL0UFxj5pfWnViHSOcxjA3r/uxV7QuZS7cHuihBA9dsxsJpApYLyAd3pVNb6v42TDUfyPWBJeRI1cY/ULmctNEJHjgUjfValNJ4WQkvoShsskirTOngWhinBIX816Iorl0sAXV+M9eeWbqxuu+R1d3gyeOdsZPrWQWmSByisgmZVt5jnRG+bbzxqXfzghlnkDONa9A9l9chVe AQYHvzqs GKHz24BKENDfK/6iUykdtrgHK0E6x5kCm9gAP7eyLRolng6BPdiESD/+Jf7+t0ARmjtMrfGL9YvBvK7upVl5Jmz0HPKvJ5biD8ZdaikHtbu3aFcd7+Kc009/YnyFQl8f3nKawmQ/bBEspF4LYGRPzeaf8WOXPq5OqEiL7kxZD1URMIK5lXvboSLIHPDSfx+APJJqla0iY76FCdI9VYA5OftC2YjPXySOxhUi8K/lrspsia35SAaaN/tiwZnz6GgfsgAvUXo/mRcxtwCY= 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 Mon, Jun 23, 2025 at 04:09:51PM +0200, David Hildenbrand wrote: > > > - /* > > - * hugetlb_wp() requires page locks of pte_page(vmf.orig_pte) and > > - * pagecache_folio, so here we need take the former one > > - * when folio != pagecache_folio or !pagecache_folio. > > - */ > > + /* hugetlb_wp() requires page locks of pte_page(vmf.orig_pte) */ > > folio = page_folio(pte_page(vmf.orig_pte)); > > - if (folio != pagecache_folio) > > - if (!folio_trylock(folio)) { > > - need_wait_lock = 1; > > - goto out_ptl; > > - } > > - > > + folio_lock(folio); > > folio_get(folio); > > Just realized that this won't work for this patch here, as we are holding > the PTL. > > In patch #2 you do the right thing. Yap, missed that. I might have to do the lock-unlock-dance here, and then in patch#2 move it to hugetlb_wp. Sounds reasonable? -- Oscar Salvador SUSE Labs