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 CC43FC77B73 for ; Wed, 19 Apr 2023 07:35:02 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 2ED848E0005; Wed, 19 Apr 2023 03:35:02 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 29E178E0001; Wed, 19 Apr 2023 03:35:02 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 18CFE8E0005; Wed, 19 Apr 2023 03:35:02 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id 08EDD8E0001 for ; Wed, 19 Apr 2023 03:35:02 -0400 (EDT) Received: from smtpin30.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id D82C71A0169 for ; Wed, 19 Apr 2023 07:35:01 +0000 (UTC) X-FDA: 80697329202.30.F3166FD Received: from out30-97.freemail.mail.aliyun.com (out30-97.freemail.mail.aliyun.com [115.124.30.97]) by imf09.hostedemail.com (Postfix) with ESMTP id 1B0F0140010 for ; Wed, 19 Apr 2023 07:34:56 +0000 (UTC) Authentication-Results: imf09.hostedemail.com; dkim=none; dmarc=pass (policy=none) header.from=alibaba.com; spf=pass (imf09.hostedemail.com: domain of baolin.wang@linux.alibaba.com designates 115.124.30.97 as permitted sender) smtp.mailfrom=baolin.wang@linux.alibaba.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1681889700; 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; bh=FhCEk4guh0/go0ssmETFjw+mHOcm6XHNH4Krkzqp5EA=; b=o6tNkyZkziJT6WFI3jbfgMW5oUO2Wp67Xp06/qJg5vxz+pfov6acV5KCzDvgU/BWQfh2fP wu/iq8JkmXJ96D1g2DvfhCZpOUdvSD2L0EBKLdmz8zl/nvGBg86TcNDJWeIhV8IbXvn/jn Z//eJn/+RVrnYYBa64yPzoKcpV1ff7U= ARC-Authentication-Results: i=1; imf09.hostedemail.com; dkim=none; dmarc=pass (policy=none) header.from=alibaba.com; spf=pass (imf09.hostedemail.com: domain of baolin.wang@linux.alibaba.com designates 115.124.30.97 as permitted sender) smtp.mailfrom=baolin.wang@linux.alibaba.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1681889700; a=rsa-sha256; cv=none; b=PgxA6rMd+UtvgpwYwcn8MqW6elIHoTCSnPnFGmoztvYoBx5TD+eCb4polL/IGnXYqCIwdS Gt7Jjkf2aL/47XgHa/5iKe8tjgUMBjFFW01znaaZhnjrVmyfqnJUNuFarn6Z6SAlWsAKSk WTnmMyUpWxyBtAinJiy0/A5Dw98QQsE= X-Alimail-AntiSpam:AC=PASS;BC=-1|-1;BR=01201311R181e4;CH=green;DM=||false|;DS=||;FP=0|-1|-1|-1|0|-1|-1|-1;HT=ay29a033018046060;MF=baolin.wang@linux.alibaba.com;NM=1;PH=DS;RN=8;SR=0;TI=SMTPD_---0VgU2AEu_1681889692; Received: from 30.97.48.60(mailfrom:baolin.wang@linux.alibaba.com fp:SMTPD_---0VgU2AEu_1681889692) by smtp.aliyun-inc.com; Wed, 19 Apr 2023 15:34:53 +0800 Message-ID: Date: Wed, 19 Apr 2023 15:34:54 +0800 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.10.0 Subject: Re: [PATCH] migrate_pages_batch: fix statistics for longterm pin retry To: Huang Ying , Andrew Morton Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, Alistair Popple , David Hildenbrand , Yang Shi , Zi Yan References: <20230416235929.1040194-1-ying.huang@intel.com> From: Baolin Wang In-Reply-To: <20230416235929.1040194-1-ying.huang@intel.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Rspamd-Server: rspam05 X-Rspamd-Queue-Id: 1B0F0140010 X-Stat-Signature: popa44aqt3igk6kez76fdnwwrmqyqmyo X-Rspam-User: X-HE-Tag: 1681889696-375073 X-HE-Meta: U2FsdGVkX1+sTdlAKf48ZT7ev3a7ScvSrYtCsWpEhPljbvalRyIG0r4Hx9HdNL7smPmoO02KbAwToZCrBkkzZSs+DMU0iiEPvTwT1DGyYHh2/Q166IEDaImaw+p1xSMZeQG0YbqXtnXwpwWUp64lRPKC3CbIUO8dxCXB4wqkaHqc/d3nL4HXI/YchunjSYlOweh+Gje6Nw/nH8NdOYOBhCyl0EPHVwS/HZEnj7x/nXB8cE6AsCttDUM0INhWLJDvCUdOi2dL4IQzAg0Tklq2kYfvxi6k7h4uqSAqZoiceXpPLf2BhN8ZtYdtv06CpzKHFJSIYODwUbvJWEEozJXilJlJaVXCieNTpfRY10V0jyr9EWGJttYlBWuZqF0RMwzRCKxHY/1xP7yiT8oP3jYk3p/+Al2nbWDSI4fo+LyK7IN0FkrLSUXv3pg1yKCwk3VKuz+r9TasgE625jyP/p5VKl97TQKQbP7xwemZh2tD86TOpCEJ6UIbM0i36gvmZOcGupR57SP1zbRvgrd46p+Ra79LugFY/odlRWXC25zR/MpBYbrBdqUOKdr88SG1KVwqptz2K56Jz0k9fdAjLi7TSehGgqfwbo8b8IEXhg7tlLzvKQO0S2To1k0xXjAYB1VUWS5zlPHlKuM0dPR+fWMXlA4MWuu1hPxWL17q4CHkZXWn3LoglwgNVCx8ZPJHQBImHn8JOZLiunNxJQqqpEqcKfqNHKkqM2YwZeQzOILGDg7wxAgfPeOExfcc81Wb1Uv2SUAfu5KFmcR/x9UdQ9E5Z4BUvm3L3eM5B8Pf1ls6xXfettnYYt5Yllh6Ym+EdCXOn6AsD/L2wLCSdmixfK6Ls4dm8Mcy+Ffy7q7B4e2N2ycpiPTQww8Mfier5QbGr0ENa2hytP2J10NeDxaQU0k5wZul6EjZHmTP90hF6fs0WQM9QutqG5iDYry3ZG5E2Cgn/yMRQQN7I9n0iShlUJX qkVfzgNh ze8kDv6oudicZ+x1WNYS/0+NHuklrhXkjUgkblHzfN0skxU0m7Eh1rIbvDFNnaLoOkVU9+ZK8a6K6keN6IVIfLt0oEP/qhJrcgwhDaj6zZv5kWhi/k0dzc24F+UIN+nqHXJVPyEHRymYIhTx5BY0pu6d4dbhoreoVXJrQprpTwku4o5O6lCovIyF/djPcwtM2Mu8KUde7o7qgJu1Q+kRjLtFZ2ZGUXiFdj9IEwtMNW2sZNB0jfNUeS9iG2euCGFaGlPYrtwifpWdXh7I= 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 4/17/2023 7:59 AM, Huang Ying wrote: > In commit fd4a7ac32918 ("mm: migrate: try again if THP split is failed > due to page refcnt"), if the THP splitting fails due to page reference > count, we will retry to improve migration successful rate. But the > failed splitting is counted as migration failure and migration retry, > which will cause duplicated failure counting. So, in this patch, this > is fixed via undoing the failure counting if we decide to retry. The > patch is tested via failure injection. Makes sense to me. Thanks. Reviewed-by: Baolin Wang > Fixes: fd4a7ac32918 ("mm: migrate: try again if THP split is failed due to page refcnt") > Signed-off-by: "Huang, Ying" > Cc: Baolin Wang > Cc: Alistair Popple > Cc: David Hildenbrand > Cc: Yang Shi > Cc: Zi Yan > --- > mm/migrate.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/mm/migrate.c b/mm/migrate.c > index b34a0f383795..47a1e8445f45 100644 > --- a/mm/migrate.c > +++ b/mm/migrate.c > @@ -1743,6 +1743,9 @@ static int migrate_pages_batch(struct list_head *from, new_page_t get_new_page, > large_retry++; > thp_retry += is_thp; > nr_retry_pages += nr_pages; > + /* Undo duplicated failure counting. */ > + nr_large_failed--; > + stats->nr_thp_failed -= is_thp; > break; > } > }