Re: [2.6 patch] schedule obsolete OSS drivers for removal

From: Marcin Dalecki
Date: Sat Jan 07 2006 - 09:56:41 EST



On 2006-01-07, at 15:09, Takashi Iwai wrote:

In the implementation of OSS API, there is a clear bottleneck: you
have to implement everthing in the kernel level because of its
definition. Remember that the original thread started from the
reduction of the kernel codes. Putting more stuff which could be done
better in user-space is a major drawback, IMO.

One point - there isn't that much to be done inside the kernel for the realm
of a generic sound driver. Not if you compare it with other sub systems like the SCSI host
controller layer or WiFi protocols for example. BTW. By your argument the encryption doesn't
belong in to the kernel as well. In fact one should go even further and compare sound
facilities with the *whole* block device layer for example. Mixing and *even* resampling
data streams are quite formidable tasks from an algorithmic point of view if done properly and not just applying the square transformation window as in simple averaging methods one encounters so frequently!.
However let me assure you that it would by no way result in that many code lines as in
typical decisive protocol code implementations.

A whole complex cross correlation containing a butterfly FFT core for example doesn't take
much more then just about 500 lines of C code. And it's FAST. Basically hitting DRAM speed.
Thus technically it's nowadays complete utter nonsense to offload it to some additional hardware or to
copy the data for processing in to user space and back.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/