From: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
To: Heiko Carstens <hca@linux.ibm.com>
Cc: Andrew Morton <akpm@linux-foundation.org>,
linux-kernel@vger.kernel.org,
"Paul E. McKenney" <paulmck@kernel.org>,
Steven Rostedt <rostedt@goodmis.org>,
Masami Hiramatsu <mhiramat@kernel.org>,
Dennis Zhou <dennis@kernel.org>, Tejun Heo <tj@kernel.org>,
Christoph Lameter <cl@linux.com>,
Martin Liu <liumartin@google.com>,
David Rientjes <rientjes@google.com>,
christian.koenig@amd.com, Shakeel Butt <shakeel.butt@linux.dev>,
SeongJae Park <sj@kernel.org>, Michal Hocko <mhocko@suse.com>,
Johannes Weiner <hannes@cmpxchg.org>,
Sweet Tea Dorminy <sweettea-kernel@dorminy.me>,
Lorenzo Stoakes <lorenzo.stoakes@oracle.com>,
"Liam R . Howlett" <liam.howlett@oracle.com>,
Mike Rapoport <rppt@kernel.org>,
Suren Baghdasaryan <surenb@google.com>,
Vlastimil Babka <vbabka@suse.cz>,
Christian Brauner <brauner@kernel.org>,
Wei Yang <richard.weiyang@gmail.com>,
David Hildenbrand <david@redhat.com>,
Miaohe Lin <linmiaohe@huawei.com>,
Al Viro <viro@zeniv.linux.org.uk>,
linux-mm@kvack.org, linux-trace-kernel@vger.kernel.org,
Yu Zhao <yuzhao@google.com>,
Roman Gushchin <roman.gushchin@linux.dev>,
Mateusz Guzik <mjguzik@gmail.com>,
Matthew Wilcox <willy@infradead.org>,
Baolin Wang <baolin.wang@linux.alibaba.com>,
Aboorva Devarajan <aboorvad@linux.ibm.com>,
Vasily Gorbik <gor@linux.ibm.com>,
linux-s390@vger.kernel.org
Subject: Re: [PATCH v17 0/3] Improve proc RSS accuracy
Date: Thu, 26 Feb 2026 14:38:04 -0500 [thread overview]
Message-ID: <73e6fea9-caf2-4404-b511-11646013f8db@efficios.com> (raw)
In-Reply-To: <e0af317a-d6ad-4de4-8bb1-215d5dce7351@efficios.com>
On 2026-02-26 10:42, Mathieu Desnoyers wrote:
> On 2026-02-26 10:00, Mathieu Desnoyers wrote:
>> On 2026-02-26 07:04, Heiko Carstens wrote:
>>> On Tue, Feb 17, 2026 at 11:10:03AM -0500, Mathieu Desnoyers wrote:
>>>> This series introduces the hierarchical tree counter (hpcc) to increase
>>>> accuracy of approximated RSS counters exposed through proc interfaces.
>>>>
>>>> With a test program hopping across CPUs doing frequent mmap/munmap
>>>> operations, the upstream implementation approximation reaches a 1GB
>>>> delta from the precise value after a few minutes, compared to a 80MB
>>>> delta with the hierarchical counter. The hierarchical counter
>>>> provides a
>>>> guaranteed maximum approximation inaccuracy of 192MB on that hardware
>>>> topology.
>>>>
>>>> This series is based on
>>>> commit 0f2acd3148e0 Merge tag 'm68knommu-for-v7.0' of git://
>>>> git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu
>>>>
>>>> The main changes since v16:
>>>> - Dropped OOM killer 2-pass task selection algorithm.
>>>> - Introduce Kunit tests.
>>>> - Only perform atomic increments of intermediate tree nodes when
>>>> bits which are significant for carry propagation are being changed.
>>>
>>> This seems to cause crashes with linux-next on s390, at least I could
>>> bisect
>>> it to the last patch of this series. Reverting the last one, makes
>>> the crashes
>>> go away:
>>>
>>> 0acac6604c1cfd7a1762901f0a4abe87cf3a8619 is the first bad commit
>>> commit 0acac6604c1cfd7a1762901f0a4abe87cf3a8619 (HEAD)
>>> Author: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
>>> AuthorDate: Tue Feb 17 11:10:06 2026 -0500
>>> Commit: Andrew Morton <akpm@linux-foundation.org>
>>> CommitDate: Tue Feb 24 11:15:15 2026 -0800
>>>
>>> mm: improve RSS counter approximation accuracy for proc interfaces
>>>
>>> Unable to handle kernel pointer dereference in virtual kernel address
>>> space
>>> Failing address: 766d615f72615000 TEID: 766d615f72615803 ESOP-2 FSI
>>> Fault in home space mode while using kernel ASCE.
>>> AS:000000025dc04007 R3:0000000000000024
>>> Oops: 0038 ilc:2 [#1]SMP
>>> Modules linked in:
>>> CPU: 0 UID: 0 PID: 1 Comm: swapper/0 Not tainted
>>> 7.0.0-20260224.rc1.git266.3ef088b0c577.300.fc43.s390x+next #1
>>> PREEMPTLAZY
>>> Hardware name: IBM 3931 A01 703 (z/VM 7.4.0)
>>> Krnl PSW : 0704c00180000000 00000216ef164cde
>>> (kernfs_name_hash+0x1e/0xb0)
>>> R:0 T:1 IO:1 EX:1 Key:0 M:1 W:0 P:0 AS:3 CC:0 PM:0 RI:0 EA:3
>>> Krnl GPRS: 0000000000000000 0000000000000000 766d615f72615f65
>>> 0000000000000000
>>> 766d615f72615f65 0000000000000000 0000000000000000
>>> 0000000000000000
>>> 766d615f72615f65 0000000081212440 0000000000000000
>>> 0000000000000000
>>> 0000000080a00000 00000216efcb5390 00000216ef16530c
>>> 00000196eeb07ae0
>>> Krnl Code: 00000216ef164cd2: a7190000 lghi %r1,0
>>> 00000216ef164cd6: b9040042 lgr %r4,%r2
>>> *00000216ef164cda: a7090000 lghi %r0,0
>>> >00000216ef164cde: b25e0014 srst %r1,%r4
>>> 00000216ef164ce2: a714fffe brc 1,00000216ef164cde
>>> 00000216ef164ce6: b9e92051 sgrk %r5,%r1,%r2
>>> 00000216ef164cea: ec1200208076 crj %r1,
>>> %r2,8,00000216ef164d2a
>>> 00000216ef164cf0: b9160005 llgfr %r0,%r5
>>> Call Trace:
>>> [<00000216ef164cde>] kernfs_name_hash+0x1e/0xb0
>>> [<00000216ef167d32>] kernfs_remove_by_name_ns+0x72/0x120
>>> [<00000216ef16bbfa>] remove_files+0x4a/0x90
>>> [<00000216ef16bf96>] create_files+0x276/0x2b0
>>> [<00000216ef16c15a>] internal_create_group+0x18a/0x320
>>> [<00000216f09b61c6>] swap_init+0x5e/0xa0
>>> [<00000216eec7fb00>] do_one_initcall+0x40/0x270
>>> [<00000216f0990a40>] kernel_init_freeable+0x2b0/0x330
>>> [<00000216efb5160e>] kernel_init+0x2e/0x180
>>> [<00000216eec81ffc>] __ret_from_fork+0x3c/0x240
>>> [<00000216efb5e052>] ret_from_fork+0xa/0x30
>>> Last Breaking-Event-Address:
>>> [<00000216ef165306>] kernfs_find_ns+0x76/0x140
>>> Kernel panic - not syncing: Fatal exception: panic_on_oops
>>
>> It looks like either an issue with ordering of the bootup sequence, or
>> an issue with the size of struct mm_struct init_mm. I'll have a look.
>
> I've successfully booted a linux-next 7.0.0-rc1-next-20260226 within a
> x86-64 vm, with a swap partition.
>
> I wonder if s390x somehow alters the value of nr_cpus_ids late in
> bootup, after percpu_counter_tree_subsystem_init() ?
>
> Can you share your .config and kernel command line arguments ?
I've successfully booted a defconfig s390x next-20260226 kernel in qemu
with 1 and 4 CPUs, and within a nested s390x VM on 2 cpus.
I guess I'll really need more info about your specific .config and
command line args to help further.
Thanks,
Mathieu
>
> Thanks,
>
> Mathieu
>
--
Mathieu Desnoyers
EfficiOS Inc.
https://www.efficios.com
next prev parent reply other threads:[~2026-02-26 19:38 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-02-17 16:10 Mathieu Desnoyers
2026-02-17 16:10 ` [PATCH v17 1/3] lib: Introduce hierarchical per-cpu counters Mathieu Desnoyers
2026-02-17 16:10 ` [PATCH v17 2/3] lib: Test " Mathieu Desnoyers
2026-02-17 16:10 ` [PATCH v17 3/3] mm: Improve RSS counter approximation accuracy for proc interfaces Mathieu Desnoyers
2026-02-26 12:04 ` [PATCH v17 0/3] Improve proc RSS accuracy Heiko Carstens
2026-02-26 15:00 ` Mathieu Desnoyers
2026-02-26 15:42 ` Mathieu Desnoyers
2026-02-26 19:38 ` Mathieu Desnoyers [this message]
2026-02-26 16:51 ` Andrew Morton
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=73e6fea9-caf2-4404-b511-11646013f8db@efficios.com \
--to=mathieu.desnoyers@efficios.com \
--cc=aboorvad@linux.ibm.com \
--cc=akpm@linux-foundation.org \
--cc=baolin.wang@linux.alibaba.com \
--cc=brauner@kernel.org \
--cc=christian.koenig@amd.com \
--cc=cl@linux.com \
--cc=david@redhat.com \
--cc=dennis@kernel.org \
--cc=gor@linux.ibm.com \
--cc=hannes@cmpxchg.org \
--cc=hca@linux.ibm.com \
--cc=liam.howlett@oracle.com \
--cc=linmiaohe@huawei.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=linux-s390@vger.kernel.org \
--cc=linux-trace-kernel@vger.kernel.org \
--cc=liumartin@google.com \
--cc=lorenzo.stoakes@oracle.com \
--cc=mhiramat@kernel.org \
--cc=mhocko@suse.com \
--cc=mjguzik@gmail.com \
--cc=paulmck@kernel.org \
--cc=richard.weiyang@gmail.com \
--cc=rientjes@google.com \
--cc=roman.gushchin@linux.dev \
--cc=rostedt@goodmis.org \
--cc=rppt@kernel.org \
--cc=shakeel.butt@linux.dev \
--cc=sj@kernel.org \
--cc=surenb@google.com \
--cc=sweettea-kernel@dorminy.me \
--cc=tj@kernel.org \
--cc=vbabka@suse.cz \
--cc=viro@zeniv.linux.org.uk \
--cc=willy@infradead.org \
--cc=yuzhao@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox