On Tue, May 13, 2008 at 09:17:04AM +0200, Jean Delvare wrote:
Le mercredi 07 mai 2008, Jan Beulich a écrit :
Parts of the first patch (the actual network
driver) are in 2.6.26-rc1,
but this one handles more hardware, and without the resource drivers it's
not useful for the special virtualization purposes that FATE#303479 is
I took a quick look at the network driver patch, and for the little part I
can comment on, this is horrible. The driver includes:
* A complete reimplementation of an i2c stack, including software
bit-banging (so basically duplicating all of the i2c-core and i2c-algo-bit
kernel drivers): 470 lines of code.
* A complete reimplementation of the lm87 hardware monitoring driver: 350
lines of code.
* Custom code to handle PCA9539 and PCF8575 GPIO chips, while we now have
generic drivers for these under drivers/gpio.
* Custom code to handle a MAX6647 thermal sensor chip. We don't support
this one yes but it really should be a reusable driver under
drivers/hwmon rather than custom code hidden deep under drivers/net/sfc.
That's a lot of code duplication and it shows how little the driver author
cared about making use of everything the kernel already has support for.
And this is only for the part I am familiar with... if the rest of the code
is of the same nature, there's a lot of work before this driver will fit
reasonably in the kernel. Well, I guess this explains the 24000 lines of
code this driver weights. I don't even want to think of the size of the
binary module :(
Thanks for reviewing it.
In further comments on a different list, Jan has withdrawn the wish to
have this code included in 11.0 due to lack of upstream acceptance and
Apparently part of this crap managed to make it into
the kernel already.
I see the i2c stack reimplementation is there. Let me go shout at whoever
let this happen.
Good luck, I bet the network driver maintainers didn't even realize it
was there :(
To unsubscribe, e-mail: opensuse-kernel+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-kernel+help(a)opensuse.org