Re: Hardwired drivers are going away?

Keith Owens
2002-01-21T03:43:42Z

On Sun, 20 Jan 2002 18:56:34 -0800,
Andrew Morton <akpm@zip.com.au> wrote:
>I'm not aware of anyone getting kgdb working fully with modules.

kgdb has a script that tells gdb where each module is loaded. AFAIK it
uses add-symbol-file FILENAME -sSECTION ADDRESS, the __insmod entries
contain enough data to tell gdb what is going on.

>Proper crash analysis needs to know the load address of each module
>at the time of the crash. We should print them out at Oops time.

You need 13 bits of data per module. Where each of text, rodata, data
and bss sections were loaded, you cannot assume they are contiguous.
The length of those four sections. Where the module is on disk, you
cannot assume the object name is the same as the module name, insmod
-o. The timestamp and kernel version of the module when it was loaded,
to detect updates after the event. All of that is encoded in the
__insmod entries in /proc/ksyms, 5 lines per module.

>> That is a different problem. Saying that modular kernels cause
>> problems for debugging is not a good enough reason to deprecate modular
>> kernels, all the problems have been solved.
>
>They are patently *not* solved, because we continue to get a
>stream of partially and competely useless oops reports.

Rule 1. Users do not read documentation.
Rule 2. You can't do anything about rule 1.

If you want complete bug reports, write a script that forces the user
to submit all the required data. Why do I feel the "Linux should have
a bug reporting system" thread starting again?