User: Password:
|
|
Subscribe / Log in / New account

GPL-only symbols and ndiswrapper

GPL-only symbols and ndiswrapper

Posted Oct 28, 2006 0:26 UTC (Sat) by i3839 (guest, #31386)
In reply to: GPL-only symbols and ndiswrapper by pizza
Parent article: GPL-only symbols and ndiswrapper

I thought we were talking about binary only modules and ndiswrapper? In that light I don't see how that construction could be in anyway better than when pushed to userspace. Currently closed source kernel modules from ATI and Nvidia should also be put into userspace with no more than a tiny kernel module handling the necessary, IMHO.

Those drivers want to talk to their hardware, not to the rest of the kernel which they shouldn't know or care about.


(Log in to post comments)

GPL-only symbols and ndiswrapper

Posted Oct 31, 2006 2:17 UTC (Tue) by proski (subscriber, #104) [Link]

I thought we were talking about binary only modules and ndiswrapper? In that light I don't see how that construction could be in anyway better than when pushed to userspace.
I think many people would prefer not to run closed source Windows driver with the kernel permissions (in "ring 0" in x86 terminology). Of course, having a network driver in userspace can have its drawbacks.
Currently closed source kernel modules from ATI and Nvidia should also be put into userspace with no more than a tiny kernel module handling the necessary, IMHO.
Sorry, that's getting off-topic, and I'm in now way a video card expert, but how are you going to emulate Linux API expected by those modules (provided you are talking about Linux modules)? Are you going to reimplement it in userspace? I think that's going to be the hard part, and not the "tiny kernel module".

GPL-only symbols and ndiswrapper

Posted Oct 31, 2006 13:38 UTC (Tue) by i3839 (guest, #31386) [Link]

The few extra milliseconds latency is well worth it, if it's even that high.

> how are you going to emulate Linux API expected by those modules (provided you are talking about Linux modules)?
> Are you going to reimplement it in userspace?

Well, you'd hope they don't expect Linux specific API functions, or keeping them closed source makes it even more questionable than it already is. So I assume they only need general hardware interaction functions, like setting up interrupt handlers and things like that. In the case of graphic cards they have a way to send data and commands to the card, they might need a bit help with DMA and stuff from the kernel, but other than that not much more needs to be done by the kernel and the rest can be done by the userspace driver.

The userspace driver will not be easy to make and most likely be slightly slower, but even if that's 10% it's worth it to get the 4MB big unknown blob out of kernel space.


Copyright © 2017, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds