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 822CEC46467 for ; Tue, 3 Jan 2023 08:20:17 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id F276E8E0002; Tue, 3 Jan 2023 03:20:16 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id ED71A8E0001; Tue, 3 Jan 2023 03:20:16 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id D77BB8E0002; Tue, 3 Jan 2023 03:20:16 -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 C8AC98E0001 for ; Tue, 3 Jan 2023 03:20:16 -0500 (EST) Received: from smtpin11.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 9B140405CF for ; Tue, 3 Jan 2023 08:20:16 +0000 (UTC) X-FDA: 80312790432.11.7F59D12 Received: from mailout1.samsung.com (mailout1.samsung.com [203.254.224.24]) by imf08.hostedemail.com (Postfix) with ESMTP id 55A6716000D for ; Tue, 3 Jan 2023 08:20:12 +0000 (UTC) Authentication-Results: imf08.hostedemail.com; dkim=pass header.d=samsung.com header.s=mail20170921 header.b=Q0xz7NAo; spf=pass (imf08.hostedemail.com: domain of jaewon31.kim@samsung.com designates 203.254.224.24 as permitted sender) smtp.mailfrom=jaewon31.kim@samsung.com; dmarc=pass (policy=none) header.from=samsung.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1672734014; h=from:from:sender:sender:reply-to: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=1yWTky4TDMhNEiL+icVGFosUinkFfnqp9uEKyMxLLZc=; b=lEnE++xpmC8bHM1F6yqP0DszR7byqMtQ4+E4I9o0xeW9YTNdS04xdB3VhbQxl3IAJwXwR2 r14AmyMlBBXV71odyUQS6IduB+0hIGbBYhhcQBypjqObENMbcUuipPizkQCmVbRGYY4x6k 2XrXE/mepHjRJhzQb6VrOrBaPmNJF4w= ARC-Authentication-Results: i=1; imf08.hostedemail.com; dkim=pass header.d=samsung.com header.s=mail20170921 header.b=Q0xz7NAo; spf=pass (imf08.hostedemail.com: domain of jaewon31.kim@samsung.com designates 203.254.224.24 as permitted sender) smtp.mailfrom=jaewon31.kim@samsung.com; dmarc=pass (policy=none) header.from=samsung.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1672734014; a=rsa-sha256; cv=none; b=n1VGfHkdrw8pBodl1eqGByIZjgK5csOfuu61WtQdXbhUsqCPcbOTbXtiVd9zCIt7VGbftg 1NmClqpOyYVGn727GEh/yb+yjLGxnhx1cw5WWirZjYWRs7YZ3XcWEEMyEiYu0kTv/sZaqS GEsrcis3zPj5IGl8CR5e+4Y/FEdE6WA= Received: from epcas1p2.samsung.com (unknown [182.195.41.46]) by mailout1.samsung.com (KnoxPortal) with ESMTP id 20230103082009epoutp01b35225e70117b54f568674bf4fb2a918~2vrgjhqJf0544405444epoutp01P for ; Tue, 3 Jan 2023 08:20:09 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 mailout1.samsung.com 20230103082009epoutp01b35225e70117b54f568674bf4fb2a918~2vrgjhqJf0544405444epoutp01P DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com; s=mail20170921; t=1672734009; bh=1yWTky4TDMhNEiL+icVGFosUinkFfnqp9uEKyMxLLZc=; h=Subject:Reply-To:From:To:CC:In-Reply-To:Date:References:From; b=Q0xz7NAoGSKsNxzJpDIcTm6yVGSbmMqi8WmOOOzCZjQi7TICHe3itRR+CHnrjV6Ml eSiuTCJloCheY4xovLRWN5Ba6bJiKbqi18tCFfBit8Qu4Udc2FILElyqjzIhJAT6xe L9OWfp045eAG0GNAkmR5yfa6aPvjFFpYOkvBen1k= Received: from epsnrtp4.localdomain (unknown [182.195.42.165]) by epcas1p1.samsung.com (KnoxPortal) with ESMTP id 20230103082009epcas1p19133d4ec3a342f915fa4e46b9ffc3290~2vrgU-d1P1730317303epcas1p1i; Tue, 3 Jan 2023 08:20:09 +0000 (GMT) Received: from epsmges1p2.samsung.com (unknown [182.195.38.250]) by epsnrtp4.localdomain (Postfix) with ESMTP id 4NmQdj0Qcgz4x9Q8; Tue, 3 Jan 2023 08:20:09 +0000 (GMT) X-AuditID: b6c32a36-46ffd700000095a1-59-63b3e5383f87 Received: from epcas1p4.samsung.com ( [182.195.41.48]) by epsmges1p2.samsung.com (Symantec Messaging Gateway) with SMTP id 78.5B.38305.835E3B36; Tue, 3 Jan 2023 17:20:08 +0900 (KST) Mime-Version: 1.0 Subject: RE:(2) [PATCH] page_alloc: avoid the negative free for meminfo available Reply-To: jaewon31.kim@samsung.com From: =?UTF-8?B?6rmA7J6s7JuQ?= To: Michal Hocko CC: "akpm@linux-foundation.org" , "hannes@cmpxchg.org" , "linux-mm@kvack.org" , "linux-kernel@vger.kernel.org" , "jaewon31.kim@gmail.com" X-Priority: 3 X-Content-Kind-Code: NORMAL In-Reply-To: X-Drm-Type: N,general X-Msg-Generator: Mail X-Msg-Type: PERSONAL X-Reply-Demand: N Message-ID: <20230103082008epcms1p6f75b54cbfeba0a1ab9a8044dc650134b@epcms1p6> Date: Tue, 03 Jan 2023 17:20:08 +0900 X-CMS-MailID: 20230103082008epcms1p6f75b54cbfeba0a1ab9a8044dc650134b Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" X-Sendblock-Type: SVC_REQ_APPROVE CMS-TYPE: 101P X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFupjk+LIzCtJLcpLzFFi42LZdljTQNfi6eZkg0+LrSzmrF/DZrF6k69F 9+aZjBa9718xWVzeNYfN4t6a/6wW9/scHNg9Dr95z+yxc9Zddo9Nnyaxe5yY8ZvFo2/LKkaP 9Vuusnh83iQXwB6VbZORmpiSWqSQmpecn5KZl26r5B0c7xxvamZgqGtoaWGupJCXmJtqq+Ti E6DrlpkDdI6SQlliTilQKCCxuFhJ386mKL+0JFUhI7+4xFYptSAlp8CsQK84Mbe4NC9dLy+1 xMrQwMDIFKgwITvj/PftrAWbpComTr/H3sB4V7yLkZNDQsBEYtOk88xdjFwcQgI7GCXenVvO 1sXIwcErICjxd4cwSI2wQLDE5VUn2EFsIQElibM/rrBDxK0l9i+awQRiswlYSmy/OZERxBYB qunavJMNxGYW6GaSeDzPBWIXr8SM9qcsELa0xPblW8HqOQX0JJY+XcUMEReVuLn6LTuM/f7Y fEYIW0Si9d5ZqBpBiQc/d0PFpSTOdR9nAjlZQiBC4sUedYhwjsT7nXNYIWxziWcbWsBG8gr4 SlybuwEsziKgKvFyzg82iBoXiT0TTrBCnKwtsWzha2aQkcwCmhLrd+lDlChK7Pw9lxGihE/i 3dceVpivdsx7wgRhq0m0PPsKFZeR+PvvGZTtITH5/BQWSCivZJSYf3cJ0wRGhVmIgJ6FZPMs hM0LGJlXMYqlFhTnpqcWGxYYweM2OT93EyM4YWqZ7WCc9PaD3iFGJg7GQ4wSHMxKIryTXmxK FuJNSaysSi3Kjy8qzUktPsRoCvTzRGYp0eR8YMrOK4k3NLE0MDEzMrEwtjQ2UxLntYlYlywk kJ5YkpqdmlqQWgTTx8TBKdXAJMFkute3xjiEtWfLzhJZfbU9Ek65y+eny56ssU33676RHqQZ f0FH/MCKSgOVXauqzykdfs0ibx4u9Or45113FxjyXc+WClTdr581NUL/8IFjZ/O21f3wi1ij r3D3m+z0X1rSZu219p5stz6c6pv8/YZx5OSfgYK8j81+Pg6a9eXe3PBtlU/XJpu/7zp84dvT 6kOLSu9Ocl99KVqZ5ZHti5VM7sftt5vN9O+8EaLC/apk1+6FV34pvdhw/8CMnO36zq9zLFem Nxz9P41l8gyDiXIsrY98mQ3OGp0PXmvAtmtbnv6agHPP38xL6n+x9a2ozjHFqXn6XQvFnQ+F lhbd7vgaWLz0rf2NRDOxHK4l75RYijMSDbWYi4oTAe0rdy0hBAAA DLP-Filter: Pass X-CFilter-Loop: Reflected X-CMS-RootMailID: 20230103072834epcas1p3441ef50a6cc26ac48d184f1244b76a0e References: <20230103072807.19578-1-jaewon31.kim@samsung.com> X-Rspam-User: X-Rspamd-Server: rspam04 X-Rspamd-Queue-Id: 55A6716000D X-Stat-Signature: ozihoekug3bz1nxgbhkf5bxghb4y4ohn X-HE-Tag: 1672734012-82011 X-HE-Meta: U2FsdGVkX1/8MCIBSN60Kt8B5TG6AhAgSEadF7ihFUEJhkuNLMiqJ6IrjjfVJ51qEQZ+/X4GzM6duidPeaocwzJXXCsrxk20DqmMOwsMfyN4an1GdZPqtFDzQ7Q0b21/gkZzLvCNS9+TINl9lyewoT8uRmPYjb4xbkOj4XTlDJfhlGCEqETCdQiPWHEObpE/FSoV6g7LGpE8O40xyX4kR71LUJyvt8qGe1MIlG1tGWEdTeX2OStM8+LlqtdOx4j6MKa50BoTxrcKX9/wV0bwrZcxyoF6oavhtCNSAIJZ4YqogRPEPcyVrmQKPEIB8MuQO9oQa7oZBLxzDydHBajsPWqFeyDFTPEl71ec3eHVD3959VB8LL51yGh3Wt1eTm67kE4azWNCU7XMtdGB1MegmikSvV5f/nv4WATtEGxnUkKF6cW0G6suZ1ymj7R1iDyqTFOyiy2A6EAaGRdw7T9wwPvv6PZNRjGSrtnRKBndBe6S1QNN9WpmA+bJD9aRyr8QmMtaTIn2Jx9EzUVqR7j7Y41OxCZ0Gn7jnWd/lSfJ7WSNeWRdYrXgT9hn3Nsdm7MU7W/Bpdh1c+s2YjpX2GOyC6ir981FV5WjuqVrtTKMyvkOUipKQN7hwj4F+AZW4OIcg2aQctebBHpEn8UkunO9fByuyBXHBf0uIOba4WUcgKwp3zA3Uf+6QJD/sQsKvRGiyqOWc52uVLPaQrHQil7iO600pliFWWothTMJRhmZTPw0lIif6sRK1CDOnNXIEW7m39up4CgDJXCubbeu3Y3CVTqm6u5Tj+cAiTPYk1JOOgz6uBkMxP9nFEyufDXSFny4vmuftITbQIYsAuzAZJSqvj50HscbrsadKy8+eFCcgX0bG052FUDe4pDRXbnEeOGKjkPYeN9QExY47uuxig9zTz0xeGO7oIH4+fJbEsA3i8ewjAvgzzd+bjRu2h/QLYD8V5yVQYr2N5K0BJJYzXB bOS6k68y xb/k2khIrQCE7zGygyyO0qRQCoN4Hwb+j6y2ydVFejml8wRIPEshiVol9zkH2wqo36necoq689s2WuSbksR9lI5gmOMRJd18pnW/OabB60qKA5TKaltl5ASCUC1lH5yaJ2RlDO78RFrNc2PSqzqGpNJU6HsipJyswsRd1tWr1VCh75XN0zFoCwAtLCcsPOHVKrN2Iizpf98mcsmFWcsSgtp8RkfGZnq5mF+0HHtflrxTKunY+OyE5qvRk/Z02d1CQAcsa5yJYdZ+baxWzGsqAvMzfrg77mnIQS1AvyNm40pf3W1A= 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: >On Tue 03-01-23 16:28:07, Jaewon Kim wrote: >> The totalreserve_pages could be higher than the free because of >> watermark high or watermark boost. Handle this situation and fix it to 0 >> free size. > >What is the actual problem you are trying to address by this change? Hello As described on the original commit, 34e431b0ae39 /proc/meminfo: provide estimated available memory mm is tring to provide the avaiable memory to user space. But if free is negative, the available memory shown to userspace would be shown smaller thatn the actual available size. The userspace may do unwanted memory shrinking actions like process kills. I think the logic sholud account the positive size only. BR > >> Signed-off-by: Jaewon Kim >> --- >> mm/page_alloc.c =7C 2 ++ >> 1 file changed, 2 insertions(+) >>=20 >> diff --git a/mm/page_alloc.c b/mm/page_alloc.c >> index 218b28ee49ed..e510ae83d5f3 100644 >> --- a/mm/page_alloc.c >> +++ b/mm/page_alloc.c >> =40=40 -5948,6 +5948,8 =40=40 long si_mem_available(void) >> * without causing swapping or OOM. >> */ >> available =3D global_zone_page_state(NR_FREE_PAGES) - totalreserve_pag= es; >> + if (available < 0) >> + available =3D 0; >> =20 >> /* >> * Not all the page cache can be freed, otherwise the system will >> --=20 >> 2.17.1 > >--=20 >Michal Hocko >SUSE Labs =C2=A0=0D=0A---------=20Original=20Message=20---------=0D=0ASender=20:=20Mi= chal=20Hocko=C2=A0=0D=0ADate=20:=202023-01-03=2017:03=20= (GMT+9)=0D=0ATitle=20:=20Re:=20=5BPATCH=5D=20page_alloc:=20avoid=20the=20ne= gative=20free=20for=20meminfo=20available=0D=0A=C2=A0=0D=0AOn=20Tue=2003-01= -23=2016:28:07,=20Jaewon=20Kim=20wrote:=0D=0A>=20The=20totalreserve_pages= =20could=20be=20higher=20than=20the=20free=20because=20of=0D=0A>=20watermar= k=20high=20or=20watermark=20boost.=20Handle=20this=20situation=20and=20fix= =20it=20to=200=0D=0A>=20free=20size.=0D=0A=0D=0AWhat=20is=20the=20actual=20= problem=20you=20are=20trying=20to=20address=20by=20this=20change?=0D=0A=0D= =0A>=20Signed-off-by:=20Jaewon=20Kim=20=0D=0A>= =20---=0D=0A>=20=C2=A0mm/page_alloc.c=20=7C=202=20++=0D=0A>=20=C2=A01=20fil= e=20changed,=202=20insertions(+)=0D=0A>=20=0D=0A>=20diff=20--git=20a/mm/pag= e_alloc.c=20b/mm/page_alloc.c=0D=0A>=20index=20218b28ee49ed..e510ae83d5f3= =20100644=0D=0A>=20---=20a/mm/page_alloc.c=0D=0A>=20+++=20b/mm/page_alloc.c= =0D=0A>=20=40=40=20-5948,6=20+5948,8=20=40=40=20long=20si_mem_available(voi= d)=0D=0A>=20=C2=A0=20=C2=A0=20=C2=A0=20=C2=A0=20=C2=A0=20*=20without=20caus= ing=20swapping=20or=20OOM.=0D=0A>=20=C2=A0=20=C2=A0=20=C2=A0=20=C2=A0=20=C2= =A0=20*/=0D=0A>=20=C2=A0=20=C2=A0=20=C2=A0=20=C2=A0=20=C2=A0available=20=3D= =20global_zone_page_state(NR_FREE_PAGES)=20-=20totalreserve_pages;=0D=0A>= =20+=20=C2=A0=20=C2=A0=20=C2=A0=20=C2=A0if=20(available=20<=200)=0D=0A>=20+= =20=C2=A0=20=C2=A0=20=C2=A0=20=C2=A0=20=C2=A0=20=C2=A0=20=C2=A0=20=C2=A0ava= ilable=20=3D=200;=0D=0A>=20=C2=A0=0D=0A>=20=C2=A0=20=C2=A0=20=C2=A0=20=C2= =A0=20=C2=A0/*=0D=0A>=20=C2=A0=20=C2=A0=20=C2=A0=20=C2=A0=20=C2=A0=20*=20No= t=20all=20the=20page=20cache=20can=20be=20freed,=20otherwise=20the=20system= =20will=0D=0A>=20--=20=0D=0A>=202.17.1=0D=0A=0D=0A--=20=0D=0AMichal=20Hocko= =0D=0ASUSE=20Labs=0D=0A