Re: Crash during vmcore_init

From: Tejun Heo
Date: Wed Nov 16 2011 - 23:34:41 EST


Hello,

On Wed, Nov 16, 2011 at 7:30 PM, Dave Young <dyoung@xxxxxxxxxx> wrote:
> This addr is converted to an invalid phys address,

I'm a bit lost on the context here. Who's calling per_cpu_ptr_to_phys()?

> looking the code below:
>       if (in_first_chunk) {
>                if (!is_vmalloc_addr(addr))
>                        return __pa(addr);
>                else
>                        return page_to_phys(vmalloc_to_page(addr));
>        } else
>                return page_to_phys(pcpu_addr_to_page(addr));
>
> I dont understand per cpu allocation well, if addr is not in first chunk
> then it should be in vmalloc area?

Yes, it is. First chunk can be embedded in the kernel linear address
space but from the second one, it's always set up from the top of the
vmalloc area with the same offset layout as the first chunk.

> Tejun, do you have any idea about this?

Can you please tell me how to reproduce the problem? I'll try to find
out what's going on.

Thanks.

--
tejun
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/