## Note: this is my personal todo and ideas list (alexh@)
+* Add a simple (regression) test framework
+ - Add the hundreds of test cases from our bugtracker
+ - Run nightly/weekly or at least before a release
+
+* Callout overhaul
+ - add a callout_init_mtx/lock, etc
+ - add callout_drain
+
+* Improve installer crypto support
+ - add tcplay/TrueCrypt support
+ - let user choose crypto algorithm, IV generation, etc
+
+* Add support for hyperthreading / other SMT to our scheduler
+ - distinguish between real cores and threads on the same core
+ - Linux' work in the area: http://lwn.net/Articles/8553/
+
+* Take advantage of nested paging/EPT in vkernels
+
* add a non-persistent unionfs VFS
- while this does not fully replace unionfs, it would deal with a few of the situations where unionfs is useful
- additionally the complexity is much lower, since everything can be kept in memory
* bring the samba3 hammer shadow copy foo to maturity
-* add a communication channel mechanism to dm
- - essentially a way to send messages and receive responses to dm target instances
+* extend dm's message feature to be two-way? what's the benefit?
+
+* make the whole system deal correctly with non-512-byte blocksize for disks. (DEV_BSIZE)
* add another optimized bcopy/memcpy/memset/bzero version, using the AVX instructions
-* Add TrueCrypt support
- - Simply add a userland tool that sets dm_target_crypt up with the right parameters, extracted from the TrueCrypt header
- - https://github.com/bwalex/tc-play <- done!
- - need passphrase read timeout support
- - need unmap support
- - cryptdisks: needs generic crypto options; multiple keyfile support
+* cryptdisks: multiple keyfile support
+
+* Add geli (without integrity verification) support using dm_target_crypt?
+ - a bit like the recent TrueCrypt implementation (tcplay)
* Update cryptsetup
* Take a look at updating lvm/dm/libdevicemapper
-* Take a look at importing libdm from NetBSD
- - would allow tc-play and similarly newly developed foo to avoid GPL license issues
+* Take a look at importing dmctl from NetBSD
+ - would require a bunch of modifications to work with the proper device-mapper API
+ - also some extensions? missing lots of features
* rip out the disk partitioning from the disk subsystem and implement it in a more general fashion
- crazy idea: as dm targets with an auto-configuration option!