To me the better way would seem to be to better separate the OS-dependent and the OS-independent parts of the drivers. However I understand that the Linux kernel people frown on this, despite the way they like to highlight how much the kernel code quality improved when it was ported to run on other CPUs/platforms.
Posted Jan 7, 2011 13:46 UTC (Fri) by Nick (guest, #15060)
[Link]
There is nothing at all wrong with that or frowned about, if the design is done right. XFS is a pretty good example of this. What is discouraged is having the OS dependent code for other OSes merged in the Linux kernel tree.