Research Article

Concurrency Bug Avoiding Based on Optimized Software Transactional Memory

Table 5

31 concurrency bugs and their related information.

Bug#Buggy programDescriptionCategory

1bank-transaction [35]Two threads reversely acquire two mutexesDeadlock
2dining-philosophers [35]Five threads reversely acquire five mutexes
3sqlite-3.3.3 [35]http://www.sqlite.org/src/info/a6c30be214
4hawknl-1.6b3 [35]nlShutdown() and nlClose()
5openldap-3494-kernel [35]http://www.openldap.org/lists/openldapbugs/200501/msg00101.html
6mysql-37080-kernel [35]http://bugs.mysql.com/bug.php?id=37080
7deadlock-test 01 [36]Similar to bug#1
8deadlock-test 02Similar to bug#2
9deadlock-test 03Two threads wait on two conditional variables

10race-test 01Concurrent writesData race
11race-test 09Unsynchronized read and write
12race-test 20Concurrent writes with timeout synchronization
13race-test 46Concurrent reads/writes because of incorrect locking
14race-test 47Similar to bug#13
15race-test 50Concurrent writes because of incorrect signal/wait
16logprocsweepAccesses on a shared variable with no lock protection
17shared-counterSimilar to bug#16

18mysql-3596-kernel [11]http://bugs.mysql.com/bug.php?id=3596Atomicity violation
19atm-violation-test01 [36]Similar to bug#20
20stringbuffer-jdk-1.4https://github.com/jieyu/concurrency-bugstree/master/stringbuffer-jdk1.4
21mysql-169-kernelhttp://bugs.mysql.com/bug.php?id=169
22apache-21287-kernelhttps://bz.apache.org/bugzilla/show_bug.cgi?id=21287
23apache-25520-kernelhttps://bz.apache.org/bugzilla/show_bug.cgi?id=25520
24apache-45605-kernelhttps://bz.apache.org/bugzilla/show_bug.cgi?id=45605
25cherokee-0.9.2-kernelA local read/write sequence interleaves with a remote one
26memcached-127-kernelSimilar to bug#25
27mysql-12848-kernelhttp://bugs.mysql.com/bug.php?id=12848
28mysql-791-kernelhttp://bugs.mysql.com/bug.php?id=791

29httrack-3.43.9-kernelReference may come before definitionOrder violation
30transmission-1.42-kernelSimilar to bug#29
31mozilla-0.8-kernelSimilar to bug#29