- 18 Jul, 2009 3 commits
-
-
Rusty Russell authored
-
Rusty Russell authored
-
Rusty Russell authored
-
- 17 Jul, 2009 7 commits
-
-
Rusty Russell authored
struct op: serial -> seqnum (and drop use of term "serial" everywhere). struct op: op -> type struct op_desc: general replacement for file/op_num pair. Change add_dependency to take two const op_desc *: means reshuffle since we can't adjust the args any more.
-
Rusty Russell authored
Add handling of reduced test cases (traverse lines trimmed), and add all the test cases I've been using.
-
Rusty Russell authored
-
Rusty Russell authored
-
Rusty Russell authored
-
Rusty Russell authored
-
Rusty Russell authored
-
- 16 Jul, 2009 10 commits
-
-
Joey Adams authored
-
Rusty Russell authored
-
Rusty Russell authored
-
Rusty Russell authored
-
Rusty Russell authored
-
Rusty Russell authored
-
Rusty Russell authored
-
Rusty Russell authored
-
Rusty Russell authored
This has proven to be intractible: various attempts to eliminate have failed, so detect at runtime and cease the traversal (and do the remaining ops outside a traverse).
-
Rusty Russell authored
-
- 15 Jul, 2009 9 commits
-
-
Joey Adams authored
-
Joey Adams authored
-
Rusty Russell authored
-
Rusty Russell authored
Note: we can still deadlock on traversal vs transaction corner cases. We handle transactions as single operation, which it logically is.
-
Joey Adams authored
-
Rusty Russell authored
If we do the trace inside the lock, we show the actual sequence number when the transaction started.
-
Rusty Russell authored
Also changes first member of transaction to have valid start_group field, and fix outdated comment.
-
Rusty Russell authored
(Invasive: means passing full op array all the way through).
-
Joey Adams authored
-
- 14 Jul, 2009 5 commits
-
-
Rusty Russell authored
Generalizes traverse in traverse fix from rusty@rustcorp.com.au-20090629073630-3eduhyypx2tp6u80
-
Rusty Russell authored
-
Rusty Russell authored
We now use the "group_len" field for both transactions and traversals.
-
Rusty Russell authored
-
Rusty Russell authored
-
- 13 Jul, 2009 5 commits
-
-
Rusty Russell authored
Make sort_deps more efficient, and also only alter order when necessary. This means by default we run in serial number order, only going outside when we detect a dependency. Maintain trace file order in original sort, so sort_deps doesn't mess it up. We still need serial numbers: sort_deps can have multiple solutions for a single key, but these may deadlock with the ordering requirements of other keys. By sticking close to the actual order (ie. serial order), we minimize the chance of this happening.
-
Rusty Russell authored
In my tdbtorture -n 4 example trace, this reduces from 14493 to 3210 dependencies, but doesn't make any measurable improvement in the time. Still, it's simple to do and might make a difference for larger sets.
-
Rusty Russell authored
-
Rusty Russell authored
Also, using a single structure makes talloc_free convenient for when we do optimization.
-
Rusty Russell authored
-
- 12 Jul, 2009 1 commit
-
-
Rusty Russell authored
-