[Crash-utility] mod -S and debuginfo kernel rpm
Michael Holzheu
holzheu at linux.vnet.ibm.com
Thu Apr 23 12:04:54 UTC 2009
Hi Dave,
Am Mittwoch, den 22.04.2009, 13:57 -0400 schrieb Dave Anderson:
> ----- "Michael Holzheu" <holzheu at linux.vnet.ibm.com> wrote:
> >
> > I thought that you where suggesting to search only in
> > <-S dir>/lib/modules.. and <-S dir>/usr/lib/debug/..
> >
> > As I said before, "mod -S <dir>" currently searches in all
> > subdirectories of <dir>.
>
> Right, that's what my follow-up email explained more thoroughly:
>
> > And just to clarify this further. When "mod -S [directory]" is entered,
> > the search will be made starting from [directory]. In other words,
> > it will not immediately append "/lib/modules" and "/usr/lib/debug/lib/modules"
> > onto [directory]. It's just that that's where they'll be found
> > if the double-rpm2cpio were done.
> >
> > Conceivably you could just dump all the .ko and .ko.debug files into
> > the one flat [directory], and it will find them right away.
>
> But that leads to another issue.
>
> Suppose a directory target was set up with double-rpm2cpio, such that,
> for example, the ext3.ko module would be found here:
>
> <target-dir>/lib/modules/2.6.18-128.el5/kernel/fs/ext3/ext3.ko
>
> The gdb algorithm currently searches for ext3.ko.debug in these 3
> directories, in this order:
>
> A. <target-dir>/lib/modules/2.6.18-128.el5/kernel/fs/ext3
> B. <target-dir>/lib/modules/2.6.18-128.el5/kernel/fs/ext3/.debug
> C. /usr/lib/debug/lib/modules/2.6.18-128.el5/kernel/fs/ext3
>
> So it doesn't find it in the "double-rpm2cpio" layout. And so my
> proposal would add this additional search path:
>
> D. <target-dir>/usr/lib/debug/lib/modules/2.6.18-128.el5/kernel/fs/ext3
>
> and it would find it. It's essentially "C", but with <target-dir>
> prepended to the search path.
>
> But it *does* require an analogous relative file tree layout.
>
> So if for example, all .ko and .ko.debug files were just dumped in
> the <target-dir>:
>
> (1) ext3.ko would be found in <target-dir>
> (2) ext3.ko.debug would be found in <target-dir> -- using gdb algorithm "A".
>
> But if ext3.ko was located in:
>
> <target-dir>/lib/modules/2.6.18-128.el5/kernel/fs/ext3
>
> then the proposed "D" algorithm would find ext3.ko.debug in:
>
> <target-dir>/usr/lib/debug/lib/modules/2.6.18-128.el5/kernel/fs/ext3
>
> But it would *only* find it in the directory above. And that's because
> the gdb algorithms create fully-qualified directory pathnames based
> upon the full path to the stripped .ko file, and then looks in those
> directories to accomplish "A", "B" and "C".
>
> So there would be that restriction as to the *relative* locations of
> the .ko and .ko.debug files. But I don't think that's really all that
> burdensome.
>
> Comments?
I think that's a good proposal!
Michael
More information about the Crash-utility
mailing list