[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <871pr6r0hv.ffs@tglx>
Date: Thu, 26 Jun 2025 17:22:36 +0200
From: Thomas Gleixner <tglx@...utronix.de>
To: Waiman Long <longman@...hat.com>, Andrew Morton <akpm@...ux-foundation.org>
Cc: linux-kernel@...r.kernel.org, Waiman Long <longman@...hat.com>
Subject: Re: [PATCH v3 2/2] debugobjects: Allow object pool refill mostly in
non-atomic context
On Tue, Jun 17 2025 at 01:35, Waiman Long wrote:
> Removing the pool refill call from the other two may make pool
> exhaustion happen more easily leading to the disabling of the debug
> object tracking.
May is not a technical argument. Why would that happen?
As we established before the only reason why activate() or assert() can
consume an object from the pool is when the object was statically
initialized.
Are there really enough statically initialized objects to actually lead
to pool depletion without that activate/assert hackery?
> As a middle ground, we will allow pool refill from the
> activate and assert_init functions if they are called from a non-atomic
> context which is roughly half of the times depending on the workloads.
Which brings you back to the square one on RT enabled kernels because
the held locks in this circular lock chain scenario do _NOT_ disable
preemption, so in_atomic() evaluates to false ....
Thanks,
tglx
Powered by blists - more mailing lists