From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from out-185.mta0.migadu.com (out-185.mta0.migadu.com [91.218.175.185]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C450C233926 for ; Tue, 4 Aug 2026 04:17:37 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=91.218.175.185 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785817059; cv=none; b=tX27nA8JnTd3cNwWlwPAjiYkPBh1NdrV9Aoz+P3KzEjfm0h9pbhKJTAfmrxlFvEfnnZ5moAteH1Ms2Hcxv790hNq8JcKm/n0Dt9TxzOXnj+kVRC8j+fPETLzsZj9L3VoZ6PCzAwrGxa3SNMENj8L1eV/sntrbnuWaEmp9nQrz6o= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785817059; c=relaxed/simple; bh=GSbJHfczPsdYrBasBzM5iZ/tWFla1W6TXnOUn0o9TXE=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=KKnetZAjr8ADudRLi9eoCzzs6o2y1sLJnaKHCLe/WQ1Avr7qFbQxRWqYvPigAhWS7AZaRIaDko0MsfYdfUQO7uxTs82Czpvu972DzQYK51lSTS2j1ieFlNCjtEzII1EQlN+oxswH8n3Z8ukCw8vvXM5q7oxxCrE+gHejGV3EHqw= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.dev; spf=pass smtp.mailfrom=linux.dev; dkim=pass (1024-bit key) header.d=linux.dev header.i=@linux.dev header.b=Hc/REYrJ; arc=none smtp.client-ip=91.218.175.185 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.dev Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linux.dev Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linux.dev header.i=@linux.dev header.b="Hc/REYrJ" X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.dev; s=key1; t=1785772104; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=64J9NQ8wINxMWeOp2Yatp476UcvWi6dCmOU/qEHakuw=; b=Hc/REYrJ28ABa30xrZ1S2G43zd3wYxS73exkn7ftrzeE6o48WnpuEbf10dM7FlgtRX0zIu WAbiZSO2Oti/9AmQcDnzXRIizlL4Q75woxE1p5gOjf8tcfILoGLFnqI6oK1iOwaONhC7UM olzNTFCByzZQd4kxyfr5PJN95Cd6BME= From: Usama Arif To: Zi Yan Cc: Usama Arif , David Hildenbrand , "Matthew Wilcox (Oracle)" , Andrew Morton , Muchun Song , Lorenzo Stoakes , "Liam R. Howlett" , Vlastimil Babka , Mike Rapoport , Suren Baghdasaryan , Michal Hocko , Baolin Wang , Nico Pache , Ryan Roberts , Dev Jain , Barry Song , Lance Yang , Gregory Price , Ying Huang , Alistair Popple , Johannes Weiner , Qi Zheng , Shakeel Butt , Kairui Song , linux-mm@kvack.org, linux-kernel@vger.kernel.org, Jaegeuk Kim , Chao Yu , linux-f2fs-devel@lists.sourceforge.net Subject: Re: [PATCH RFC 06/14] fs/f2fs: stop using PG_private Date: Mon, 3 Aug 2026 08:48:16 -0700 Message-ID: <20260803154817.3112697-1-usama.arif@linux.dev> In-Reply-To: <20260731-remove-pg_private-v1-6-142c97ba3562@nvidia.com> References: Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Migadu-Flow: FLOW_OUT On Fri, 31 Jul 2026 22:13:29 -0400 Zi Yan wrote: > f2fs sets its PAGE_PRIVATE_* flags in page->private and checking > page->private != NULL is equivalent to checking PG_private. Change > PagePrivate() to page_private(). Meanwhile, in set_page_private_##name(), > page->private is first set to 0/NULL before an PAGE_PRIVATE_* flag is set, > but it can cause confusion when PG_private is removed and > page->private != NULL is used instead. Change it to initialize > page->private to PAGE_PRIVATE_NOT_POINTER instead and retain the original > semantics. > > It prepares for a future commit that removes PG_private. > > No funtional change intended. > > Assisted-by: Claude:claude-opus-4-8 > Assisted-by: Codex:gpt-5 > Signed-off-by: Zi Yan > To: Jaegeuk Kim > To: Chao Yu > Cc: linux-f2fs-devel@lists.sourceforge.net > Cc: linux-kernel@vger.kernel.org > --- > fs/f2fs/f2fs.h | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) Acked-by: Usama Arif > > diff --git a/fs/f2fs/f2fs.h b/fs/f2fs/f2fs.h > index 8f3e632f315cc..edf01eb4b3b30 100644 > --- a/fs/f2fs/f2fs.h > +++ b/fs/f2fs/f2fs.h > @@ -2643,7 +2643,7 @@ static inline bool folio_test_f2fs_##name(const struct folio *folio) \ > } \ > static inline bool page_private_##name(struct page *page) \ > { \ > - return PagePrivate(page) && \ > + return page_private(page) && \ > test_bit(PAGE_PRIVATE_NOT_POINTER, &page_private(page)) && \ > test_bit(PAGE_PRIVATE_##flagname, &page_private(page)); \ > } > @@ -2662,9 +2662,9 @@ static inline void folio_set_f2fs_##name(struct folio *folio) \ > } \ > static inline void set_page_private_##name(struct page *page) \ > { \ > - if (!PagePrivate(page)) \ > - attach_page_private(page, (void *)0); \ > - set_bit(PAGE_PRIVATE_NOT_POINTER, &page_private(page)); \ > + if (!page_private(page)) \ > + attach_page_private(page, \ > + (void *)BIT(PAGE_PRIVATE_NOT_POINTER)); \ > set_bit(PAGE_PRIVATE_##flagname, &page_private(page)); \ > } > > > -- > 2.53.0 > >