Things to fix and add in ZIO
Fixes and audit For the next "release", which will be beta3, submittable to the kernel
- Support for writing the control block even for input channels
- Evaluate a DECLARE_ZIO_NAME() so you can name your structures
- Make a serious study of all race conditions, especially the problem of output configs where the trigger has not yet fired
- Check all allocations and deallocations
- Make a single zio-core.ko module that includes defualt trigger and buffer
- Add more working examples, also for real harware
New features
- Implement the bus abstraction, to split drivers and devices
- Implement an enable/disable policy, so enabling channels may disable competing channels in another cset
- Write a kmem_cache for the control structures
- Write the app-request trigger, that should be the default one
- Write a circular buffer, that frees control structures and recreates them as needed
- Think about the details of mmap support and DMA to user space