- 22 Nov, 2012 8 commits
-
-
Rusty Russell authored
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-
Rusty Russell authored
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-
Rusty Russell authored
Tal-enhanced string routines, copied from str_talloc (which I also wrote). Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-
Rusty Russell authored
Our first nested module; easy because noone else relies on it. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-
Rusty Russell authored
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-
Rusty Russell authored
Removing this assumption should allow nested modules. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-
Rusty Russell authored
Far more effective to just skip valgrind and gcov if you want fast results; that's what we do for the summary already. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-
Rusty Russell authored
Clumsier than using wildcards, but that breaks down with nested modules anyway. In the longer term, we want ccantool to do the building, but for the moment make is a necessary evil. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-
- 21 Nov, 2012 10 commits
-
-
Rusty Russell authored
In particular, we might need the C files for foreach and err. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-
Rusty Russell authored
Firstly, we should always ask before altering files. Secondly, we are not in the module directory: we need to use m->info_file->fullname. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-
Rusty Russell authored
Don't risk reading partially-constructed files. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-
Rusty Russell authored
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-
Rusty Russell authored
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-
Rusty Russell authored
This makes it convenient to do: ptr = tal_free(ptr); Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-
Rusty Russell authored
This makes error handling much more convenient, since take is usually used for chaining functions. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-
Rusty Russell authored
TAL_TAKE is awkward to use, particularly on functions which take multiple arguments. Instead, record annotations for pointers due to be freed in the callee. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-
Rusty Russell authored
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-
Rusty Russell authored
Sometimes you want to duplicate and enlarge in one step: particularly with TAL_TAKE. It's also typesafe, unlike tal_memdup(). Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-
- 20 Nov, 2012 1 commit
-
-
Rusty Russell authored
Instead of trying to force people to use the return value, pass a pointer. This makes it easier if you want to handle failure: no overwriting the old pointer! Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-
- 19 Nov, 2012 6 commits
-
-
Rusty Russell authored
Always good form to have cleanup functions preserve errno. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-
Rusty Russell authored
Rusty forgets a git add. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-
Rusty Russell authored
We call remove_node() in tal_steal, then re-use the node. So it's important that we always unlink the group property from the node for that case. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-
Rusty Russell authored
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-
Rusty Russell authored
Don't open-code the list_head_init: left over from performance debugging. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-
Rusty Russell authored
First, we need to update the bounds for the group property allocated with the children property, just in case it's at the end of the allocations. Second, we need to allow the tal_check() code to accept the pointer to the null parent's group property. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-
- 18 Nov, 2012 5 commits
-
-
Rusty Russell authored
This is based on a very simple dump of S4's talloc tree, which we try to duplicate using tal. The benchmarks are simply to allocate all the nodes, free all the nodes individually, and a top-level free. Size results (32-bit x86): $ ./samba-allocs talloc.dump --talloc-size Read 25998 nodes Virtual size = 10469376, RSS = 4759552 $ ./samba-allocs talloc.dump --tal-size Read 25998 nodes Virtual size = 9629696, RSS = 3948544 Speed results: $ ./samba-allocs talloc.dump Read 25998 nodes Malloc time: 1912082ns Free time: 1384892ns Talloc time: 2851531ns talloc_free time: 2133801ns Single talloc_free time: 1696298ns Tal time: 2686952ns Tal_free time: 3316153ns Single tal_free time: 1639407ns Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-
Rusty Russell authored
We modify it a bit (to do more allocations before freeing). Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-
Rusty Russell authored
The really size-conscious can override them, but it's great for debugging to have names on the nodes. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-
Rusty Russell authored
TAL_TAKE provides a magic context meaning "consume my args and return a replacement". This is useful for writing convenience functions, though not so useful in the standard routines here. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-
Rusty Russell authored
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-
- 15 Nov, 2012 3 commits
-
-
Rusty Russell authored
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-
Rusty Russell authored
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-
Rusty Russell authored
Without this, it's a trivial header. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-
- 12 Nov, 2012 7 commits
-
-
David Gibson authored
Several modules were only listed as dependencies because they were used in the testcases. That in turn gave some bogus incompatible license warnings which we partially suppressed from _info. Now that ccanlint supports testdepends, use that to clean it up. Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
-
Rusty Russell authored
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-
Rusty Russell authored
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-
Rusty Russell authored
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-
Rusty Russell authored
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-
Rusty Russell authored
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-
Rusty Russell authored
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-