-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Tejun Heo wrote:
Hello,
Greg KH wrote:
No, the main issue is the order _within_ the runlevel. Almost every driver is in the "main" device_initcall level. But the ordering within that level matters, and that is only definied by the Makefile order, no symbol resolution or anything else specific we can determine later.
Recent kernels produce modules.order which lists the makefile order of modules and is currently used by modprobe to determine which module to load when multiple modules match a device alias. It can take some work but I don't think it'll be too hard to make the fast loaded modules to observe link order.
Now this would be really interesting. I was concerned about having multiple .init sections and started doing some work in that area, but I do like the idea of generating the link order via that mechanism instead of just guessing using modprobe. Have you played around with this at all yet? I realized this morning that my linking attempts were actually done on the compressed image, not with the real vmlinux. The differences are huge: checkout arch/x86/kernel/vmlinux.lds - I'm not sure how to reliably generate a good replacement since it folds sections, etc.
It would be nice to ship with a generic kernel and have some userland scripts which can link the dynamic image on the first boot (or when the list of loaded modules changes) and use it for subsequent boots while leaving the generic kernel as the 'safe' boot option.
Agreed. - -Jeff - -- Jeff Mahoney SUSE Labs -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.9 (GNU/Linux) Comment: Using GnuPG with SUSE - http://enigmail.mozdev.org iEYEARECAAYFAkpBen4ACgkQLPWxlyuTD7IGaACgl97Crtg8Pu62HEYv+Ao4NzJl zEEAnRXSiLvMRDx9IAp7MKTUGa+Hv99o =oHgQ -----END PGP SIGNATURE----- -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-kernel+help@opensuse.org