From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-qk1-f177.google.com (mail-qk1-f177.google.com [209.85.222.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id BB1F1313E33 for ; Wed, 17 Dec 2025 22:33:13 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.222.177 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1766010796; cv=none; b=q75lpwMOhbpoMrxHzzL2OUX0AkY7MGo4ZQ3zMgL70RxyQ4weGSkhBUXVR1dI8La9FeOGDS0q/RRkMgnSG4QyMlESN7gtR4RdVqZohkE3g1MHcpYJBaCp+4h/6ApOQa5JIVFcM4oC3i/gtBMqA/CYRPmdiA/kHhk/h5Po42dYnig= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1766010796; c=relaxed/simple; bh=NKXQb+JqGtI2KGj6YMEHWWSmUwcGPTWm0sN1bx1o7eY=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=AEyzaR40lc+lNVLbU3uq8Z8D5+O36XiHFkoyAK/ctHwSb6yQC/TEJA/bvoItmvjvRAA+P1KMa/enZXC0JOZ1wN8VpRm5H972HAomfadgu3QVk77FALkPiIB0fVSuyYLrl8W64Iey5tU1LM3Ojyn7H0VZRayeIhlILDGbrVxNBKI= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=cmpxchg.org; spf=pass smtp.mailfrom=cmpxchg.org; dkim=pass (2048-bit key) header.d=cmpxchg.org header.i=@cmpxchg.org header.b=Tc7sw1Dg; arc=none smtp.client-ip=209.85.222.177 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=cmpxchg.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=cmpxchg.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=cmpxchg.org header.i=@cmpxchg.org header.b="Tc7sw1Dg" Received: by mail-qk1-f177.google.com with SMTP id af79cd13be357-8b31a665ba5so2421585a.2 for ; Wed, 17 Dec 2025 14:33:13 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cmpxchg.org; s=google; t=1766010792; x=1766615592; darn=vger.kernel.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=X/0fSU7byX7H74M3pGZ6ch52/NJ8dJexMYfTnz06pjc=; b=Tc7sw1Dgk+ObHV2fFldcr3tOJgQZw4pSEo9CHkqGJceI1I6xQvYFQSmqA7zIl3FXI7 nS9iwQWGyR/BcJvJUOuaoG9NYDFTpt6O59FW+PPXl8W9nKSRJahVxCnytX2Rq7seewD0 s+roUoCmDuGfXUmpIl4dcJD3G00bRlp7mOJt2x/R9rGxbDCl1Vr9bkYceBtwkQdwIETt VyFvoNLI7RPfmzyd7Mpo/Ie2cYvjvmbBcBfKBPzQmqedYcx5r3BGK+oI5ymkjIv3j8kh OuVyoyUum6i1F2EdcilhRfal38WrQA+lqSICWGOsTlutXcUiLSa3n1SV4dzDBX0hJrPk 6LNw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1766010792; x=1766615592; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-gg:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=X/0fSU7byX7H74M3pGZ6ch52/NJ8dJexMYfTnz06pjc=; b=vap1q+SSQx2mSppLOqBOlIk5r2IVW/8kSlAy4TFyOS2UtTHvXzSkiXiWhd1szCrs+p LzUwI7AepvNGbExquscVs26sSroT4M2o9aN0c1veqNwgDnWGWekwf7ZiT+I1eZ/054jC epXqxAeY+Wvt0LBonDmxEtddU6pUGaCQ0Cspf+csVssnugkuyDGMvK2KxAtbe0ZYGgQs GJGhYq8U9NYy9CQFd2YICv8XXntNFHcjGwNiDQc9eVpfsRyNio6Vlr3C7UHIIE/T5CDM w2jrGxtB7iDJWvqstMBZjjgdpaUw98Eey4ek70Qvvgh7RsmJ8jRFNPBC158fVXIinJ1b DYrg== X-Forwarded-Encrypted: i=1; AJvYcCVIavaatuc1UWGzc/4bdQzBaqIJK0T96Q9X3aLnps4ZttVRIvxhRO99nKdPtQcIYXrQ1RSstiS6uGdh6IM=@vger.kernel.org X-Gm-Message-State: AOJu0Yxlm1uG6ZnPC+/2nikAvML0v452Eqt2HHcNccEOtRlhjUNbr3Az Ogc9Nj0RqD+2UEEEbwD/5rAhS/a8ljZSkwqEJwczGzq/tSyCLLbDFKIOQKsxTqIMHs0= X-Gm-Gg: AY/fxX78hjX+SDHJOXfPn/6GoEJNNNWdb7EFKWpdgxmWoGUsZwUcX75oqSrkwqG7VXw fIScEXMntT0sa2P9PCMhGfSmlj6ftZ5ehEX26iY8LlPcFkyM3tvadgZolEX4/nUMDaciWJYAhc8 /E+Fhl5Jxqw/lcWLd643vWMTZSutAllrZeNCteuLqHL7mCLLT4WhTM863kywEnOjr0EkK3X2pV5 xr5L7q65BzYrE5JIsoDiR6MBrIkJA8cgkSy8cnSIlWB/0sUd76PH3Gs9dv31XSjGpYezrsejVGJ PVb6NsfF8leRy7STAEOUD/z7C+Pe4LxA+uA/iRX369DAqu2x3x4vcCHeJWOBbonmewG9liu6C4/ Kl0g+z1gXI3aqzw63+1xhOvygr9vQR/bpibjcTGlUy/CF36ve9Hzm9DUsvePuBGSi5INn8FJ4Gc nKvp788xZQsw== X-Google-Smtp-Source: AGHT+IF7/FSEL/FL21mefzRD0FNnIqW4z7GJgpKznrwLCEpqc+nHhV1if9CL8B9ObJ8hxVZ+Dp1jnQ== X-Received: by 2002:a05:622a:146:b0:4ec:f697:2c00 with SMTP id d75a77b69052e-4f1d059e3f9mr279660781cf.42.1766010792438; Wed, 17 Dec 2025 14:33:12 -0800 (PST) Received: from localhost ([2603:7000:c01:2716:929a:4aff:fe16:c778]) by smtp.gmail.com with ESMTPSA id d75a77b69052e-4f35fcb439csm3688841cf.15.2025.12.17.14.33.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 17 Dec 2025 14:33:11 -0800 (PST) Date: Wed, 17 Dec 2025 17:33:11 -0500 From: Johannes Weiner To: Qi Zheng Cc: hughd@google.com, mhocko@suse.com, roman.gushchin@linux.dev, shakeel.butt@linux.dev, muchun.song@linux.dev, david@kernel.org, lorenzo.stoakes@oracle.com, ziy@nvidia.com, harry.yoo@oracle.com, imran.f.khan@oracle.com, kamalesh.babulal@oracle.com, axelrasmussen@google.com, yuanchu@google.com, weixugc@google.com, chenridong@huaweicloud.com, mkoutny@suse.com, akpm@linux-foundation.org, hamzamahfooz@linux.microsoft.com, apais@linux.microsoft.com, lance.yang@linux.dev, linux-mm@kvack.org, linux-kernel@vger.kernel.org, cgroups@vger.kernel.org, Muchun Song , Nhat Pham , Chengming Zhou , Qi Zheng Subject: Re: [PATCH v2 20/28] mm: zswap: prevent lruvec release in zswap_folio_swapin() Message-ID: References: Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: On Wed, Dec 17, 2025 at 03:27:44PM +0800, Qi Zheng wrote: > From: Muchun Song > > In the near future, a folio will no longer pin its corresponding > memory cgroup. So an lruvec returned by folio_lruvec() could be > released without the rcu read lock or a reference to its memory > cgroup. > > In the current patch, the rcu read lock is employed to safeguard > against the release of the lruvec in zswap_folio_swapin(). > > This serves as a preparatory measure for the reparenting of the > LRU pages. > > Signed-off-by: Muchun Song > Acked-by: Nhat Pham > Reviewed-by: Chengming Zhou > Signed-off-by: Qi Zheng > Reviewed-by: Harry Yoo Acked-by: Johannes Weiner Btw, it would make the series shorter if you combined the changes to workingset.c, zswap.c etc. It should still be easy to review as long as you just stick to making folio_memcg(), folio_lruvec() calls safe.