From c248397b219f81ff49f41f07cdc7d58d6f629b50 Mon Sep 17 00:00:00 2001 From: Andrea Mazzoleni Date: Thu, 17 Mar 2011 10:23:47 +0100 Subject: [PATCH] Adds initial TODO list --- Makefile.am | 2 +- TODO | 27 +++++++++++++++++++++++++++ 2 files changed, 28 insertions(+), 1 deletion(-) create mode 100644 TODO diff --git a/Makefile.am b/Makefile.am index 549301f3..a7aee0e9 100644 --- a/Makefile.am +++ b/Makefile.am @@ -39,7 +39,7 @@ mktest_SOURCES = \ EXTRA_DIST = \ autogen.sh \ noautomake.sh \ - README AUTHORS HISTORY INSTALL COPYING \ + README AUTHORS HISTORY INSTALL COPYING TODO \ snapraid.d snapraid.1 snapraid.txt snapraid.html \ test.conf \ snapraid.conf.example \ diff --git a/TODO b/TODO new file mode 100644 index 00000000..cba0dfec --- /dev/null +++ b/TODO @@ -0,0 +1,27 @@ +SnapRAID TODO +============= + +This is a list of possible TODO for SnapRAID. The order is not relevant. + +* Add RAID6 redundancy support. +There is the very good raid6 library from H. Peter Anvin (hpa) in the Linux Kernel ready to use: +See: +http://kernel.org/pub/linux/kernel/people/hpa/raid6.pdf +http://lxr.linux.no/#linux+v2.6.38/lib/raid6 + +* Go multithread. We can do it when reading the new state (scan.c) and when syncing (sync.c) + +* Implement a faster XOR implementation using SSE2. + +* Search for a faster MD5 implementation if exists. + +* Evaluate to change from MD5 to FVN HASH. +See: +http://isthe.com/chongo/tech/comp/fnv/ +http://cessu.blogspot.com/2007/09/hashing-with-sse2.html (SSE implementation) +http://isthe.com/chongo/src/fnv/hash_64a.c (C implementation) + +* Use the O_NOATIME flag if run as 'root'. +Anyway a better solution is to mount the disk with the "noatime" and "nodiratime" options. + +* During a sync operation periodicallly save the state to do not lose the job done in case of a system crash.