Finding all modules which consume kernel lib?
Hello, Is there a website or service or tool or package or script or something which allows me to determine which pieces of the compiled kernel (especially modules) contained the source-code changes I might make to any given directory? Like a kernel-code dependency graph website? For instance, assume I made a change to code in net/wireless/. How do I figure out which pieces of the kernel or modules get linked against the library built from this directory? I could attempt to trace the kernel's build output line-by-line and then grep through the output looking for which other code is linking against cfg80211. That is way too tedious. In this case I would like to know which kernel modules I would need to, potentially, re-test because I apply a patch to this directory without examining the build logs. In my case I'm applying some patches and I'd like to make sure I am installing and testing the correct set of related atheros modules. Thank you, andy ___ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
Re: Finding all modules which consume kernel lib?
On Sat, Mar 09, 2019 at 12:07:00AM -0800, Andy Nicholas wrote: > Hello, > > Is there a website or service or tool or package or script or something > which allows me to determine which pieces of the compiled kernel > (especially modules) contained the source-code changes I might make to any > given directory? Like a kernel-code dependency graph website? > > For instance, assume I made a change to code in net/wireless/. How do I > figure out which pieces of the kernel or modules get linked against the > library built from this directory? > > I could attempt to trace the kernel's build output line-by-line and then > grep through the output looking for which other code is linking against > cfg80211. That is way too tedious. In this case I would like to know which > kernel modules I would need to, potentially, re-test because I apply a > patch to this directory without examining the build logs. Just look at the build logs, it will show you exactly what gets rebuilt when you touch a single file (or multiple files.) That's the simplest way to do what you want here. good luck! greg k-h ___ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
Re: Finding all modules which consume kernel lib?
There is also modulus.dep file which depmod builds. You can just grep to find which modulus depends.10:29 AM, March 9, 2019, Greg KH :On Sat, Mar 09, 2019 at 12:07:00AM -0800, Andy Nicholas wrote: Hello, Is there a website or service or tool or package or script or something which allows me to determine which pieces of the compiled kernel (especially modules) contained the source-code changes I might make to any given directory? Like a kernel-code dependency graph website? For instance, assume I made a change to code in net/wireless/. How do I figure out which pieces of the kernel or modules get linked against the library built from this directory? I could attempt to trace the kernel's build output line-by-line and then grep through the output looking for which other code is linking against cfg80211. That is way too tedious. In this case I would like to know which kernel modules I would need to, potentially, re-test because I apply a patch to this directory without examining the build logs.Just look at the build logs, it will show you exactly what gets rebuiltwhen you touch a single file (or multiple files.) That's the simplestway to do what you want here.good luck!greg k-h___Kernelnewbies mailing listKernelnewbies@kernelnewbies.orghttps://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies-- Sent from Yandex.Mail for mobile___ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
Re: Finding all modules which consume kernel lib?
On Sat, 09 Mar 2019 13:04:44 +0300, Lev Olshvang said: > There is also modulus.dep file which depmod builds. You can just grep to find > which modulus depends. Note that the modules.dep file only tells modprobe "If you're loading module A, you need to load B first to get some symbols registered". If B is built-in to the kernel, its EXPORT_SYMBOLS are already available, so it doesn't need to be listed in modules.dep. Also, it doesn't record build-time dependencies - it totally assumes that A and B were built against the same source tree and that Kbuild took care of making sure that any source code changes to B that affect A caused a rebuild of A to happen. ___ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies