TODO revision 1.11
11.11Sad$NetBSD: TODO,v 1.11 2007/09/08 23:00:31 ad Exp $ 21.5Sad 31.8SadBugs to fix: 41.2Sthorpej 51.2Sthorpej- Add locking to ld.elf_so so that multiple threads doing lazy binding 61.10Sad doesn't trash things. 71.2Sthorpej 81.8SadInterfaces/features to implement: 91.2Sthorpej 101.11Sad- Realtime exensions: priority scheduling, priority inheritance. 111.8Sad 121.11Sad- Figure out how to use registers reserved in the ABI to implement 131.11Sad pthread_self(). This will allow for assembly lock stubs. 141.8Sad 151.11Sad- Allow threads to change their stack size. This probably depends on the 161.11Sad above item. 171.8Sad 181.11Sad- Have a user/kernel shared page that: 191.5Sad 201.11Sad o Has a hint mechanism that gives us a clue about whether an LWP is 211.11Sad currently running on another CPU. This could be used for adaptive locks, 221.11Sad but would need to be cheap to do in-kernel. 231.5Sad 241.5Sad o Perhaps has a flag value that's reset when a detached LWP is into the 251.5Sad kernel and lwp_exit1(), meaning that its stack can be reclaimed. Again, 261.11Sad may or may not be worth it. Currently we test for this with _lwp_kill() 271.11Sad which is very inefficient. 281.5Sad 291.5Sad- Keep a pool of dead LWPs so that we do not have take the full hit of 301.10Sad _lwp_create() every time pthread_create() is called. 31