On Fri, Apr 27, 2007 at 04:04:25PM -0700, Andrew Morton wrote:It's not a closed vs. open issue, it just turns out that a lot of people keep trying to write PCI drivers in userspace (how many different papers were published on this topic alone in the past year...). This framework is to allow this to happen in a sane and correct way. Lots of different types of odd devices do not fit into the "kernelspace driver" framework very well for a variety of reasons: - zillions of different controls in the card - floating point is needed to compute the next step of an operation in moving a physical object With this framework, we provide a solid and simple way to provide for these kinds of devices. The Linutronix guys have had a lot of experience in supporting this kind of hardware in the past and can provide better examples if you need. But yes, it does allow you to write a PCI driver in userspace, being closed source, if you really want to. But if you do that, then you get _no_ advantages of being in the kernel (caching, common userspace interface, resource management, etc.) and need to handle that all yourself. Heck, that's pretty much what X does today for lots of old video cards :) No, you still need kernel code to handle the interrupt properly, we do not want userspace to do this as it would slow the system down and do all sorts of other bad things. That's the main problem with all of those other proposals that people have for trying to do this kind of work in the past (can't share irqs, can't block on userspace in an interrupt handler, etc.) thanks, greg k-h -
| Greg Kroah-Hartman | [PATCH 005/196] Chinese: add translation of SubmittingDrivers |
| Nick Piggin | [patch] my mmu notifier sample driver |
| Sean | Re: [AppArmor 39/45] AppArmor: Profile loading and manipulation, pathname matching |
| Arjan van de Ven | [Patch v2] Make PCI extended config space (MMCONFIG) a driver opt-in |
git: | |
| Antonio Almeida | HTB accuracy for high speed |
| Gerrit Renker | [PATCH 0/37] dccp: Feature negotiation - last call for comments |
| Jens Axboe | Re: [BUG] New Kernel Bugs |
| Jarek Poplawski | [PATCH] pkt_sched: Destroy gen estimators under rtnl_lock(). |
