No. Because Rusty wanted to replace a "func_call()" object with a
direct reference to a structure. Direct struct member references is the
big issue that we are trying to _avoid_, because they are the single
most painful issue to deal with, WRT source back-compat. You can ifdef
around a function quite easily, but not a direct struct member use.
To give another concrete example, I was able to take a 2.4 PCI driver
and make it work under 2.2 transparently, with a single exception: The
"driver_data" member of the new struct pci_dev. Drivers were directly
referencing that, which was a new addition in 2.4.x (really 2.3.x). So,
I created the abstraction wrappers pci_[gs]et_drvdata(), which does
nothing but a simple C assignment (or read, for _get_). The addition of
this wrapper removed the need for nasty ifdefs in the drivers for 2.2
versus 2.4, and make it possible for the kernel source to continue to be
readable, "pretty", and ifdef-free.
Jeff
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/