All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ryan Roberts <ryan.roberts@arm.com>
To: Aishwarya TCV <aishwarya.tcv@arm.com>, Zi Yan <ziy@nvidia.com>,
	"Pankaj Raghav (Samsung)" <kernel@pankajraghav.com>,
	linux-mm@kvack.org
Cc: "Matthew Wilcox (Oracle)" <willy@infradead.org>,
	"David Hildenbrand" <david@redhat.com>,
	"Yang Shi" <shy828301@gmail.com>, "Yu Zhao" <yuzhao@google.com>,
	"Kirill A . Shutemov" <kirill.shutemov@linux.intel.com>,
	"Michal Koutný" <mkoutny@suse.com>,
	"Roman Gushchin" <roman.gushchin@linux.dev>,
	"Zach O'Keefe" <zokeefe@google.com>,
	"Hugh Dickins" <hughd@google.com>,
	"Luis Chamberlain" <mcgrof@kernel.org>,
	"Andrew Morton" <akpm@linux-foundation.org>,
	linux-kernel@vger.kernel.org, cgroups@vger.kernel.org,
	linux-fsdevel@vger.kernel.org, linux-kselftest@vger.kernel.org,
	"Mark Brown" <broonie@kernel.org>
Subject: Re: [PATCH v5 8/8] mm: huge_memory: enable debugfs to split huge pages to any order.
Date: Fri, 1 Mar 2024 10:33:15 +0000	[thread overview]
Message-ID: <0dab0c69-2eac-4e65-9efe-e0b037499abc@arm.com> (raw)
In-Reply-To: <082e48c8-71b7-4937-a5da-7a37b4be16ba@arm.com>

On 01/03/2024 09:51, Aishwarya TCV wrote:
> 
> 
> On 26/02/2024 20:55, Zi Yan wrote:
>> From: Zi Yan <ziy@nvidia.com>
>>
>> It is used to test split_huge_page_to_list_to_order for pagecache THPs.
>> Also add test cases for split_huge_page_to_list_to_order via both
>> debugfs.
>>
>> Signed-off-by: Zi Yan <ziy@nvidia.com>
>> ---
>>  mm/huge_memory.c                              |  34 ++++--
>>  .../selftests/mm/split_huge_page_test.c       | 115 +++++++++++++++++-
>>  2 files changed, 131 insertions(+), 18 deletions(-)
>>
> 
> Hi Zi,
> 
> When booting the kernel against next-master(20240228)with Arm64 on
> Marvell Thunder X2 (TX2), the kselftest-mm test 'split_huge_page_test'
> is failing in our CI (with rootfs over NFS). I can send the full logs if
> required.

Just to add, I took a quick eyeball and I think there a couple of potential issues:

  - In create_pagecache_thp_and_fd() you do *fd = open(testfile, O_CREAT ...);
    where testfile is /mnt/thp_fs/testfile. So if /mnt/thp_fs doesn't exist,
    then the open will fail I think? I'm pretty sure that's what's happening on
    our CI. Suggest the test needs to setup this dir itself. Is thp_fs a mounted
    fs or just a dir? If the latter can you just mktemp()?

  - Later in create_pagecache_thp_and_fd() you fail the test if you don't have a
    filesystem that supports large folios. Can we turn that into a skip? That
    would reduce noise on the CI.

Thanks,
Ryan

