Commit Graph

14 Commits

Author SHA1 Message Date
0faf2bc792 Merge branch 'io_ring' 2026-04-28 17:55:41 +01:00
b4487cd3a6 Finalizing the implementation of file registration
Adding the file system check in Linux(can be enabled from the config
file)
Adding a more options to the config file
Writing the README
2026-04-28 17:52:02 +01:00
3393129c5f Implementing registered files in io_uring
The windows implementation is disabled, currently registering files in
IO Ring when there is inflight IO operations causes corruptions.

Implementing a config file.

Some code cleanup
2026-04-24 15:30:04 +01:00
ab31776658 Reworking IO Ring pipeline to fully support multiple infilght files
Reworking the filequeue, the buffer chaining logic and the error
handling.
Renaming functions.
Fix bug in arena.
2026-04-23 19:53:58 +01:00
b8e577b5bb Porting IO Ring to linux by implementing io_uring 2026-04-15 23:15:00 +01:00
657752313e j'ai du faire ses changement pour que ca compile sur linux 2026-04-14 00:39:00 +01:00
d4ba121b56 Implementation of IO Ring in Windows
Fixing the two compilation warnings.
2026-03-31 00:26:03 +01:00
81d47fb675 Linux porting
Porting to linux
Reorganising the code
Improving the scan function
2026-03-18 23:38:54 +01:00
c1abada7ba Updating the LF MPMC queue and replacing DirQueue with it
Making the MPMC queue support when producers are consumers at the same
time by adding a variable work, mpmc_push_work() that increments work
and mpmc_task_done() that decrements work, and if work = 0 calls
mpmc_producers_finished() that pushes poinsons to wake up sleeping
threads and make them return NULL

Replacing DirQueue, a queue growable with realloc with the MPMC queue
2026-03-12 13:57:09 +01:00
aef070192f Using FindFirstFileA() instead of CreateFileA() to get the file size
Since we already call FindFirstFileA() and it returns the size there is
no need to open/close every file to get it's size
2026-03-11 09:02:17 +01:00
f3c4cb7b76 plat_sem_destroy(&q->items_sem); 2026-03-09 17:27:45 +01:00
a299c4a1e1 LF MPMC queue improvements
Small improvements of the LF MPMC queue

Making the LF MPMC queue generic and in a seperate header file
2026-03-09 13:21:45 +01:00
dd0797df79 hashers now use thread local arena
Instead of writing directly to file_hashes.txt, hash_workers now are
using a local arena, writing everything once at the end

using #pragma once to ensure that a given header file is included only
once in a single compilation unit
2026-03-08 10:46:05 +01:00
1744309b50 first commit 2026-02-28 10:54:16 +01:00