From: Carlos <ca...@cm...> - 2006-02-22 15:04:53
|
On Wednesday 22 February 2006 15:36, Christoph Hellwig wrote: > On Tue, Feb 21, 2006 at 10:03:58PM +0100, Carlos Mart?n wrote: > > > The important bit is that you need the pointers with the above module > > > spit, because you can't call usb- or pci-specific routines from=20 > > > acx-common.ko=20 > >=20 > > Yes, I realise that (unless you export them, but I don't think we want= =20 that).=20 >=20 > even that wouldn't work with current module because the usb and pci modul= es > call into the common code and thus we'd have recursive module depency. And you may not build both modules, so acx-common.ko would never be satisfi= ed.=20 =46unction pointers all the way then. >=20 > > This approach is probably better even if the driver is unified. Pointer= =20 > > dereferences are cheaper than branches/jumping, aren't they? >=20 > It shouldn't matter these days as cpus have nice branch prediction. I remember reading P4s have problems with this because they had really long= =20 branch pipes (the proper name escapes me at the moment) and if they got it= =20 wrong, it took quite a bit of time (in CPU terms, of course) to flush them.= I=20 don't use them personally, but I believe the trend is to do that. cmn =2D-=20 Carlos Mart=EDn Nieto | http://www.cmartin.tk Hobbyist programmer | |