Received: by 2002:ab2:6309:0:b0:1fb:d597:ff75 with SMTP id s9csp1355988lqt; Fri, 7 Jun 2024 16:28:53 -0700 (PDT) X-Forwarded-Encrypted: i=3; AJvYcCVGseAeBJx933AuhsiNxb+X9jwp0kD4EzlhkOZesCPeWNckQBNAMwJHTVtvpliRk8LD9qjxZuXNnF2chB/VdhwuonQofFPzO1PzWfiq0g== X-Google-Smtp-Source: AGHT+IEniwVe5VnSfV88DyRBu3qwVYu8w1UnksFlkbE+80seCgQ/avsgo+PwDj17bOfsH1PQjJZ4 X-Received: by 2002:a17:906:a090:b0:a62:5094:817 with SMTP id a640c23a62f3a-a6c75fadd67mr593556366b.11.1717802933420; Fri, 07 Jun 2024 16:28:53 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1717802933; cv=pass; d=google.com; s=arc-20160816; b=No7QjE0IE29p/ihsWk2zhxMTwgY4cbxI2LfS5159QcM0hYhnc/s5GTeeD06kSN0VVy PVn/uvgYN1xQwC4kDy9/qe1lCxYTCBCdLzIsJ/4O7t7Mu7GQwGZ/rh4kjzWdikRbhxwd fe8GEtUYYm/yXXbw43AwRNBy6mXphD1RJD04tWi+AkLLKHeGUjJoI8CDthXgzAWEyffa eXpZMJrDn4EXrsrCDhE1KiPhkYkWXrnhSdIE/+BEs+vgs0qrVtlPwCZGdGjt0Mf3P53D 43N/Oke9pu6ZP6vrTz9lHv6aFx3Bko3SiAmfPOpjnJaZSABkHVB2vVTnQnQeA4NeiZMH NwRg== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:list-unsubscribe:list-subscribe :list-id:precedence:dkim-signature; bh=FoXr25pihRsGvoWplY9lKcd/DOl4KWMymXCbOR80aMQ=; fh=i4+j6Fg9APJs1Vw3bebST93byRpUFB66dT62qGr/RRg=; b=DfrL9WKr8hADVkVb7E+mVEnDRJ24MrvbxT8T17J04wyCFF9FoU9d00sLpO4uzF6F8D ygMzBeGZiYbFIYxlMLyNTv3fgPmhUObulBy9M+ApIjH/f5rK+nYAvzWJcxU90QmRLpje HFTcLoOCvyGW5DFk2DKhsrFNgSl744bJjgKr8s8vQO7nSwO6QcfsbeyO/xm9NjbvfEff Ez9g9bOBZwSFiTtXRw2I/COMy+EuHsVNByKuFNaXpocBcUiOyvOHEv0n/FGLcx7RFYN3 5k/mxfU4jecPxsjB4veKULCiRQLwjMyaTGkHGgLQDnTZ8LoY3NtmRerb8FK6Usw42w56 LWhw==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@gmail.com header.s=20230601 header.b=Ar+GMn7D; arc=pass (i=1 spf=pass spfdomain=gmail.com dkim=pass dkdomain=gmail.com dmarc=pass fromdomain=gmail.com); spf=pass (google.com: domain of linux-kernel+bounces-206834-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.80.249 as permitted sender) smtp.mailfrom="linux-kernel+bounces-206834-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from am.mirrors.kernel.org (am.mirrors.kernel.org. [147.75.80.249]) by mx.google.com with ESMTPS id a640c23a62f3a-a6c80749266si227431766b.939.2024.06.07.16.28.53 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 07 Jun 2024 16:28:53 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel+bounces-206834-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.80.249 as permitted sender) client-ip=147.75.80.249; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20230601 header.b=Ar+GMn7D; arc=pass (i=1 spf=pass spfdomain=gmail.com dkim=pass dkdomain=gmail.com dmarc=pass fromdomain=gmail.com); spf=pass (google.com: domain of linux-kernel+bounces-206834-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.80.249 as permitted sender) smtp.mailfrom="linux-kernel+bounces-206834-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by am.mirrors.kernel.org (Postfix) with ESMTPS id 260CD1F23A1C for ; Fri, 7 Jun 2024 23:28:53 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id E8B5E13A3E2; Fri, 7 Jun 2024 23:28:44 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="Ar+GMn7D" Received: from mail-vk1-f179.google.com (mail-vk1-f179.google.com [209.85.221.179]) (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 B999B1BC43 for ; Fri, 7 Jun 2024 23:28:42 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.179 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1717802924; cv=none; b=NrRBCAMB1yGOqMbx7OmIGkij2ADjQGiBckTmFNiYn3k6Ip3w32wLTMHy7rP5g93kNN9yDOPYeSyY6m0hILFLmBKtiCNb+07TvyUBatj5TLfBrBu2bPOMM3HvQVCLZmWjnuI77kQWm1/XaHufLKaEDPMUqPlVXkK2QjS0YDsJCX8= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1717802924; c=relaxed/simple; bh=FoXr25pihRsGvoWplY9lKcd/DOl4KWMymXCbOR80aMQ=; h=MIME-Version:References:In-Reply-To:From:Date:Message-ID:Subject: To:Cc:Content-Type; b=IDa08zdWzCIIDmZLZcSs+cTceuqHnz5MeSG6aVpLfEo6ybgFeXIoC96H17Ns8mvG2c6ikHkM6EqudFGz78qeWgqDdjPizuRRiJhX8JfiNyD7A2UWrDjGj5Y3UTzqcN8zrQV5u4f/2llws/vhK1cNFkeqLvewUfWlgflbm2ogVA0= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=Ar+GMn7D; arc=none smtp.client-ip=209.85.221.179 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-vk1-f179.google.com with SMTP id 71dfb90a1353d-4e4f0020ca3so866656e0c.2 for ; Fri, 07 Jun 2024 16:28:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1717802921; x=1718407721; darn=vger.kernel.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=FoXr25pihRsGvoWplY9lKcd/DOl4KWMymXCbOR80aMQ=; b=Ar+GMn7DjF+/HrS72LxDltZVETUkHqIZRen/mmajqwZjM3ocjC1yniQVDM6vo55xZ3 zIiZVxCEScy60wFo1bQ1cltNf3AmjfKGtjEYX6hw/Gu8LdgXFn59xk54w4Rv+89rMICu sirwlY4TbV84wjCTZP4eAOniL5ch/ffQw8z4A6rNd2Duv2QIS5gtrRjFFYcV/VLMyKIK II6YkiwZDqaJArpC0swqy6NHy7JFvN1uhkBGqz1xaKfm19nDNJprbDDBAv/LaEnEadXm 8wQzfssrDDd921JODBKLXPwXtNzE8oulaB4DeUKPhdx7Chord/V9wbJ9mPzuH77Aso5Q pwEg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1717802921; x=1718407721; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=FoXr25pihRsGvoWplY9lKcd/DOl4KWMymXCbOR80aMQ=; b=HNLYlSDAeAr1InTo79OLBh6s3zL+WQ3fT6sIBgIsjyyA6mEPdCnpc4FLU6TKQUljep aOtEjJrGwAnphuWszizJ9QZdYffrl0axRkidn6QKx733eHTgco5ZG2LBD00bh/MYWdBH +Hfvl4ss00DNKHC4+ggD7R+/zGz653iZJs1GbDy7/ewpGJurbD5g2MW1s2v0WUYBTSdX 8oktZAt0qUEZUHcDZbjaiI8FM2E8siQGVzAEyH/4Xe7Orxl2Vg8ZjvkJIpIi4NSyzfbZ DMZQ8HQPjPgvQH96LHLXE1KCbbvqEeGR67T6+5NT3Uwq3oK1mTzeI8SSR8fm3D/SzDT/ lqzA== X-Forwarded-Encrypted: i=1; AJvYcCVQTF3ilMqdC8CWdoev7tBfQg+VUAImf/YZdPNMcgKD/nNjdhwH3096whSqHgE5/2mmEOY7crdn1OMOvq5qrfGXDr0HqWItCSBp1z1L X-Gm-Message-State: AOJu0Yx4powNigSM0S84mGw3uLQ0XVdfz65tNoQrqFGxoN86ONqnxWuD b8BDEvxc5Opty+M1BbwhK0RGAZZJ7Zs43Aoc2PeIqADMgS/4GUwSCXmOI8GPfwWrwn/Tdaz97xZ +MmFToq7djmzlXLvYGdnB1g1y7Sc= X-Received: by 2002:a05:6122:4124:b0:4d3:31fc:4839 with SMTP id 71dfb90a1353d-4eb5621b763mr4657457e0c.2.1717802921472; Fri, 07 Jun 2024 16:28:41 -0700 (PDT) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 References: <20240606184818.1566920-1-yosryahmed@google.com> <84d78362-e75c-40c8-b6c2-56d5d5292aa7@redhat.com> <7507d075-9f4d-4a9b-836c-1fbb2fbd2257@redhat.com> <9374758d-9f81-4e4f-8405-1f972234173e@redhat.com> In-Reply-To: From: Barry Song <21cnbao@gmail.com> Date: Sat, 8 Jun 2024 06:28:21 +0800 Message-ID: Subject: Re: [PATCH] mm: zswap: add VM_BUG_ON() if large folio swapin is attempted To: Yosry Ahmed Cc: David Hildenbrand , Andrew Morton , Johannes Weiner , Nhat Pham , Chengming Zhou , Baolin Wang , Chris Li , Ryan Roberts , Matthew Wilcox , linux-mm@kvack.org, linux-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Sat, Jun 8, 2024 at 7:17=E2=80=AFAM Yosry Ahmed = wrote: > > [..] > > > One problem is that even if zswap was never enabled, the warning will > > > be emitted just if CONFIG_ZSWAP is on. Perhaps we need a variable or > > > static key if zswap was "ever" enabled. > > > > > > Barry, I suspect your is_zswap_enabled() check is deficient for > > > similar reasons, zswap could have been enabled before then became > > > disabled. > > > > I don't understand this. if zswap was enabled before but is disabled wh= en > > I am loading data, will I get corrupted data before zswap was once enab= led? > > If not, it seems nothing important. > > If zswap was enabled and then disabled, some pages may still be in > zswap. We do not load the pages from zswap when it is disabled, we > just stop storing new pages. > > So if you just rely in checking whether zswap is enabled at swapin > time to decide whether to use large folios, you may end up with a > situation where zswap is disabled, yet parts of the large folio you > are trying to swapin (or all of it) is in zswap. > > This is why I think we'll need to track whether zswap was ever enabled > instead (or if a page was ever stored). Thanks! It doesn't seem good. Do we have a simple way to clean zswap when it is disabled? seems not easy? Just like we do swapoff, or disable cache, we ensure they are clean - this is a real "disable". Thanks Barry