|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] RE: [Xen-devel] Unknown interrupt on x86_64 Xen on ES7000 x86_64
Puthiyaparambil, Aravindh wrote:
>>> It looks like the page fault/interrupt is happening in map_alloc().
>>> I see that alloc_heap_pages() and map_alloc() are called before
>>> without any issues. Not sure why it is tripping up now. Any ideas?
>>
>> Not really. Perhaps some part of the bitmap is not properly mapped? I
>> think you'll have to add a bunch more tracing -- find out what
>> address is actually faulting and work backwards to see why it's not
>> mapped. If it looks like it should be valid then maybe look at the
>> code that is intended to 1:1 map all RAM, in
>> arch/x86/setup.c:__start_xen() (the code is wrapped in
>> CONFIG_x86_64).
>
> I found out that the "Unknown Interrupt" issue happens only when debug
> is turned on in Xen (verbose & debug=y in Rules.mk). When debug is
> turned off the systems dies in the middle of "Scrubbing Free RAM". I
> have attached a serial output of the boot messages
> (es7000_x86_64_nodebug_6065.txt). This could be Bugzilla #147.
> Should I be still trying to find the faulting address in the debug
> case?
>
I have the same problem "Unknown Interrupt" on a DP machine. Looks like
#PF is happening at => when xen is built with debug=y.
static void map_alloc(unsigned long first_page, unsigned long nr_pages)
{
...
curr_idx = first_page / PAGES_PER_MAPWORD;
start_off = first_page & (PAGES_PER_MAPWORD-1);
end_idx = (first_page + nr_pages) / PAGES_PER_MAPWORD;
end_off = (first_page + nr_pages) & (PAGES_PER_MAPWORD-1);
if ( curr_idx == end_idx )
{
alloc_bitmap[curr_idx] &= -(1UL<<end_off) |
((1UL<<start_off)-1);
}
else
{
alloc_bitmap[curr_idx] &= (1UL<<start_off)-1;
while ( ++curr_idx != end_idx ) alloc_bitmap[curr_idx] = 0;
=> alloc_bitmap[curr_idx] &= -(1UL<<end_off);
}
}
If I change
while ( ++curr_idx != end_idx - 1 ) alloc_bitmap[curr_idx] = 0;
I can work around it.
Jun
---
Intel Open Source Technology Center
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |