Is *this* the real issue? I would imagine that the scenario presented
rarely happens; i.e. if you change a structure, you do break the modules
that call functions expecting pointers to these structures.
It would be interesting to analyze what symbol versions changed during
the life of Linux 2.0, and what modules are affected by those.
If there are some functions that frequently break even though the
parameters are meant to be opaque, then the parameters should be
changed to actually be opaque (say, void* or the like).
Regards,
Martin