On 11/19/2015 08:37 AM, David Mair wrote:
 On 11/19/2015 07:45 AM, Dave Anderson wrote:
 
 Hi Dave,
 
> ----- Original Message -----
 <snip>
>
>> (2) Execute "crash -d8" on physical machine will cause crash utility
core
>> dump.
>
> I can reproduce this, so I'll look into it.  It's related to the /dev/mem
"test"
> to determine whether the kernel was configured with CONFIG_STRICT_DEVMEM, where
> it tries to read from pfn 257 (just above the CONFIG_STRICT_DEVMEM limit), but
> gets into an infinite loop when used in conjunction with -d.   
>
> Anyway, just continue to use /proc/kcore and you should be fine.
 
 This is the cause in readmem():
 
 switch(READMEM(...))
 {
 	.
 	.
 	.
 case READ_ERROR:
 	if (PRINT_ERROR_MESSAGE) ********** THIS ***********
 	{
 		causes a nested readmem() call before the goto gives it
 		to the caller to deal with
 	}
 	goto readmem_error
 }
 	.
 	.
 	.
 switch(error_handle)
 {
 	case (RETURN_ON_ERROR):
 }
 
 The PRINT_ERROR_MESSAGE I assume is an escalation from -d 8 in this case.
  
The whole switch_to_proc_kcore() probably shouldn't be conditional on
the presence of PRINT_ERROR_MESSAGE, only the actual error message
should be.
Patch shortly.
-- 
David.