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 19E33C4707C for ; Fri, 12 Jan 2024 21:43:09 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 71D8A6B007B; Fri, 12 Jan 2024 16:43:09 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 6CDD86B0080; Fri, 12 Jan 2024 16:43:09 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 56DF26B0085; Fri, 12 Jan 2024 16:43:09 -0500 (EST) 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 4487E6B007B for ; Fri, 12 Jan 2024 16:43:09 -0500 (EST) Received: from smtpin24.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 17DEF1C1393 for ; Fri, 12 Jan 2024 21:43:09 +0000 (UTC) X-FDA: 81671984898.24.8330211 Received: from mail-pf1-f178.google.com (mail-pf1-f178.google.com [209.85.210.178]) by imf12.hostedemail.com (Postfix) with ESMTP id 2BAEF4000F for ; Fri, 12 Jan 2024 21:43:06 +0000 (UTC) Authentication-Results: imf12.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b="cQ4Rt/q+"; spf=pass (imf12.hostedemail.com: domain of minchan.kim@gmail.com designates 209.85.210.178 as permitted sender) smtp.mailfrom=minchan.kim@gmail.com; dmarc=fail reason="SPF not aligned (relaxed), DKIM not aligned (relaxed)" header.from=kernel.org (policy=none) ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1705095787; a=rsa-sha256; cv=none; b=S+nlUCNVoLhifJIRrzH1vTICzLMKeJ/eRfmB9fk2qtkzC/jitJQZ9VMDAz8LdBGHHIaH63 tErA4PkyYRL7x/dWhHz4T0Kqa/mK97ulXfE8wUwz7FBMsZ0NF/z11VmgzxH55pL6Jkl8zU 8jkHR+oyiW4bAXXddqZOA/dZwX5A4lU= ARC-Authentication-Results: i=1; imf12.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b="cQ4Rt/q+"; spf=pass (imf12.hostedemail.com: domain of minchan.kim@gmail.com designates 209.85.210.178 as permitted sender) smtp.mailfrom=minchan.kim@gmail.com; dmarc=fail reason="SPF not aligned (relaxed), DKIM not aligned (relaxed)" header.from=kernel.org (policy=none) ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1705095787; h=from:from:sender: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=/IJygVZYI1Js+sT6W/6Wc737k3az8hHGREjNmyKNJOw=; b=mChXN1Bve6ayfAW0I9+NybvBSVFntmFuwk0iEZuL6KgSC2Vs4PXeuTVBgltwJxck8pzW18 B8layGKnEyleYs3m0nkAIbXS0WZgBQHuJcuk5v3h9+i2YwfnYKNeKxehUeLjAd9J/liQi/ pi4MrSi/yq2t6y9PF/J+t7Qmv8emvpE= Received: by mail-pf1-f178.google.com with SMTP id d2e1a72fcca58-6d98ce84e18so5800778b3a.3 for ; Fri, 12 Jan 2024 13:43:06 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1705095786; x=1705700586; darn=kvack.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:sender:from:to:cc:subject:date:message-id :reply-to; bh=/IJygVZYI1Js+sT6W/6Wc737k3az8hHGREjNmyKNJOw=; b=cQ4Rt/q+vcaDzT+z6qO4XKYeiMRFKgTD3ccC8WtqA5bWOMSytQuixVXzFANQ9uaVf3 o2bIzSm0un8jX8XkAv+fFmiz4wOJPOufvQGNWBUZEAHTAZO3YeBW/hiXCBCUw9IxsXBW ljADv7MFIQkQ9Nqgxy72BQakBkuKGo1r5LBBKvfY6pRhjX3swL2prTdUmaad0SWpc6DH mWg8g9SbJ4FbsWu/y2VEolEUw9uZmaPvqteYt6giNX0zFVriLzGBwY6aYlstSxDmft3u RAcMPqQAXRogwTI47hbb/tPIHSsKA4gbsuqc+zzeZU3/69GtmueUmIHhY8vEjTwsoYtA gtEA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1705095786; x=1705700586; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:sender:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=/IJygVZYI1Js+sT6W/6Wc737k3az8hHGREjNmyKNJOw=; b=VEZg4cm4E0oHNaqqOqgV0dNjMzs8NT9hQIXo8duBCT59kCV5kE2haV+llAv7TMBLJb LJ5dY1cxmUFrRmYh8mCqklEZy6mQpyyU99/gJxTbvj1ZX6pZTuoypYZdG905Yr5HJ7b7 B9LK1TnREEJj5eIpstWgfas3kETNcjFwULdCrezQnyZ/4BZimMV6eF2k5Zdm8P5Ryp2/ r6IUS6hzvqcY4XydYtBNcWMfgMASBxXcxTbKBJcx/bAAQuV6cO+jBQmqI/Mj0XtTLQMG xJbs+lkum6nNojetEuUM+s49BxIKre1dvpFCbHCyKUGnI3u1fEthxRVq2efMQzSI+YLu o/xg== X-Gm-Message-State: AOJu0Yzj5pWodpkIgJKlNt6q9fUZloJUVMe0tekoyhfpzPhStdKbgv86 pn00ngQurjnYpV9NrE3hCmtyJ/HoLqM= X-Google-Smtp-Source: AGHT+IEu/6D9/IECCFtd0+cthRTD6E49U6rFlv9D8sN+iSSPSGoLHxVxTE5nYF++KHkDe/hR3vxp1Q== X-Received: by 2002:a05:6a20:8887:b0:199:de70:4786 with SMTP id d7-20020a056a20888700b00199de704786mr1334227pzf.82.1705095785734; Fri, 12 Jan 2024 13:43:05 -0800 (PST) Received: from google.com ([2620:0:1000:8411:c5fc:b560:2bcb:b410]) by smtp.gmail.com with ESMTPSA id so8-20020a17090b1f8800b0028e01fcf1f2sm2748206pjb.40.2024.01.12.13.43.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 12 Jan 2024 13:43:04 -0800 (PST) Date: Fri, 12 Jan 2024 13:43:02 -0800 From: Minchan Kim To: Michal Hocko Cc: Jianfeng Wang , Andrew Morton , linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: Re: [External] : Re: [PATCH] mm, oom: Add lru_add_drain() in __oom_reap_task_mm() Message-ID: References: <20240109091511.8299-1-jianfeng.w.wang@oracle.com> <1d866f1b-94b3-43ec-8f4c-2de31b82d3d1@oracle.com> <20240111135404.609af4a26d0118c0d290f11c@linux-foundation.org> <897538a0-5ce6-484e-a9bc-4e61b3be2265@oracle.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Rspamd-Server: rspam08 X-Rspamd-Queue-Id: 2BAEF4000F X-Stat-Signature: x5yk7jnjzfdr8uu9mhsr94djrmic8rx6 X-Rspam-User: X-HE-Tag: 1705095786-106450 X-HE-Meta: U2FsdGVkX1+k4NqqBem5p3mJLGqGz/pOMMf9ME7c6Uk3ekaSsaYy5QZsw18dP73eYjMSQ9mRTOvDBgj7Rq/VO/ZAVPDTvBNSGdeB+v+KhXUvFh5C0clgXXxYXsnUdiwiSi8C6q14A7gw8D/iU+v7Pqfhr+6wMr2HH9Pv3JIhBMkM9g6bzkDi6iJPQ4AnCwrReQJ6AEOH2Ljx6UzY42DZqvJmTDPq+K5q5zz5Y5aLTjhGGzGXi9MmnmR7osTYnEgel96o3iMhck+W4EuHn5ubbnVCJjBmE7HulxeZ2dNF7x/4+D/h6FmTcke5wOLwbpHBnNfVd/n8rKmGx1ozYn/mvRfc81mK62YJiMk3pURXSub4PlbCDsao3Ca3FNfDZgfbg/WE7qnwTenLnPhniXobPDJqtRiFsYsv+v4UYOTI0eYvb2jiVMSsDWvquNR0xkJCnozN+Y4RZtgG3QR6zudEsufQi5wy4nyFjeIQxru+qcdnb8x5vY42GKp0R4IHJpWUtkIahpfQEfUSFimM9eqXcVfqSnSnD//6pJ92qQZmQ4karFyAQZe8Y7aDGErjieuJhU+/8qEJjF72PoTPPfCCI9m94tIb0E0kKjywts08umbKuCbRFGgoWOvBq78NCw7bOlgp6TyOaggVXT8URcA/UA4/qMrLw707d3o5+hZIjPgLGnYGprykPnboGCaK2Ay4IXxjIGQh5wcTTAD7TfQoGeZhKZSITS72oowSr9Ns2iRrETLQm0SfVoa7L9xQ+3S3wVjgrl4xatp/pGgA98deg1o/RPVRWHYIxRkw7mB4U2RuyiO1Bt0189CL8AFZIZ93a2AZAc78mpVyXEVpS9umiWK9ulQ/U5l+luqhrphkQQMiLUkXzi8dSyVsKrrzTVoECgjcuH1/wSJXpLbkVFbDQzZjZZDG6/5P+EEzDJwMIma0dRXOBWNwmqTDG9zgGNOyZwlPjMGQzkRzCD4A1GO qojvUFor JedZWBE+5Bm7TqgZMbnnYH/h/6rCZTLACb3i5Nn9PuHmw5oAqWraateDWlZIkVTSDZRgEqKA3alOF9zVENRa7eIpLlApSKWRcY4A9pIi825wKrfkilcyl716kfR2SyHT86mbNlo3Yr1S9ThwI8ceWOhFzmkVpPZd1DsfW3gB47SImGXU40Rsapsfs6hQ4zaz+2oAjzdvYKfs+QB7w9gwL7CO+/Frk8xSDzhFIEnpyamlAJroGUEVTPF9AsEQKuRA+XlWMI9RcHdoTZ8fmr2bu/pL/Z4r6KK28gFcKfvmmay12kLOlvh/9etsSeL7a2ZRfTRTLJfQfaNse+gNPpleZtfxL+quJWmaSYQ9aaSPjwo0DbW5aEE5McIYtjgtZgzhpKTRebxHdJqmjE/f61RDR/uU0l/E08JqAfi4NWYDEqMlCjPbVEX2hPZUf68cFgA1+i/EXMzHMQQGkC57XhRNkkqb7hv/cMHxo9Ra8MEKsZj1KRVLADBHIdbMq7mQL0ePvBT9NFxtjDtb3AqFYBDUx++SmaGxBgMt6kOkyofHMPW+K0/j5ZjFnCjkQIGokj01qWXsnjmhxVDG/QPyp8E15OhWEWl69wRAbHrSik45LboQXuOYuG0QywJCLKr8tgApxNMzpZ0LVTFiFsnBiuJta4MIVuIw6RNZWX0l/1Nd6iEfqL8sGW44ycVezT9cajVl+809D+ddTrWH8lnalpBF5vygPcsvUwFsKGf/TDCWKC2XvioQ= 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 Fri, Jan 12, 2024 at 09:49:08AM +0100, Michal Hocko wrote: > On Thu 11-01-24 16:08:57, Jianfeng Wang wrote: > > > > > > On 1/11/24 1:54 PM, Andrew Morton wrote: > > > On Thu, 11 Jan 2024 10:54:45 -0800 Jianfeng Wang wrote: > > > > > >> > > >>> Unless you can show any actual runtime effect of this patch then I think > > >>> it shouldn't be merged. > > >>> > > >> > > >> Thanks for raising your concern. > > >> I'd call it a trade-off rather than "not really correct". Look at > > >> unmap_region() / free_pages_and_swap_cache() written by Linus. These are in > > >> favor of this pattern, which indicates that the trade-off (i.e. draining > > >> local CPU or draining all CPUs or no draining at all) had been made in the > > >> same way in the past. I don't have a specific runtime effect to provide, > > >> except that it will free 10s kB pages immediately during OOM. > > You are missing an important point. Those two calls are quite different. > oom_reaper unmaps memory after all the reclaim attempts have failed. > That includes draining all sorts of caches on the way. Including > draining LRU pcp cache (look for lru_add_drain_all in the reclaim path). > > > > I don't think it's necessary to run lru_add_drain() for each vma. Once > > > we've done it it once, it can be skipped for additional vmas. > > > > > Agreed. > > > > > That's pretty minor because the second and successive calls will be > > > cheap. But it becomes much more significant if we switch to > > > lru_add_drain_all(), which sounds like what we should be doing here. > > > Is it possible? > > > > > What do you both think of adding lru_add_drain_all() prior to the for loop? > > lru_add_drain_all relies on WQs. And we absolutely do not want to get > oom_reaper stuck just because all the WQ is jammed. So no, this is > actually actively harmful! I completely agree. The oom_reap_task_mm function is also used for process_mrelease, which is a critical path for releasing memory in Android and is typically used under system pressure(not only for memory pressure but also CPU pressured at the same time). The lru_add_drain_all function can take a long time to finish because Android is susceptible to priority inversion among processes. The better idea may enable remote draining with lru_add_drain_all, analogous to the recent PCP modifications.