sonar

Scan files at memory bandwidth speed.
Log | Files | Refs

commit 85353cbace6545d9c421898f6fc755e9f7c5c45e
parent 0c616a13350973f9e8f37ef7e02b0cf1168a5e2a
Author: Jack Mordaunt <jackmordaunt.dev@gmail.com>
Date:   Fri, 18 Sep 2026 10:38:17 -0400

ntfs: pass each the same load the workers were sized with

The width came from width(.., .Io) but the run was handed .Mixed, so the two
disagreed about what kind of work this is. Nothing changed behaviourally,
since the worker count binds first either way, but a reader comparing the two
lines had to work that out to be sure.

Diffstat:
Mntfs/reader.odin | 4+++-
1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/ntfs/reader.odin b/ntfs/reader.odin @@ -288,7 +288,9 @@ read_mft_from_volume :: proc(v: ^Volume, opts := Read_Options{}, allocator := co m.stats.workers = u64(live) // 5. Read and fold, every worker on its own chunk. - flow.each(chunks[:], workers[:live], read_chunk, .Mixed) + // The width is already decided by how many workers were built; the load only has + // to match the one they were sized with. + flow.each(chunks[:], workers[:live], read_chunk, .Io) for &w in workers[:live] { if w.err != nil { return {}, w.err