On Tue, 2008-01-22 at 00:09 +0100, Albert Graef wrote:
Fernando Lopez-Lezcano wrote:
Yes, but it is the only way to make midishare
"mainline". So that it
will always work with any vanilla distribution kernel (that has, of
course, enabled its build).
Agreed.
The other option would be to implement all of
midishare in user space.
That would be my preferred solution. IIRC, the kernel module was needed
(in the days of kernel 2.4 or 2.2 that is) to have a reliable timer
interrupt and lowlat IPC. It should be possible to do this entirely in
userland now, but there might be other issues I'm not aware of, we'll
have to ask Yann about it. As we'll probably meet at LAC we might have
some time to discuss it there.
It would make a BIG difference to have all of midishare in userland. I
think the latest kernels implement high resolution timers, etc. If Jack
can be made to work in userland, midi should be possible as well.
Well, the
kernel maintainers of course. And whoever is maintaining it
now (sorry, I don't who that might be).
Grame. (I'm just a user myself, I only provide SUSE RPMs and update
these according to my own needs.)
They don't need to update the kernel.
No, what I meant is that you'd need to follow each dotdot release of the
kernel and update the Midishare module accordingly. Not a big deal if
you follow all kernel releases anyway, but I don't have the time to do
that and neither does the Grame team AFAIK.
I don't think I follow you. Who is "you"? The midishare developers? If I
understand the kernel development process correctly, once the midishare
kernel module is in the mainline kernel the update process is fairly
automatic. As long as the internal kernel api's don't change in ways
that are incompatible with the module then no change or intervention is
needed. If there is a change the midishare developers will get notified
and them or some other kernel hacker will do it or help. Which is much
better than responding to things when they break.
If "you" means me as a packager then I would have less work to do if
midishare is part of the miainline kernel. It would not add to the
workload at all. Whatever I release would automatically include
midishare 'cause it is in the kernel as I build it. It is more work to
have it as a separate module (and that's why I dropped it as soon as it
was not longer required by other packages in Planet CCRMA).
-- Fernando