Re: 3rd party drivers: Was Re: Kernel Geeks Unite?

Stephen Williams (steve@icarus.icarus.com)
Sat, 13 Sep 1997 11:32:46 +0800


root@jennifer-unix.dyn.ml.org said:
> Would a "function_foo_CHANGED" symbol be good? This symbol would be
> set to the last kernel version that changed the interface of the
> function (or varable). This would be more lax then current
> modversions (every kernel comple), but less lax then encodeing the
> prototype (about equivlent to C++).

C++ style mangling has the advantage that it is automatic and type safe,
and is an approximation of what the interface really is. It is also easier
to match up symbols done this way. I have found in my general C++ experience
that this simple heuristic is suprisingly effective.

The disadvantage is that it does not reflect changes in semantics that
does not have an external visible effect. For example, change the order
of the parameters of memcpy and type-safe linkage cannot help you.

I really think that type-safe linkage is the answer, but I'm already hacking
in the PCI universe right now.

-- 
Steve Williams
steve@icarus.com
steve@picturel.com

"The woods are lovely, dark and deep. But I have promises to keep, And lines to code before I sleep, And lines to code before I sleep."