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 E217AC197A0 for ; Mon, 20 Nov 2023 20:22:58 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 38A866B027A; Mon, 20 Nov 2023 15:22:58 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 33B206B0463; Mon, 20 Nov 2023 15:22:58 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 229CE6B0464; Mon, 20 Nov 2023 15:22:58 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 12B056B027A for ; Mon, 20 Nov 2023 15:22:58 -0500 (EST) Received: from smtpin22.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id D81BC1CB67B for ; Mon, 20 Nov 2023 20:22:57 +0000 (UTC) X-FDA: 81479456394.22.06F1B5C Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by imf17.hostedemail.com (Postfix) with ESMTP id 7797E40005 for ; Mon, 20 Nov 2023 20:22:54 +0000 (UTC) Authentication-Results: imf17.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=cJSYvudJ; spf=pass (imf17.hostedemail.com: domain of chrisl@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=chrisl@kernel.org; dmarc=pass (policy=none) header.from=kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1700511774; 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:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=NFg0wlSr/v/kErEOyhobnwmAmvgCu5Yu1gdKePoxtJQ=; b=7t7KWttLc1oIB/cQ/35CavasAjqZK19E8SGd/R7amBlhfLkxiSo3/iDsy2Tg9eUQUIqUcY hr1TB+ZteTkX2e/CfpDgRENI2EGlBnVhiUF/hcyYzq26W6vqfnA/+oL5Fz51wIpCk6ol1i bA1puH4hhsuT0hEuBDZn+dPdSbQw9OQ= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1700511774; a=rsa-sha256; cv=none; b=XXbJ6IO12Fd/Fx19buIjjZRVo/9qi5ITXEwEfgjtFRC15mn0d8encptk2TKwqm0xO5oZUx HZzcBJzdxvphwm58lICK+rXtzA4t8mLsZkS3rF8DSweIQvEWC7/bB4fG9RVv+FJHhQZRou encZneKVjWPpD/TZk9P3yn/I9Wg46/M= ARC-Authentication-Results: i=1; imf17.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=cJSYvudJ; spf=pass (imf17.hostedemail.com: domain of chrisl@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=chrisl@kernel.org; dmarc=pass (policy=none) header.from=kernel.org Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by dfw.source.kernel.org (Postfix) with ESMTP id 52DD9614DB for ; Mon, 20 Nov 2023 20:22:53 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id AF628C433CD for ; Mon, 20 Nov 2023 20:22:52 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1700511772; bh=gIgqR/9VcuTYBSkml6AkfzkkEsnD1KQBGwRnh+jZD2U=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=cJSYvudJ73nVPGMLTsPa0tmWSiq0m7uJ8URX3gFum2ENVm5MjARlAtnKSfWFmgMjY xOHhg9SCtmXslK3vqF+uvvUFWLrazsmFY/gv1jmQGTkDXOsFdYQfuo100i+3xOQP3q yMzCvLmapw6u8tIM/bLdyXSp/+YKrrUBHIaFPufmfSecGNFkvbrKPZZkMzOeiHkzV4 Hks2YHQ+TW33yNpF5ABTV5wU2Ox9gZKsWEqBAZZAMkkxV+H1irYmHFHoIkEWERlNbe Mi3zBdbo+q8hr1v2HiPetVfl4EhNTh+UcetcLrqengyjX+zGNUH0nwFB9RYPwfCBgB l5Mhg+eleOIeQ== Received: by mail-pj1-f48.google.com with SMTP id 98e67ed59e1d1-285196aaecaso1192185a91.0 for ; Mon, 20 Nov 2023 12:22:52 -0800 (PST) X-Gm-Message-State: AOJu0YwRadvlymG7l18jPNonPMV4d4LBMw33p0rmyFFK8CJ88EEU+qZ4 99YGwKjTPNeW84VEtJJIk3khlLG3OfpGENwHwFgEWA== X-Google-Smtp-Source: AGHT+IFEQM3maKhSUUF0uyuZ3TL136y/JNrYvF3KNApHKyAwkdOxRtYNGaJo2Y+2WFGmSVShsJPF2y/MqmURgeNPZZo= X-Received: by 2002:a17:90b:4d0d:b0:27d:c36:e12d with SMTP id mw13-20020a17090b4d0d00b0027d0c36e12dmr6456816pjb.6.1700511772129; Mon, 20 Nov 2023 12:22:52 -0800 (PST) MIME-Version: 1.0 References: <20231119194740.94101-1-ryncsn@gmail.com> In-Reply-To: From: Chris Li Date: Mon, 20 Nov 2023 12:22:40 -0800 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH 00/24] Swapin path refactor for optimization and bugfix To: Yosry Ahmed Cc: Kairui Song , linux-mm@kvack.org, Andrew Morton , "Huang, Ying" , David Hildenbrand , Hugh Dickins , Johannes Weiner , Matthew Wilcox , Michal Hocko , linux-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Stat-Signature: nhn5eegpkkky13uyt5rrci8q3eakyppx X-Rspamd-Server: rspam10 X-Rspamd-Queue-Id: 7797E40005 X-Rspam-User: X-HE-Tag: 1700511774-587367 X-HE-Meta: U2FsdGVkX18W6B9zIoV77EnaG29AkX/L5+qYgtodimOTA02quUB15uvSM67SY0YmxOzEwrmR1L91hO80t4/XLyK3l3D5KPPBSrgk/uiMgV/ljbUO9r68AHueL+vLpLp4NjH4fs2qQStFKEHrTSC3AyuyEPIODyK0/Tt2HSEiLQdU1Bd4jRkynlxOLcoMHd3/XN/kkg9JjK4eqv/zgDEBf+6SwVx4wuIW2FXE479+ezk9zndMLim2DqxGCdPZqjbLUheE0/TIhEQfziWMchWwLja/qEuZ7grykjLjMOTlo5oMuhb6X7+cNMMTfknIlThR9qC0wsuxHR6gv7BLNCRenSGU7OVer/8fFgfhSV5GGkQm5Aw9suRVpTqXi2ApEcReaFpYrOxQyswIR95/GBasRzL/JUorWkL8bNqi5as/ujluDQBZ7lKM6ihJBi7xOiZplAudBsdXQ6Hz2u+b6ueknFw7IYTrMI6SusFvir/Zm3c/3OgBzh1NQkUAVOP2ZyyDIp3Ubk8Jt9+Drr4MfZTCTWjAFvPqlck56hAKasCqpWHlzWk+r6YWJcSYXI0ntiPXyvSlHB3B72LN00Pyzn19PIhN8KgimEFyfIwYpRoVAJqtic7r7hAf/eN5yB95mKEWCcr1xNo/y3rmy+yzniX+DfiEge+KqjJkgDmnSae9wi5pqS913Bt9AwoRmLLBS1xP53izIKBPA6263iOKzseYenelLxicZij20hAv/s7krg1yuOyPhgWKPAq1+CznyMl8a9gymdC0TdcZLbeseNSZHOMaUOgGKJOPtUgDqNX3NM1KouxeOiYHNyyaHjdqJzGhBNjadmJ3kntGGT3jUWFUmdvjPH4m/FTrWuNyaeqZMHykQxNuwJ/IDcTLGbztV04SeG0WwEyhgKrg1tJU5pOoYywdblRjm+hAqVWB+t611zBxYtRFxotJOxd6Cw/W6ovV0gZITM1k7BQStlJ/0GA /a72lBo7 eEUP6G4q/KIe5NqNYf1TK6TPLE4H/T3hsqX9EzoC93du5Zm3lULRPBMI7MPQColuiYSSFJ6XnVH3x1GzWiIb6RY7ThrqTMGOS+qVA5wPxNN9h3huMQYQczYgmQs4XE+kukaLcdaqUVS3vqRrk72HgsoyFtiJUTOCMKNRQCJghkRfGA88ApExNDecJALa9JmkJsG5fvVtGnoLKefSP20DL3qGRDd3gaXPqvffPvMevfunzk825NrAMFbsEvewW3S5Vj2sdAqT2iLPUTBqzqYH2WHLdUKAWKC2jBkkvweQ+3PNyq4ogCJZJ5qTTQi9PCbB6wo3dOv+tg9A6C8I= 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: Hi Kairui, On Mon, Nov 20, 2023 at 11:10=E2=80=AFAM Yosry Ahmed wrote: > > On Sun, Nov 19, 2023 at 11:48=E2=80=AFAM Kairui Song w= rote: > > > > From: Kairui Song > > > > This series tries to unify and clean up the swapin path, fixing a few > > issues with optimizations: > > > > 1. Memcg leak issue: when a process that previously swapped out some > > migrated to another cgroup, and the origianl cgroup is dead. If we > > do a swapoff, swapped in pages will be accounted into the process > > doing swapoff instead of the new cgroup. This will allow the process > > to use more memory than expect easily. > > > > This can be easily reproduced by: > > - Setup a swap. > > - Create memory cgroup A, B and C. > > - Spawn process P1 in cgroup A and make it swap out some pages. > > - Move process P1 to memory cgroup B. > > - Destroy cgroup A. > > - Do a swapoff in cgroup C > > - Swapped in pages is accounted into cgroup C. > > > > This patch will fix it make the swapped in pages accounted in cgroup= B. > > > > I guess this only works for anonymous memory and not shmem, right? > > I think tying memcg charges to a process is not something we usually > do. Charging the pages to the memcg of the faulting process if the > previous owner is dead makes sense, it's essentially recharging the > memory to the new owner. Swapoff is indeed a special case, since the > faulting process is not the new owner, but an admin process or so. I > am guessing charging to the new memcg of the previous owner might make > sense in this case, but it is a change of behavior. > I was looking at this at patch 23 as well. Will ask more questions in the patch thread. I would suggest making these two behavior change patches separate out from the clean up series to give it more exposure and proper discussion. Patch 5 and patch 23. Chris