On Mon, 2011-01-03 at 19:31 -0700, Tim Gardner wrote: > On 01/03/2011 03:32 PM, Ben Hutchings wrote: > > > > Try this. I've made it reasonably generic so you can easily add other > > hidden dependencies like tg3 -> broadcom. > > > > Ben. > > > > I wrote a couple of macros for Karmic to solve a race problem that might > be applicable here. [...] There are (at least) three different though similar problems: 1. The GART/GPU initialisation ordering problem. The artificial symbol dependency works for i915, but the problem remains for other GPU drivers which can't depend on a specific GART driver. Our solution was to build-in all the GART drivers, as they are quite small. 2. Network driver dependency on a PHY driver. There's no ordering problem because we now generate and use module aliases based on MDIO IDs. However, the PHY module dependency is discovered dynamically, so it is hidden from initramfs-tools. (This is not a problem when MODULES=most, because mkinitramfs then includes all modules under drivers/net/phy.) The artifical symbol dependency can be used as a workaround, at the cost of loading modules that aren't needed. 3. For crypto users and drivers, the dependency is discovered dynamically, so again it is hidden from initramfs-tools. The artifical symbol dependency can be used as a workaround, but optimised drivers will not be loaded automatically. (Though for the specific case of crc32c this is broken anyway.) Ben. -- Ben Hutchings Once a job is fouled up, anything done to improve it makes it worse.
Attachment:
signature.asc
Description: This is a digitally signed message part