[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250718030932.GE112967@mit.edu>
Date: Thu, 17 Jul 2025 23:09:32 -0400
From: "Theodore Ts'o" <tytso@....edu>
To: Andi Kleen <ak@...ux.intel.com>
Cc: libaokun1@...wei.com, linux-ext4@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH v3 01/17] ext4: add ext4_try_lock_group() to skip busy
groups
On Thu, Jul 17, 2025 at 03:28:27PM -0700, Andi Kleen wrote:
>
> It seems this makes block allocation non deterministic, but depend on
> the system load. I can see where this could cause problems when
> reproducing bugs at least, but perhaps also in other cases.
>
> Better perhaps just round robin the groups?
> Or at least add a way to turn it off.
Ext4 has never guareanteed deterministic allocation; in particular,
there are times when we using get_random_u32 whens selecting the block
group used when allocating a new inode, and since the block alocation
is based on block group of the inode, therefore the block allocation
isn't deterministic.
In any case, given there many workloads are doing multi-threaded
allocations, in practice, even without these calls to get_random,
things tend not to be deterministic anyway.
- Ted
Powered by blists - more mailing lists