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 5CE63E95A67 for ; Sun, 8 Oct 2023 07:54:56 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id BB6136B027A; Sun, 8 Oct 2023 03:54:55 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id B64F96B027D; Sun, 8 Oct 2023 03:54:55 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id A53C16B027F; Sun, 8 Oct 2023 03:54:55 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 961766B027A for ; Sun, 8 Oct 2023 03:54:55 -0400 (EDT) Received: from smtpin23.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 5F6FC4012A for ; Sun, 8 Oct 2023 07:54:55 +0000 (UTC) X-FDA: 81321532950.23.3C51DCB Received: from mail-lf1-f41.google.com (mail-lf1-f41.google.com [209.85.167.41]) by imf08.hostedemail.com (Postfix) with ESMTP id 81EEA16000C for ; Sun, 8 Oct 2023 07:54:53 +0000 (UTC) Authentication-Results: imf08.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=jN8C3yXq; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf08.hostedemail.com: domain of huangzhaoyang@gmail.com designates 209.85.167.41 as permitted sender) smtp.mailfrom=huangzhaoyang@gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1696751693; 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=5ybWsiM5qmAMlRSNxHIcO5FISDf2R/6M1HLZgzc2OyE=; b=CFWZmBJOiIp0mDpjxjs489RP/B84yA3jbgbU1hyLb4asPE8V56Pzw00mB88HuDTbDT+tQu 1miQd0tGCTooMGDgeqc8Sx2ygmicP03xdAaCBns2P4xHp+aZGJC5RdazW3PWCwOV3METtz pFcfEc3s/yAylKYUS2KLDWjM3MoModk= ARC-Authentication-Results: i=1; imf08.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=jN8C3yXq; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf08.hostedemail.com: domain of huangzhaoyang@gmail.com designates 209.85.167.41 as permitted sender) smtp.mailfrom=huangzhaoyang@gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1696751693; a=rsa-sha256; cv=none; b=irp5bZ282UsgmZR/MN/dnqwIByq4SJmN/PljNFHh3kgM82Dm4zKGrUqLK3ovJOwjwe9OBR UBDih81tDMYeO9YuT3wIJFvtg0QI0DzQluehdzcV43QjcSHafcQKZIav7Sdh4nG2nXCw1g vO/jTtt5puTghPSePg8+j6BQjRr4F60= Received: by mail-lf1-f41.google.com with SMTP id 2adb3069b0e04-50325ce89e9so4571458e87.0 for ; Sun, 08 Oct 2023 00:54:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1696751692; x=1697356492; darn=kvack.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=5ybWsiM5qmAMlRSNxHIcO5FISDf2R/6M1HLZgzc2OyE=; b=jN8C3yXq7GU4xfzNoRd8NgEvWYKv2K2++3KaLnFX/sQ9LDfhmKfHgPWiSoe8XyYoeT fCQyGZzlWSRxnM+3sVuBkGLQQuxlwGnzSWIyt9PnvBFAEM8b2a87xydOCPB9ni6zsYgi hUTYr6cfZ+FVllVwBpRbsrrg/NQUE+GQg/ITmebBtjnZTbLJY6AFASAFxb2HcK1yGIDD 41zNd6dEGLorS2Q5YUaHkGzjv/tD8y8mJKtwpZnmvuDwDKEUvCZFfGrByxlsR2tJnoFG W2yzrQcdlrLgSuE98JOuS5kNrwE4T6a5Rm9F3mbaewlxMeuvMslFd1lk+HDBIWhdq2d0 hSfg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1696751692; x=1697356492; 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=5ybWsiM5qmAMlRSNxHIcO5FISDf2R/6M1HLZgzc2OyE=; b=pxowMvAdhPZQHaV0sYFO3dbrZzj41a5mUs/7hTno+BSc1pk1cS4O+cgeBmVpzNUe/Z 0stWDjVQOmgU6XVkIfiZGpZEMvoMZNkOf2KAQJuZ5tjkj3RHRJV9+S+bMUMa82HpMrP1 cZrOZiQ/AuBxOe4oZfVWueBuFR1ptNgOhyV9NdxurfHkPHh6J+8mVjCtuTcKVubXa2ff w/92tKb707MoKLZ1ydDWtg16Ya9VC1wPDkLKQglUS8VB8y7lCnQ4tPMYWCJtcNKnTBxc PP4HV9nFQZl333VMhg5pSIrySIxgQ+fpshFoGHtvDr20t7SXLZzIhj3/qE/ZuSXC0CmK PM6w== X-Gm-Message-State: AOJu0YyThxgtIRrFOfjeF7+YfJBoGqxGy9HqxCeASGRx6czov5YRCK2z 3mzVpG+doc+bJoQE4q4J6CvQqP93zePtpdk7dMo= X-Google-Smtp-Source: AGHT+IGNR8sIJlB9RCF0cke5x1PU3N5B7/RWqbeLc8Qyhvm94pVpvPikAAdUJKHkueru8PVKUROHwgMnJ500go+UHVM= X-Received: by 2002:ac2:4f0f:0:b0:504:3c1f:cbd9 with SMTP id k15-20020ac24f0f000000b005043c1fcbd9mr11832829lfr.16.1696751691419; Sun, 08 Oct 2023 00:54:51 -0700 (PDT) MIME-Version: 1.0 References: <1683782550-25799-1-git-send-email-zhaoyang.huang@unisoc.com> <20231006141750.5423083520f74bc0746fd249@linux-foundation.org> In-Reply-To: <20231006141750.5423083520f74bc0746fd249@linux-foundation.org> From: Zhaoyang Huang Date: Sun, 8 Oct 2023 15:54:40 +0800 Message-ID: Subject: Re: [PATCHv5] mm: optimization on page allocation when CMA enabled To: Andrew Morton Cc: "zhaoyang.huang" , Roman Gushchin , Minchan Kim , Roman Gushchin , Joonsoo Kim , linux-mm@kvack.org, linux-kernel@vger.kernel.org, ke.wang@unisoc.com Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspam-User: X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: 81EEA16000C X-Stat-Signature: bekf1o9ud1x1oxnkjnmtwu9obdat9orb X-HE-Tag: 1696751693-320345 X-HE-Meta: U2FsdGVkX1+SZoNq3UM5sZGIfYDz0bG4g0TIB1oh5DIpA3gbEGG6yN14TkSAVuKoFo6lpCCx3fz3Xb3r19FPo5sjPPh1UP8lI1etruyF45HS0xQwbD3c/QSfabI3/tq1+q5W7McDj44z4wNj5u+J9No8CHKkCdJxqpln5DSzZ0zlyzg0kAKzO3PipVCmDSokz+O3hg06ehoKWzeMBZQ5tuJQj1aep0KHZ2SWlcMFvUVaEGnO4Axup5guFIBUanRLk+gl8s2gt8q/poHsD/rt/MnOjOAHT0rPXNoqssQOJLVTTxGUktlDZ0Sf8hx0dZfonAS6ZlnmH8JmFCXvcJct85/oxu8Ym8KtU22BSw0/23D+Z14YiTqwQW+z/FsaWkWRsGqmborIjHkD7OrPnFLDITyzdOMYqzerCDbhWpqhdFZIqRulBKukM9HlWRY9ztYRvxr7nsfLXAHnknS8FpXkWgZ42Rirps5l0KQHZhQBPRljX6zZSZWLnYA7xkiBMc+DLgz3bQ48XWv4fGiqjoSP1gPmEDj+k4zE5wC9nUbPpHmcnbKnXerQGS7gjni+wKK2h01DizLyq90OkkxOFYQBjVwbzwl+2me5r5IkRGlJjtFjTRcLj+jjAxLgXxZbeSx9HDCzXmjpZfb31GODH5fMB3nplMMyFDveoc5H3eRDEk7MOGsLEJyyJfLbePzjlEkKH3oUm2EIeT5WWXEd0kyeegdcJ+wfQ5r+IDotOAZXu4Co1RYObVdsZYQhLED69qE5JFQFcwExSvCrslNzW51cBOmyfHB+1jwsYjB6wyGIcw11EQ6FtFTVVSswr00o3Et/GNVnbj3VCQ5Ew7tHBOv1U2U5SDPY+cqDZ4v4yhqS5hvfJDnM/NXf2ACLMtF1c67UX4a6bjREyJY+R90fjAYzbwoaT4tCr/UEt2mxJWs8i2Umgo2GWVQkPYY5DVhKolPej6wl7TWYwi+Z7kpzvgn nACI7fB7 DjlU8emGjzluAQO8K4PEZizVxXiV1jpdPKKuGkC9YhsJaD9A3xAqyh/53EJEJzdREHJRqMhfVGmOK42vYn2Ox3SzA26EWa847Zqxv1Cz+wV9xsTXtQthERyJ2j24OsK9qpfSutAvzO1BIWTeY0r0z2kE5qw17E1tzI7aXHaE8mZG5LSQqTSCuFu8FGl9sgfHQWYRW3uiq6Q7oyMM/Xn63/0QT4RZFjk3vxRsAe+HedXwL7LMwyaLIY299Z+eEdGPcNu8gDN4CrcE1z1DLKmrRGayqEAPAXeDFvdcX26dUnL4J3gIgGOSq9sj4Y0/JBjsThQldtOs6lfEI61RIBHSi/+1xs68OST8Mc9ylDex0RnwHFe35QKBHvQx4EDUtDIxe577AGQqH/nLm97j/pgmRSGgj014N5ESyUwv0loY4UNB/D/pu+kzpZY9m9qGVucAMMldX09a+R8ioizDZkC358/RRag== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000037, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On Sat, Oct 7, 2023 at 5:17=E2=80=AFAM Andrew Morton wrote: > > On Thu, 11 May 2023 13:22:30 +0800 "zhaoyang.huang" wrote: > > > From: Zhaoyang Huang > > > > Let us look at the timeline of scenarios below with WMARK_LOW=3D25MB WM= ARK_MIN=3D5MB > > (managed pages 1.9GB). We can find that CMA begin to be used until 'C' = under the > > method of 'fixed 2 times of free cma over free pages' which could have = the > > scenario 'A' and 'B' into a fault state, that is, free UNMOVABLE & RECL= AIMABLE > > pages is lower than corresponding watermark without reclaiming which sh= ould be > > deemed as against current memory policy. This commit try to solve this = by > > checking zone_watermark_ok again with removing CMA pages which could le= ad to a > > proper time point of CMA's utilization. > > > > -- Free_pages > > | > > | > > -- WMARK_LOW > > | > > -- Free_CMA > > | > > | > > -- > > > > Free_CMA/Free_pages(MB) A(12/30) --> B(12/25) --> C(12/20) > > fixed 1/2 ratio N N Y > > this commit Y Y Y > > > > Roman previously asked > > : Also I'm a bit concerned about potential performance implications. > : Would be great to provide some benchmarks or some data. Probably it's > : ok because of we have pcp caches on top, but I'm not 100% sure. > > Are you able to perform such testing and tell us the result? I have applied this patch in a v5.4 based ANDROID system and got no regression problem. Actually, this commit is aimed to have alloc_pages(GFP_USER) use CMA instead of stealing U&R(could lead to GFP_KERNEL fail) only when zone's free pages and free cma are around WATERMARK_LOW/MIN which would NOT affect most scenarios. > > Thanks. >