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 ECC48C6FD1F for ; Wed, 22 Mar 2023 08:59:15 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 6B1BB6B0075; Wed, 22 Mar 2023 04:59:15 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 63A666B0078; Wed, 22 Mar 2023 04:59:15 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 4DDB06B007B; Wed, 22 Mar 2023 04:59:15 -0400 (EDT) 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 389966B0075 for ; Wed, 22 Mar 2023 04:59:15 -0400 (EDT) Received: from smtpin12.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id 0A7AE1403BC for ; Wed, 22 Mar 2023 08:59:15 +0000 (UTC) X-FDA: 80595935070.12.BCA3957 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by imf14.hostedemail.com (Postfix) with ESMTP id DCD1E100005 for ; Wed, 22 Mar 2023 08:59:12 +0000 (UTC) Authentication-Results: imf14.hostedemail.com; dkim=none; spf=pass (imf14.hostedemail.com: domain of ryan.roberts@arm.com designates 217.140.110.172 as permitted sender) smtp.mailfrom=ryan.roberts@arm.com; dmarc=pass (policy=none) header.from=arm.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1679475553; a=rsa-sha256; cv=none; b=GHQlTlrZ+mIvh6Rjpq4n1EL8DLPITGRdF6Py5v74J8ggVZ/5v+txX2BMOgUugWNvrhpe3s Ek9o2h2vV8HvbDhNnN3ZlQDY4zVtWVEL4iaZdaU9tf3Cc4Afh5zmuw3KuoLouzhUe3LBq+ 9erEWS/WFKiwueJhtGcEwpYp4V02yFo= ARC-Authentication-Results: i=1; imf14.hostedemail.com; dkim=none; spf=pass (imf14.hostedemail.com: domain of ryan.roberts@arm.com designates 217.140.110.172 as permitted sender) smtp.mailfrom=ryan.roberts@arm.com; dmarc=pass (policy=none) header.from=arm.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1679475553; 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=VK7D5zvRe3oKg6cZCBJdJTnb78XMoaJf35Qplg98OxM=; b=y6g5yqnfJgOEDzPDoj9eVh9q/Bphh+jcwOSYbmcAMWbiTXZJPeISZ1NuWW+Q4telxs5hST G1AzyspYj+YQ/wXi4Qz9htAmEKZ7ZVGHhLc2jVXH7af25+HNpQjLB0WYRxZKpu+CHfZiUx SLu8KMJg+P42g9nSxadv0IAgH3po8hY= Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id D02B64B3; Wed, 22 Mar 2023 01:59:55 -0700 (PDT) Received: from [10.57.65.162] (unknown [10.57.65.162]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id F2D8F3F6C4; Wed, 22 Mar 2023 01:59:10 -0700 (PDT) Message-ID: Date: Wed, 22 Mar 2023 08:59:07 +0000 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.9.0 Subject: Re: [RFC PATCH 6/6] WORKAROUND: Don't split large folios on madvise Content-Language: en-US To: Yin Fengwei , Andrew Morton , "Matthew Wilcox (Oracle)" , Yu Zhao Cc: linux-mm@kvack.org, linux-arm-kernel@lists.infradead.org References: <20230317105802.2634004-1-ryan.roberts@arm.com> <20230317105802.2634004-7-ryan.roberts@arm.com> <2fd42826-9399-46a9-6d21-7e8b011fca18@intel.com> From: Ryan Roberts In-Reply-To: <2fd42826-9399-46a9-6d21-7e8b011fca18@intel.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspam-User: X-Rspamd-Queue-Id: DCD1E100005 X-Rspamd-Server: rspam01 X-Stat-Signature: hzsnacruuxtihoubu6cppc9bcih4tzet X-HE-Tag: 1679475552-445466 X-HE-Meta: U2FsdGVkX19XfFbYCzt82/aadfT7NeOkY5Mrt/yk2Xv1wOBkx8ie0U+aeWOz5kZKt8zAPzhN6DWYZn4JS5qW7R9m/FmWYw+VbMDIEi1Ll8EEl2G2HpP+gsKNF6YtR5WhXgB1EEboDAnEh8kFpzmGHQkzpCeCnhxnMTe7yLDAC7LoHr8WyIDuC0hKIJfTf66oM/SPjAfUSfIuf4pmXZr3qbV7tMmVG4+lyr0ke1qAyupdYFzm1m2qFhpa7R+PtpCIfQma2x+xUVsaSnEJDxyW/C8AOgrz8LwQ8mOlmVtbZE2e80YsqamKiGJSnrN4vOyk0DjtBLwElCbAI+jymjC8gxCtoOJrYCHinWg6MGbHJgjNHV54cM3B8eVjmzBu8jw8ezlCbl7IDFsB1yDTbUXggMzSBzoVsiXkcMaX5JtDqQ5an+F2tMmnitkHAW1M97cfEps444/PB1JAscrVWk+e3fuH768cg9T6m0fycBSAJZv4vQ/IQVUSt+3OrAa8OuVDOeOc4FUoLQ1n5aIfh9gpMlzngW1gPBFiSLjmmuVuiXF/9Do0wcneAg5ZmugGFTKF0vD0y/M1WVRrY4504rfsVSW89SwEbM1iXsWTHaykpvazqHuz4676ys5QsPufG8sd2dyXHsYRcR7muDgFxO+Rinmg/L3J+CZMMzCG1WbCBC3EQpv5JdXCEOCW06bDHigGywNG9HBFIY3x3Q5qz+lYFRuwEbM+cYyl6VgzOuUSjgdM0fAusCXVol/hItRpQNQGQ57jtRMyGDvr0NVGEdt28CX0OYz9vvTng1+KAJsG8y83+r5S8P1r2qYBqO8FqA5o4D7g4KnT5RkCIbZsa4lGnjZ+Am75oq+RANbTm+wySJhVYcaFyWafBZ9oqhTXf9H1Gu9nNzwjxlj3uUyiPOP1hnlHT+6JsWzN51ZPs/B+qBppJecM+EV4Ogm8yRNdSxR8Ax6vRL4ov4eQu+MYhOr GZQHEJtX A40iUYblbcPzZbmMX/qayWsFxz7En4EIHEP0aaGIMmLlUzb8qkK6Ri5rBgQCxDVBSMSewPEnNhv79rrozRQ+gWGASChTvA35hNirxyAlKq6xovgujaibyeM9/fyyD8KVAfAvn/u4WK6v3EOyG5UGYe0xEJsxc/Yq8Via8DBJfJDlDhVVcKocaK+QbGw== 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 22/03/2023 08:19, Yin Fengwei wrote: > On 3/17/23 18:58, Ryan Roberts wrote: >> Signed-off-by: Ryan Roberts >> --- >>   mm/madvise.c | 8 ++++++++ >>   1 file changed, 8 insertions(+) >> >> diff --git a/mm/madvise.c b/mm/madvise.c >> index 340125d08c03..8fb84da744e1 100644 >> --- a/mm/madvise.c >> +++ b/mm/madvise.c >> @@ -447,6 +447,7 @@ static int madvise_cold_or_pageout_pte_range(pmd_t *pmd, >>            * are sure it's worth. Split it if we are only owner. >>            */ >>           if (folio_test_large(folio)) { >> +#if 0 >>               if (folio_mapcount(folio) != 1) >>                   break; >>               if (pageout_anon_only_filter && !folio_test_anon(folio)) >> @@ -469,6 +470,9 @@ static int madvise_cold_or_pageout_pte_range(pmd_t *pmd, >>               pte--; >>               addr -= PAGE_SIZE; >>               continue; >> +#else >> +            break; >> +#endif >>           } >> >>           /* >> @@ -664,6 +668,7 @@ static int madvise_free_pte_range(pmd_t *pmd, unsigned >> long addr, >>            * deactivate all pages. >>            */ >>           if (folio_test_large(folio)) { >> +#if 0 >>               if (folio_mapcount(folio) != 1) >>                   goto out; >>               folio_get(folio); >> @@ -684,6 +689,9 @@ static int madvise_free_pte_range(pmd_t *pmd, unsigned >> long addr, >>               pte--; >>               addr -= PAGE_SIZE; >>               continue; >> +#else >> +            goto out; >> +#endif >>           } > From this workaround change, you hit an case that large folio has > 1 as folio_mapcount()? Can you share the kernel crash log to me? Thanks. Yes I do. I'm not sure why the mapcount is decreasing. I thought perhaps it could be due to CoW or explicit munmap, or something like that. I've been trying to find the reason that the mapcount is being reduced by using the page_ref tracepoints, but its proving difficult. The crash logs are somewhat random. But I'll send some to you separately. Thanks for taking a look! > > > Regards > Yin, Fengwei > >> >>           if (folio_test_swapcache(folio) || folio_test_dirty(folio)) { >> -- >> 2.25.1 >> > 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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id CE673C6FD1C for ; Wed, 22 Mar 2023 09:00:16 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:In-Reply-To:From:References:Cc:To: Subject:MIME-Version:Date:Message-ID:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=uwm3op5M5oBDJPugHmS/NlE7CQh5/zwaZbJSdB3r5Lo=; b=y4eJKVrmzFZV8Q 83OMGfld8zmTUHkfaC4Nw20AkIo+m4FJOmU17HVBHbKvh8vThRRw7EajmnM6h/XHccbITZuAJ2wii bd6t+jpVlWEQOkgTBURKwjDDRRK4bvXqqSRXp3kSAoQoOjSOjr6ItC3ASsalYrkMU1t3VG9QZyUfX GG63XRFRkE1BTArd96G+ckxYwFY0t4RHYmKvKtDCfDlfB5b3wHlJY4VjaT7fBKMpvxgSIYIOXvZ5e mr7GACrHfa5E5Ct2oO0671tQhNO8TTySDxdrXIip3xpxHGEsAtlxY3JLXjwL8TGAMO/qXIGIXtSr/ A+yXuPkombK8+V7/iBUg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1peuJT-00FGrz-0x; Wed, 22 Mar 2023 08:59:19 +0000 Received: from foss.arm.com ([217.140.110.172]) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1peuJQ-00FGqx-1G for linux-arm-kernel@lists.infradead.org; Wed, 22 Mar 2023 08:59:18 +0000 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id D02B64B3; Wed, 22 Mar 2023 01:59:55 -0700 (PDT) Received: from [10.57.65.162] (unknown [10.57.65.162]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id F2D8F3F6C4; Wed, 22 Mar 2023 01:59:10 -0700 (PDT) Message-ID: Date: Wed, 22 Mar 2023 08:59:07 +0000 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.9.0 Subject: Re: [RFC PATCH 6/6] WORKAROUND: Don't split large folios on madvise Content-Language: en-US To: Yin Fengwei , Andrew Morton , "Matthew Wilcox (Oracle)" , Yu Zhao Cc: linux-mm@kvack.org, linux-arm-kernel@lists.infradead.org References: <20230317105802.2634004-1-ryan.roberts@arm.com> <20230317105802.2634004-7-ryan.roberts@arm.com> <2fd42826-9399-46a9-6d21-7e8b011fca18@intel.com> From: Ryan Roberts In-Reply-To: <2fd42826-9399-46a9-6d21-7e8b011fca18@intel.com> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20230322_015916_499616_552493FF X-CRM114-Status: GOOD ( 16.97 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org T24gMjIvMDMvMjAyMyAwODoxOSwgWWluIEZlbmd3ZWkgd3JvdGU6Cj4gT24gMy8xNy8yMyAxODo1 OCwgUnlhbiBSb2JlcnRzIHdyb3RlOgo+PiBTaWduZWQtb2ZmLWJ5OiBSeWFuIFJvYmVydHMgPHJ5 YW4ucm9iZXJ0c0Bhcm0uY29tPgo+PiAtLS0KPj4gwqAgbW0vbWFkdmlzZS5jIHwgOCArKysrKysr Kwo+PiDCoCAxIGZpbGUgY2hhbmdlZCwgOCBpbnNlcnRpb25zKCspCj4+Cj4+IGRpZmYgLS1naXQg YS9tbS9tYWR2aXNlLmMgYi9tbS9tYWR2aXNlLmMKPj4gaW5kZXggMzQwMTI1ZDA4YzAzLi44ZmI4 NGRhNzQ0ZTEgMTAwNjQ0Cj4+IC0tLSBhL21tL21hZHZpc2UuYwo+PiArKysgYi9tbS9tYWR2aXNl LmMKPj4gQEAgLTQ0Nyw2ICs0NDcsNyBAQCBzdGF0aWMgaW50IG1hZHZpc2VfY29sZF9vcl9wYWdl b3V0X3B0ZV9yYW5nZShwbWRfdCAqcG1kLAo+PiDCoMKgwqDCoMKgwqDCoMKgwqDCoCAqIGFyZSBz dXJlIGl0J3Mgd29ydGguIFNwbGl0IGl0IGlmIHdlIGFyZSBvbmx5IG93bmVyLgo+PiDCoMKgwqDC oMKgwqDCoMKgwqDCoCAqLwo+PiDCoMKgwqDCoMKgwqDCoMKgwqAgaWYgKGZvbGlvX3Rlc3RfbGFy Z2UoZm9saW8pKSB7Cj4+ICsjaWYgMAo+PiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBpZiAo Zm9saW9fbWFwY291bnQoZm9saW8pICE9IDEpCj4+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqAgYnJlYWs7Cj4+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGlmIChwYWdlb3V0 X2Fub25fb25seV9maWx0ZXIgJiYgIWZvbGlvX3Rlc3RfYW5vbihmb2xpbykpCj4+IEBAIC00Njks NiArNDcwLDkgQEAgc3RhdGljIGludCBtYWR2aXNlX2NvbGRfb3JfcGFnZW91dF9wdGVfcmFuZ2Uo cG1kX3QgKnBtZCwKPj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgcHRlLS07Cj4+IMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgIGFkZHIgLT0gUEFHRV9TSVpFOwo+PiDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCBjb250aW51ZTsKPj4gKyNlbHNlCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDC oMKgIGJyZWFrOwo+PiArI2VuZGlmCj4+IMKgwqDCoMKgwqDCoMKgwqDCoCB9Cj4+Cj4+IMKgwqDC oMKgwqDCoMKgwqDCoCAvKgo+PiBAQCAtNjY0LDYgKzY2OCw3IEBAIHN0YXRpYyBpbnQgbWFkdmlz ZV9mcmVlX3B0ZV9yYW5nZShwbWRfdCAqcG1kLCB1bnNpZ25lZAo+PiBsb25nIGFkZHIsCj4+IMKg wqDCoMKgwqDCoMKgwqDCoMKgICogZGVhY3RpdmF0ZSBhbGwgcGFnZXMuCj4+IMKgwqDCoMKgwqDC oMKgwqDCoMKgICovCj4+IMKgwqDCoMKgwqDCoMKgwqDCoCBpZiAoZm9saW9fdGVzdF9sYXJnZShm b2xpbykpIHsKPj4gKyNpZiAwCj4+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGlmIChmb2xp b19tYXBjb3VudChmb2xpbykgIT0gMSkKPj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCBnb3RvIG91dDsKPj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgZm9saW9fZ2V0KGZv bGlvKTsKPj4gQEAgLTY4NCw2ICs2ODksOSBAQCBzdGF0aWMgaW50IG1hZHZpc2VfZnJlZV9wdGVf cmFuZ2UocG1kX3QgKnBtZCwgdW5zaWduZWQKPj4gbG9uZyBhZGRyLAo+PiDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCBwdGUtLTsKPj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgYWRkciAt PSBQQUdFX1NJWkU7Cj4+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGNvbnRpbnVlOwo+PiAr I2Vsc2UKPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgZ290byBvdXQ7Cj4+ICsjZW5kaWYKPj4g wqDCoMKgwqDCoMKgwqDCoMKgIH0KPiBGcm9tIHRoaXMgd29ya2Fyb3VuZCBjaGFuZ2UsIHlvdSBo aXQgYW4gY2FzZSB0aGF0IGxhcmdlIGZvbGlvIGhhcwo+IDEgYXMgZm9saW9fbWFwY291bnQoKT8g Q2FuIHlvdSBzaGFyZSB0aGUga2VybmVsIGNyYXNoIGxvZyB0byBtZT8gVGhhbmtzLgoKWWVzIEkg ZG8uIEknbSBub3Qgc3VyZSB3aHkgdGhlIG1hcGNvdW50IGlzIGRlY3JlYXNpbmcuIEkgdGhvdWdo dCBwZXJoYXBzIGl0CmNvdWxkIGJlIGR1ZSB0byBDb1cgb3IgZXhwbGljaXQgbXVubWFwLCBvciBz b21ldGhpbmcgbGlrZSB0aGF0LiBJJ3ZlIGJlZW4gdHJ5aW5nCnRvIGZpbmQgdGhlIHJlYXNvbiB0 aGF0IHRoZSBtYXBjb3VudCBpcyBiZWluZyByZWR1Y2VkIGJ5IHVzaW5nIHRoZSBwYWdlX3JlZgp0 cmFjZXBvaW50cywgYnV0IGl0cyBwcm92aW5nIGRpZmZpY3VsdC4KClRoZSBjcmFzaCBsb2dzIGFy ZSBzb21ld2hhdCByYW5kb20uIEJ1dCBJJ2xsIHNlbmQgc29tZSB0byB5b3Ugc2VwYXJhdGVseS4K ClRoYW5rcyBmb3IgdGFraW5nIGEgbG9vayEKCj4gCj4gCj4gUmVnYXJkcwo+IFlpbiwgRmVuZ3dl aQo+IAo+Pgo+PiDCoMKgwqDCoMKgwqDCoMKgwqAgaWYgKGZvbGlvX3Rlc3Rfc3dhcGNhY2hlKGZv bGlvKSB8fCBmb2xpb190ZXN0X2RpcnR5KGZvbGlvKSkgewo+PiAtLSAKPj4gMi4yNS4xCj4+Cj4g CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KbGludXgt YXJtLWtlcm5lbCBtYWlsaW5nIGxpc3QKbGludXgtYXJtLWtlcm5lbEBsaXN0cy5pbmZyYWRlYWQu b3JnCmh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8vbGludXgtYXJt LWtlcm5lbAo=