+++ /dev/null
-Last updated August 7, 2009.
-~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-
-The DRD tool
-~~~~~~~~~~~~
-- Improve the code for suppressing races reported on glibc FILE objects, e.g. by
- intercepting all operations on FILE objects and by associating mutex semantics
- with FILE objects. Verify that races on unsynchronized *_unlocked() operations
- are reported. Remove FILE-I/O suppression patterns from glibc-2.X-drd.supp.
- See also http://www.unix.org/whitepapers/reentrant.html.
-- Add locking order checking. Start from the following information:
- * http://sourceforge.net/mailarchive/message.php?msg_id=alpine.LNX.1.10.0803270822080.17890%40mudge.stoecker.eu
- * http://lwn.net/Articles/185605/
- * http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=Documentation/lockdep-design.txt;h=488773018152056ea159685e732e42452a7ae142;hb=HEAD
-- Make sure tc14_laog_dinphils is run during drd regression tests
- (only possible after locking order checking is implemented).
-- Evaluate whether integration of drd with one of the available Valgrind GUI's
- makes sense (http://valgrind.org/downloads/guis.html).
-
-
-Testing
-~~~~~~~
-- Measure the performance and the memory overhead of drd on the PARSEC
- benchmark (http://parsec.cs.princeton.edu/license.htm).
-- Test with Synfig Studio (see also http://bugs.kde.org/show_bug.cgi?id=158555)
-- Test with a multithreaded Python application.
-
-
-Documentation
-~~~~~~~~~~~~~
-- Document the algorithms used in drd.
-- Add comment on double checked locking.
-- Add comment on lockless algorithms in general and circular buffers in
- particular.
-- Explain how to handle transactions (with regard to locking order).