[Crash-utility] crash can't read vmlinux on live system?

Kris Corwin Kris.Corwin at hp.com
Tue Feb 28 20:11:49 UTC 2006


Dave, thanks for your help.  The kernel hack appears
to be working.  I also wrote down the "--memory_module"
trick as a backup.

Kris

Dave Anderson wrote:
> Kris Corwin wrote:
>
>   
>> I built the crash driver into the kernel instead of as a module.
>>
>> I have now hacked devmem_is_allowed() to always
>> return 1 and am waiting for a build to see if that solved my problem.
>>
>> Kris
>>
>> --
>> Crash-utility mailing list
>> Crash-utility at redhat.com
>> https://www.redhat.com/mailman/listinfo/crash-utility
>>     
>
> Where there's a will there's a way...
>
> Another thing you might try is this:
>
>   # crash --memory_module /dev/crash vmlinux
>
> That might work... and if it does, it's better than /dev/mem because
> even with devmem_is_allowed() hacked, the mem.c driver only allows
> access to lowmem, which may be a problem if you want to debug
> kernel modules whose vmalloc'd memory comes from highmem.
>
> Either that, or also hack the mem.c driver's valid_phys_addr_range()
> function to allow physical addresses greater than "high_memory":
>
> static inline int valid_phys_addr_range(unsigned long addr, size_t *count)
> {
>          unsigned long end_mem;
>
>          end_mem = __pa(high_memory);
>          if (addr >= end_mem)
>                  return 0;
>
>          if (*count > end_mem - addr)
>                  *count = end_mem - addr;
>
>          return 1;
> }
>
>
> Dave
>
>
> --
> Crash-utility mailing list
> Crash-utility at redhat.com
> https://www.redhat.com/mailman/listinfo/crash-utility
>
>   




More information about the Crash-utility mailing list