> 
> A bisect (full log below) identified this patch as introducing the
> failure. Bisected it on the tag "next-20240228" at repo
> "https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git".
> 
> This works fine on  Linux version 6.8.0-rc6
> 
> 
> Sample log from failure against run on TX2:
> ------
> 07:17:34.056125  # # ------------------------------
> 07:17:34.056543  # # running ./split_huge_page_test
> 07:17:34.056839  # # ------------------------------
> 07:17:34.057114  # # TAP version 13
> 07:17:34.058564  # # 1..12
> 07:17:34.156822  # # ok 1 Split huge pages successful
> 07:17:34.214074  # # ok 2 Split PTE-mapped huge pages successful
> 07:17:34.215630  # # # Please enable pr_debug in
> split_huge_pages_in_file() for more info.
> 07:17:34.225503  # # # Please check dmesg for more information
> 07:17:34.225862  # # ok 3 File-backed THP split test done
> 07:17:34.236944  # # Bail out! Failed to create a file at /mnt/thp_fs#
> Planned tests != run tests (12 != 3)
> 07:17:34.237307  # # # Totals: pass:3 fail:0 xfail:0 xpass:0 skip:0 error:0
> 07:17:34.237620  # # [FAIL]
> 07:17:34.246430  # not ok 51 split_huge_page_test # exit=1
> 
> 
> Bisect log:
> ------
> git bisect start
> # good: [d206a76d7d2726f3b096037f2079ce0bd3ba329b] Linux 6.8-rc6
> git bisect good d206a76d7d2726f3b096037f2079ce0bd3ba329b
> # bad: [20af1ca418d2c0b11bc2a1fe8c0c88f67bcc2a7e] Add linux-next
> specific files for 20240228
> git bisect bad 20af1ca418d2c0b11bc2a1fe8c0c88f67bcc2a7e
> # bad: [1322f1801e59dddce10591d602d246c1bf49990c] Merge branch 'main' of
> git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next.git
> git bisect bad 1322f1801e59dddce10591d602d246c1bf49990c
> # bad: [a82f70041487790b7b09fe4bb45436e1b57021d3] Merge branch 'dev' of
> git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4.git
> git bisect bad a82f70041487790b7b09fe4bb45436e1b57021d3
> # bad: [ce90480b9352ba2bebe8946dad9223e3f24c6e9a] Merge branch
> 'for-next' of
> git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap.git
> git bisect bad ce90480b9352ba2bebe8946dad9223e3f24c6e9a
> # bad: [5daac92ed3881fd0c656478a301a4e1d124100ee] Merge branch
> 'mm-everything' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm
> git bisect bad 5daac92ed3881fd0c656478a301a4e1d124100ee
> # good: [acc2643d9e988c63dd4629a9af380ad9ac69c54a] Merge branch
> 'mm-stable' into mm-unstable
> git bisect good acc2643d9e988c63dd4629a9af380ad9ac69c54a
> # good: [0294de8fe7d7c1a7eddc979cbf4c1886406e36b7] Merge branch 'fixes'
> of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply.git
> git bisect good 0294de8fe7d7c1a7eddc979cbf4c1886406e36b7
> # good: [83e0c8f0e777a1ef0977b2f8189101765703b32d] Merge branch
> 'mm-nonmm-stable' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm
> git bisect good 83e0c8f0e777a1ef0977b2f8189101765703b32d
> # good: [a739cbe236e0dd3b6ff26a01fa1d31c73d4fac93] mm: memcg: make memcg
> huge page split support any order split
> git bisect good a739cbe236e0dd3b6ff26a01fa1d31c73d4fac93
> # bad: [efb520aa333b2f11daaaaa13f4a598b5ae4ae823] mm: allow non-hugetlb
> large folios to be batch processed
> git bisect bad efb520aa333b2f11daaaaa13f4a598b5ae4ae823
> # bad: [2258bdebb55e3ad3d30fd3849ddb955ff36825de] mm/zsmalloc: don't
> hold locks of all pages when free_zspage()
> git bisect bad 2258bdebb55e3ad3d30fd3849ddb955ff36825de
> # bad: [7fc0be45acf2878cbacc4dba56923c34c3fd8b1e] mm: remove
> total_mapcount()
> git bisect bad 7fc0be45acf2878cbacc4dba56923c34c3fd8b1e
> # good: [d55fac55da2f87ad5a99178e107df09770bbc411] mm: thp: split huge
> page to any lower order pages
> git bisect good d55fac55da2f87ad5a99178e107df09770bbc411
> # bad: [4050d591c1aaf9336c08511fa5984827186e9ad1] mm/memfd: refactor
> memfd_tag_pins() and memfd_wait_for_pins()
> git bisect bad 4050d591c1aaf9336c08511fa5984827186e9ad1
> # bad: [c0ba89c29ef559c95273feb481b049f622c43c17] mm: huge_memory:
> enable debugfs to split huge pages to any order
> git bisect bad c0ba89c29ef559c95273feb481b049f622c43c17
> # first bad commit: [c0ba89c29ef559c95273feb481b049f622c43c17] mm:
> huge_memory: enable debugfs to split huge pages to any order
> 
> 
> Thanks,
> Aishwarya


  reply	other threads:[~2024-03-01 10:33 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-02-26 20:55 [PATCH v5 0/8] Split a folio to any lower order folios Zi Yan
2024-02-26 20:55 ` [PATCH v5 1/8] mm/huge_memory: only split PMD mapping when necessary in unmap_folio() Zi Yan
2024-02-28 10:30   ` David Hildenbrand
2024-02-26 20:55 ` [PATCH v5 2/8] mm: Support order-1 folios in the page cache Zi Yan
2024-02-26 20:55 ` [PATCH v5 3/8] mm/memcg: use order instead of nr in split_page_memcg() Zi Yan
2024-02-26 20:55 ` [PATCH v5 4/8] mm/page_owner: use order instead of nr in split_page_owner() Zi Yan
2024-02-26 20:55 ` [PATCH v5 5/8] mm: memcg: make memcg huge page split support any order split Zi Yan
2024-02-26 20:55 ` [PATCH v5 6/8] mm: page_owner: add support for splitting to any order in split page_owner Zi Yan
2024-02-28 10:31   ` David Hildenbrand
2024-02-26 20:55 ` [PATCH v5 7/8] mm: thp: split huge page to any lower order pages Zi Yan
2024-02-28  8:23   ` Ryan Roberts
2024-02-28 15:42     ` Zi Yan
2024-02-28 15:44       ` Ryan Roberts
2024-02-28 15:52   ` Zi Yan
2024-03-07 14:58   ` Zi Yan
2024-02-26 20:55 ` [PATCH v5 8/8] mm: huge_memory: enable debugfs to split huge pages to any order Zi Yan
2024-03-01  9:51   ` Aishwarya TCV
2024-03-01 10:33     ` Ryan Roberts [this message]
2024-03-01 12:11       ` Mark Brown
2024-03-01 12:56         ` Zi Yan
2024-03-01 14:14           ` Mark Brown
2024-03-01 12:52       ` Zi Yan
2024-03-01 13:09         ` Ryan Roberts
2024-03-01 13:53           ` Zi Yan
2024-03-01 14:18             ` Ryan Roberts
2024-03-01 14:27               ` Mark Brown
2024-03-01 15:21                 ` Zi Yan
2024-03-01 19:41                 ` Zi Yan
2024-03-01 14:24           ` Mark Brown
2024-03-01 14:00     ` Zi Yan
2024-03-01 14:23       ` Ryan Roberts
2024-03-01 14:33         ` Zi Yan
2024-03-01 19:37     ` Zi Yan
2024-03-01 20:02       ` Zi Yan
2024-03-01 21:10         ` Zi Yan
2024-03-04  9:50           ` Aishwarya TCV
2024-03-04 14:58             ` Zi Yan
2024-03-04 15:44               ` Aishwarya TCV
2024-03-04 15:57                 ` Zi Yan
2024-03-04 18:25                   ` Aishwarya TCV
2024-03-04 18:26                     ` Zi Yan
2024-03-04 18:31                   ` Zi Yan
2024-03-07 15:06   ` Zi Yan

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=0dab0c69-2eac-4e65-9efe-e0b037499abc@arm.com \
    --to=ryan.roberts@arm.com \
    --cc=aishwarya.tcv@arm.com \
    --cc=akpm@linux-foundation.org \
    --cc=broonie@kernel.org \
    --cc=cgroups@vger.kernel.org \
    --cc=david@redhat.com \
    --cc=hughd@google.com \
    --cc=kernel@pankajraghav.com \
    --cc=kirill.shutemov@linux.intel.com \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-kselftest@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=mcgrof@kernel.org \
    --cc=mkoutny@suse.com \
    --cc=roman.gushchin@linux.dev \
    --cc=shy828301@gmail.com \
    --cc=willy@infradead.org \
    --cc=yuzhao@google.com \
    --cc=ziy@nvidia.com \
    --cc=zokeefe@google.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.