summaryrefslogtreecommitdiff
path: root/TODO
diff options
context:
space:
mode:
authorRob Landley2005-06-11 22:10:42 +0000
committerRob Landley2005-06-11 22:10:42 +0000
commit958fa2a9cc76d92b9405276e4f017bf5af7afe8b (patch)
tree87b2e272f9f75c31b8bd1f1281ca279f40de54d8 /TODO
parent0b3fc1a9acb8c0e1bb455f479c3b7cccc8651e45 (diff)
downloadbusybox-958fa2a9cc76d92b9405276e4f017bf5af7afe8b.zip
busybox-958fa2a9cc76d92b9405276e4f017bf5af7afe8b.tar.gz
Note that memory allocaiton needs to be cleaned up too.
Diffstat (limited to 'TODO')
-rw-r--r--TODO12
1 files changed, 12 insertions, 0 deletions
diff --git a/TODO b/TODO
index 4653abf..cef25cf 100644
--- a/TODO
+++ b/TODO
@@ -105,3 +105,15 @@ buildroot - Make a "dogfood" option
util-linux, and vim. Anything that's wrong with the resulting system, we
can fix. (It would be nice to be able to upgrade busybox to be able to
replace bash, diffutils, gzip, less, and patch as well.)
+---
+Memory Allocation
+ We have a CONFIG_BUFFER mechanism that lets us select whether to do memory
+ allocation on the stack or the heap. Unfortunately, we're not using it much.
+ We need to audit our memory allocations and turn a lot of malloc/free calls
+ into RESERVE_CONFIG_BUFFER/RELEASE_CONFIG_BUFFER.
+
+ And while we're at it, many of the CONFIG_FEATURE_CLEAN_UP #ifdefs will be
+ optimized out by the compiler in the stack allocation case (since there's no
+ free for an alloca()), and this means that various cleanup loops that just
+ call free might also be optimized out by the compiler if written right, so
+ we can yank those #ifdefs too, and generally clean up the code.