l4-hackers
Threads by month
- ----- 2026 -----
- May
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2005 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2004 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2003 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2002 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2001 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2000 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 1999 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 1998 -----
- December
- November
- October
- 2 participants
- 2885 discussions
Many thanks for your response.
Yes, reading valid addresses from l4linux within the aips1 region hangs including
CCM_CCR.
The fiasco kernel does have read access;
Aips1[0]: 77777777
Aips1[1]: 77777777
MXC_CCM_CCR: 000016ff
Aips1[0] and Aips1[1] contain the mprot fields for the 16 bus masters
reachable via Aips1. The values 0x77777777 for both fields are set
by u-boot (reset value according to imx53RM 0x0700000/0x00000000).
Additional information from the debugger <latter part of kc output>:
Control Register: 00c5387d
Auxiliary Control Register: 00000000
Coprocessor Access Control Reg: 00f00000
Secure Configuration Register: 00000000
Secure Debug Enable Register: 00000000
Non-Secure Access Control Reg: 00000000
Translation Table Base Reg 0: 7006c000
Translation Table Base Reg 1: 00000000
Translation Table Base Control Reg: 00000000
Domain Access Control Register: 00000001
Data Fault Status Register: 00001008
Instruction Fault Status Register: 00000007
Fault Address Register: 109d4000
Instruction Fault Address Register: a8008ddc
Interesting to note that the FAR contains the VA for the read that
hangs. I'm not sure where the instruction lies -- it would be great if
we were able to get at kallsyms at runtime to obtain symbol <entry point/function id>.
Data fault status register suggests "precise external abort" if I'm
interpreting the bitmap correctly according to ARM RM.
Are there any particular flags to the IO allocation request that should
be used other than non-cacheable ?
thanks,
Andy
On Fri Aug 03, 2012 at 19:22:24 -0700, Andy Wagner wrote:
> We have a minimal fiasco/l4re/l4linux port running on Freescale i.MX53QSB.
> Uart (console), tzic, epit and wdog appear to be working.
>
> We are now proceeding to port migrate some native drivers (eg., FEC) for QSB into
> l4linux.
>
> We have run into an issue with access to IO regions:
> - aips1 region is defined in IO map and virtual to physical mappings are handled via callback in mach_setup <similar to dmamem_cb>.
> - virtual memory is apparently being assigned.
> We have attempted IO with varying size map/requests down to 4k page. Results are similar
> regardless of size of requested region.
>
> Attempt to read from IO region at assigned virtual location causes the kernel to hang.
> Escaping to debugger <esc> and checking both virtual and physical address for IO area reveal same contents -- which suggests that the mapping exists.
>
> The question is why does the kernel hang ?
>
> Part of boot log below:
> Calling predefined callback for device 'aips1'.
> IO | new iomem region: p=53c00000 v=c00000 s=400000 (bmb=0x3650)
> IO | map mem: p=53f00000 v=f00000 s=100000: done
> aips1 mem phys at 53f00000 - 53ffffff
> aips1 mem virt at 08500000 - 085fffff
> Added static device 'aips2' with 1 resources.
> Calling predefined callback for device 'dmamem'.
> DMA mem phys at 703be000 - 70bbdfff
> DMA mem virt at 10900000 - 110fffff
> dmamem_cb: dma_alloc_coherent: va: 10900000 phys: 703be000
> init_l4: about to read(va): 085d4018
>
> VA 85d4018/53fd4018 is CCM_CBCMR <a clock control register, several of
> which need to be set up by initialisation code in order to bring up
> devices such as FEC>.
I supposed that reading any other register such as CCM_CCR also hangs?
Does access to this area works from within the kernel?
> We have confirmed that writes/read for dmamem virtual addresses appear
> in physical equivalent.
>
> l4linux is configured as arm7; fiasco as cortex/a8.
>
> The entire aips1 region has been mapped by fiasco as well -- because
> fiasco only maps 1M segments and requires access to aips1 <etc> in
> order to have uart, clock, tzic. Does fiasco page create a conflict
> for IO ?
No, that's not a problem.
> We also tried to map physical memory transparently to native imx53
> layout using create_mapping(). Access via mappings established this
> way result in unresolved page faults. Drivers and IO maps will not
> port without significant hassle unless we are able to specify
> virt/phys mappings.
>
> Behaviour of the kernel suggests that page faults are not being handled.
You mean the Linux original virtual addresses? Those are above 3G and
thus this cannot work. So the figures would have to be changed anyway.
create_mapping also will not create an L4 mapping. Specifying a virtual
address will work with l4io_request_iomem_region().
Adam
--
Adam adam at os.inf.tu-dresden.de
Lackorzynski http://os.inf.tu-dresden.de/~adam/
2
1
Dear all,
I have been working on running different linux based OSs on top of L4.
Is there any documentation or tutorial where I might find information on how to make platform devices available for the linux OS running on top of L4. For instance, I could not get ethernet devices detected by the OS.
Best Regards
2
6
We have a minimal fiasco/l4re/l4linux port running on Freescale i.MX53QSB.
Uart (console), tzic, epit and wdog appear to be working.
We are now proceeding to port migrate some native drivers (eg., FEC) for QSB into
l4linux.
We have run into an issue with access to IO regions:
- aips1 region is defined in IO map and virtual to physical mappings are handled via callback in mach_setup <similar to dmamem_cb>.
- virtual memory is apparently being assigned.
We have attempted IO with varying size map/requests down to 4k page. Results are similar
regardless of size of requested region.
Attempt to read from IO region at assigned virtual location causes the kernel to hang.
Escaping to debugger <esc> and checking both virtual and physical address for IO area reveal same contents -- which suggests that the mapping exists.
The question is why does the kernel hang ?
Part of boot log below:
Calling predefined callback for device 'aips1'.
IO | new iomem region: p=53c00000 v=c00000 s=400000 (bmb=0x3650)
IO | map mem: p=53f00000 v=f00000 s=100000: done
aips1 mem phys at 53f00000 - 53ffffff
aips1 mem virt at 08500000 - 085fffff
Added static device 'aips2' with 1 resources.
Calling predefined callback for device 'dmamem'.
DMA mem phys at 703be000 - 70bbdfff
DMA mem virt at 10900000 - 110fffff
dmamem_cb: dma_alloc_coherent: va: 10900000 phys: 703be000
init_l4: about to read(va): 085d4018
VA 85d4018/53fd4018 is CCM_CBCMR <a clock control register, several of which need to be set up by initialisation code in order to bring up devices such as FEC>.
We have confirmed that writes/read for dmamem virtual addresses appear in physical equivalent.
l4linux is configured as arm7; fiasco as cortex/a8.
The entire aips1 region has been mapped by fiasco as well -- because fiasco only maps 1M segments and requires access to aips1 <etc> in order to have uart, clock, tzic. Does fiasco page create a
conflict for IO ?
We also tried to map physical memory transparently to native imx53 layout using create_mapping(). Access via mappings established this way result in unresolved page faults. Drivers and IO maps will
not port without significant hassle unless we are able to specify virt/phys mappings.
Behaviour of the kernel suggests that page faults are not being handled.
Any help is appreciated.
thanks in advance,
Andy
2
1
I just remove the statement "msr cpsr_c,r7". But It just doesn't Work. And If I change the code to the following:
I set the vcpu_state_t registers as following :
vcpu->r()->r[6]=(l4_umword_t)exit_map_addr;
vcpu->r()->r[4]=(l4_umword_t)(idle_stack+sizeof(idle_stack)-1); vcpu->r()->ip =(l4_umword_t)super_code_map_addr; vcpu->r()->r[5] = (l4_umword_t)idle_code_map_addr; vcpu->r()->sp = (l4_umword_t)0x30000;
and I change the my_super_code :
asm ( ".pushsection .text\n" ".p2align 12 \t\n" ".global my_super_code \t\n" "my_super_code: \t\n"
" swi 0 \t\n"
" mov sp, r4 \t\n"" mov lr, r6 \t\n"" mov pc, r5 \t\n"".popsection");
and still, it doesn't work.And The vcpu upcall function
will be called again and again.
2012-08-03
raylei0825ssdut
发件人:l4-hackers-request
发送时间:2012-08-03 18:00
主题:l4-hackers Digest, Vol 112, Issue 3
收件人:"l4-hackers"<l4-hackers(a)os.inf.tu-dresden.de>
抄送:
Send l4-hackers mailing list submissions to
l4-hackers(a)os.inf.tu-dresden.de
To subscribe or unsubscribe via the World Wide Web, visit
http://os.inf.tu-dresden.de/mailman/listinfo/l4-hackers
or, via email, send a message with subject or body 'help' to
l4-hackers-request(a)os.inf.tu-dresden.de
You can reach the person managing the list at
l4-hackers-owner(a)os.inf.tu-dresden.de
When replying, please edit your Subject line so it is more specific
than "Re: Contents of l4-hackers digest..."
Today's Topics:
1. Re: vcpu example problem (Adam Lackorzynski)
----------------------------------------------------------------------
Message: 1
Date: Thu, 2 Aug 2012 22:14:21 +0200
From: Adam Lackorzynski <adam(a)os.inf.tu-dresden.de>
To: l4-hackers(a)os.inf.tu-dresden.de
Subject: Re: vcpu example problem
Message-ID: <20120802201421.GA7129(a)os.inf.tu-dresden.de>
Content-Type: text/plain; charset=iso-8859-1
Hi,
On Thu Aug 02, 2012 at 11:14:34 +0800, ?????? wrote:
> Hi,
> I am trying to modify the vcpu example of l4re-snapshot to
> switch registers to execute my C function.But It doesn't work.
> I have read some papers about l4linux tranplantion.and follow it .
> To switch the process, I fill the vcpu_state_t structure with
> its registers.and call vcpu_resume_commit action.Then Jump to the ASM
> Code.
> But problem arises when I want to jump from asm code to C
> function. What's the Problem? The Code is as following:
> #define SVC_MODE 0x00000013
> #define USR_MODE 0x00000010
>
> asm volatile
> (
> ".pushsection .text\n"
> ".p2align 12 \t\n"
> ".global my_super_code \t\n"
> "my_super_code: \t\n"
> " msr cpsr_c, r7\t\n"
> " mov lr, r6 \t\n"
> " mov pc, r5 \t\n"
> //" b my_super_code \t\n"
> ".popsection"
> );
I think the problem is not the jump but the msr, which you cannot do in
user-land and which you probably can safely remove.
Adam
--
Adam adam(a)os.inf.tu-dresden.de
Lackorzynski http://os.inf.tu-dresden.de/~adam/
------------------------------
_______________________________________________
l4-hackers mailing list
l4-hackers(a)os.inf.tu-dresden.de
http://os.inf.tu-dresden.de/mailman/listinfo/l4-hackers
End of l4-hackers Digest, Vol 112, Issue 3
******************************************
2
1
Hi,
I am trying to modify the vcpu example of l4re-snapshot to
switch registers to execute my C function.But It doesn't work.
I have read some papers about l4linux tranplantion.and follow it .
To switch the process, I fill the vcpu_state_t structure with
its registers.and call vcpu_resume_commit action.Then Jump to the ASM
Code.
But problem arises when I want to jump from asm code to C
function. What's the Problem? The Code is as following:
/*
* (c) 2009 Technische Universität Dresden
* This file is part of TUD:OS, which is distributed under the terms of the
* GNU General Public License 2. Please see the COPYING file for details.
*/
#include <l4/sys/ipc.h>
#include <l4/sys/thread>
#include <l4/sys/factory>
#include <l4/sys/scheduler>
#include <l4/sys/utcb.h>
#include <l4/sys/kdebug.h>
#include <l4/util/util.h>
#include <l4/re/env>
#include <l4/re/util/cap_alloc>
#include <l4/re/util/kumem_alloc>
#include <l4/sys/debugger.h>
#include <l4/vcpu/vcpu>
#include <l4/cxx/iostream>
#include <l4/re/error_helper>
#include <l4/sys/task>
#include <l4/sys/irq>
#include <l4/sys/vcpu.h>
#include <cstdlib>
#include <cstdio>
#include <cstring>
#define PSR_T_BIT 0x00000000
#define SVC_MODE 0x00000013
#define PSR_E_BIT 0x00000200
#define PSR_I_BIT 0x00000000
#define USR_MODE 0x00000010
using L4Re::chksys;
using L4Re::chkcap;
static L4::Cap<L4::Irq> irq;
static char thread_stack[8 << 10];
static char hdl_stack[8 << 10];
static char idle_stack[8<<10];
static L4::Cap<L4::Task> vcpu_task;
static L4vcpu::Vcpu *vcpu;
const l4_addr_t super_code_map_addr = 0x10000;
const l4_addr_t idle_code_map_addr = 0x20000;
const l4_addr_t stack_map_addr = 0x12000;
const l4_addr_t exit_map_addr=0x13000;
extern char my_super_code[];
extern char my_super_code_excp[];
extern char my_super_code_excp_after[];
extern char exit_code[];
void idle_code(void)
{
;
while(1)
{
__asm__ volatile("swi 0");
l4_sleep(500);
}
}
asm(
".global exit_code \t\n"
"exit_code: \t\n"
"b exit_code \t\n"
);
asm volatile
(
".pushsection .text\n"
".p2align 12 \t\n"
".global my_super_code \t\n"
"my_super_code: \t\n"
" msr cpsr_c, r7\t\n"
" mov lr, r6 \t\n"
" mov pc, r5 \t\n"
//" b my_super_code \t\n"
".popsection"
);
static void setup_user_state_arch(L4vcpu::Vcpu *) { }
static void handler_prolog() {}
static void handler(void)
{
handler_prolog();
vcpu->state()->clear(L4_VCPU_F_EXCEPTIONS);
printf("hello handler\n");
//vcpu->print_state();
// very simple page-fault handling
// we're just replying with the only page we have, without checking any
// values
if (vcpu->is_page_fault_entry())
{
printf("page fault\n");
vcpu_task->map(L4Re::This_task, l4_fpage((l4_addr_t)my_super_code,
L4_PAGESHIFT, L4_FPAGE_RWX),
super_code_map_addr);
vcpu_task->map(L4Re::This_task, l4_fpage((l4_addr_t)idle_code,
L4_PAGESHIFT, L4_FPAGE_RWX),
idle_code_map_addr);
vcpu_task->map(L4Re::This_task, l4_fpage((l4_addr_t)exit_code,
L4_PAGESHIFT, L4_FPAGE_RWX),
exit_map_addr);
vcpu->saved_state()->add(L4_VCPU_F_PAGE_FAULTS);
}
else if (vcpu->is_irq_entry())
{
// We use the label 2000 for our IRQ
if (vcpu->i()->label == 2000)
printf("Our triggered IRQ\n");
else if (vcpu->i()->label == 0)
// direct IPC message to vCPU without
// going through an IPCgate, label is set to 0
printf("IPC: %lx\n", vcpu->i()->tag.label());
else
printf("Unclassifiable message\n");
}
else
printf("unhandled exception\n");
printf("resume\n");
L4::Cap<L4::Thread> self;
self->vcpu_resume_commit(self->vcpu_resume_start());
//vcpu->state()->set(0);
while(1)
;
}
static void vcpu_thread(void)
{
printf("Hello vCPU\n");
l4_umword_t label;
memset(hdl_stack, 0, sizeof(hdl_stack));
//memset(super_stack,0,sizeof(super_stack));
// memset(idle_stack,0,sizeof(idle_stack));
setup_user_state_arch(vcpu);
l4_touch_rw(stack,sizeof(stack));
l4_touch_rw(idle_stack,sizeof(idle_stack));
vcpu->saved_state()->set(L4_VCPU_F_USER_MODE
| L4_VCPU_F_EXCEPTIONS
| L4_VCPU_F_PAGE_FAULTS
| L4_VCPU_F_IRQ);
vcpu->r()->flags=(l4_umword_t)SVC_MODE;
vcpu->r()->r[7]=(l4_umword_t)SVC_MODE;
vcpu->r()->r[0]=(l4_umword_t)0;
vcpu->r()->r[4]=(l4_umword_t)(idle_stack+sizeof(idle_stack)-1);
vcpu->r()->r[6]=(l4_umword_t)exit_map_addr;
vcpu->r()->ip =(l4_umword_t)super_code_map_addr;
vcpu->r()->r[5] = (l4_umword_t)idle_code_map_addr;
vcpu->r()->sp = (l4_umword_t)0x30000;
L4::Cap<L4::Thread> self;
printf("IRET\n");
vcpu->task(vcpu_task);
self->vcpu_resume_commit(self->vcpu_resume_start());
printf("IRET: failed!\n");
while(1);
}
int run(void)
{
l4_utcb_t *u = l4_utcb();
L4::Cap<L4::Thread> vcpu_cap;
printf("vCPU example\n");
l4_debugger_set_object_name(l4re_env()->main_thread, "vcputest");
// new task
vcpu_task = chkcap(L4Re::Util::cap_alloc.alloc<L4::Task>(),
"Task cap alloc");
chksys(L4Re::Env::env()->factory()->create_task(vcpu_task,
l4_fpage_invalid()),
"create task");
l4_debugger_set_object_name(vcpu_task.cap(), "vcpu 'user' task");
/* new thread/vCPU */
vcpu_cap = chkcap(L4Re::Util::cap_alloc.alloc<L4::Thread>(),
"vCPU cap alloc");
l4_touch_rw(thread_stack, sizeof(thread_stack));
//l4_touch_rw(hdl_stack,sizeof(hdl_stack));
chksys(L4Re::Env::env()->factory()->create_thread(vcpu_cap), "create thread");
l4_debugger_set_object_name(vcpu_cap.cap(), "vcpu thread");
// get an IRQ
irq = chkcap(L4Re::Util::cap_alloc.alloc<L4::Irq>(),
"Irq cap alloc");
chksys(L4Re::Env::env()->factory()->create_irq(irq), "irq");
l4_debugger_set_object_name(irq.cap(), "some irq");
// get memory for vCPU state
l4_addr_t kumem;
if (0)
kumem = (l4_addr_t)l4re_env()->first_free_utcb;
else
{
if (L4Re::Util::kumem_alloc(&kumem, 0))
exit(1);
}
l4_utcb_t *vcpu_utcb = (l4_utcb_t *)kumem;
vcpu = L4vcpu::Vcpu::cast(kumem + L4_UTCB_OFFSET);
vcpu->entry_sp((l4_umword_t)hdl_stack + sizeof(hdl_stack));
vcpu->entry_ip((l4_umword_t)handler);
printf("VCPU: utcb = %p, vcpu = %p\n", vcpu_utcb, vcpu);
// Create and start vCPU thread
L4::Thread::Attr attr;
attr.pager(L4::cap_reinterpret_cast<L4::Thread>(L4Re::Env::env()->rm()));
attr.exc_handler(L4Re::Env::env()->main_thread());
attr.bind(vcpu_utcb, L4Re::This_task);
chksys(vcpu_cap->control(attr), "control");
chksys(vcpu_cap->vcpu_control((l4_addr_t)vcpu), "enable VCPU");
chksys(vcpu_cap->ex_regs((l4_umword_t)vcpu_thread,
(l4_umword_t)thread_stack + sizeof(thread_stack),
0));
chksys(L4Re::Env::env()->scheduler()->run_thread(vcpu_cap,
l4_sched_param(2)));
// Attach irq to our vCPU thread
chksys(irq->attach(2000, vcpu_cap));
// Send some IPCs to the vCPU
l4_sleep(10);
while (1)
{
// printf("triger irq\n");
// irq->trigger();
l4_sleep(500);
}
l4_sleep_forever();
return 0;
}
int main()
{
try { return run(); }
catch (L4::Runtime_error &e)
{
L4::cerr << "FATAL uncought exception: " << e
<< "\nterminating...\n";
}
catch (...)
{
L4::cerr << "FATAL uncought exception of unknown type\n"
<< "terminating...\n";
}
return 1;
}
2
1
Hi,
I have tried what you suggested(disable PERF Events) and now
I can successfully run l4linux on Intel Atom board.
But when I am compiling l4linux with Intel Graphics Card enabled
I am getting this error:
GEN /home/mayuresh/L4/build/x86-201205290429-l4linux/Makefile
scripts/kconfig/mconf Kconfig
*** End of the configuration.
*** Execute 'make' to start the build or try 'make help'.
GEN /home/mayuresh/L4/build/x86-201205290429-l4linux/Makefile
scripts/kconfig/conf --silentoldconfig Kconfig
GEN /home/mayuresh/L4/build/x86-201205290429-l4linux/Makefile
CHK include/linux/version.h
Using /home/mayuresh/L4/src/l4linux as source for kernel
CHK include/generated/utsrelease.h
CALL /home/mayuresh/L4/src/l4linux/scripts/checksyscalls.sh
CHK include/generated/compile.h
VDSOSYM arch/l4/../x86/vdso/vdso32-int80-syms.lds
VDSOSYM arch/l4/../x86/vdso/vdso32-sysenter-syms.lds
VDSOSYM arch/l4/../x86/vdso/vdso32-syms.lds
LD arch/l4/../x86/vdso/built-in.o
LD arch/l4/built-in.o
LD vmlinux.o
MODPOST vmlinux.o
WARNING: modpost: Found 1 section mismatch(es).
To see full details build your kernel with:
'make CONFIG_DEBUG_SECTION_MISMATCH=y'
GEN .version
CHK include/generated/compile.h
UPD include/generated/compile.h
CC init/version.o
LD init/built-in.o
LD .tmp_vmlinux1
drivers/built-in.o: In function `io_mapping_create_wc':
/home/mayuresh/L4/src/l4linux/include/linux/io-mapping.h:60: undefined
reference to `iomap_create_wc'
drivers/built-in.o: In function `io_mapping_free':
/home/mayuresh/L4/src/l4linux/include/linux/io-mapping.h:77: undefined
reference to `iomap_free'
/home/mayuresh/L4/src/l4linux/include/linux/io-mapping.h:77: undefined
reference to `iomap_free'
drivers/built-in.o: In function `io_mapping_map_atomic_wc':
/home/mayuresh/L4/src/l4linux/include/linux/io-mapping.h:92: undefined
reference to `iomap_atomic_prot_pfn'
drivers/built-in.o: In function `io_mapping_unmap_atomic':
/home/mayuresh/L4/src/l4linux/include/linux/io-mapping.h:98: undefined
reference to `iounmap_atomic'
drivers/built-in.o: In function `io_mapping_map_atomic_wc':
/home/mayuresh/L4/src/l4linux/include/linux/io-mapping.h:92: undefined
reference to `iomap_atomic_prot_pfn'
drivers/built-in.o: In function `io_mapping_unmap_atomic':
/home/mayuresh/L4/src/l4linux/include/linux/io-mapping.h:98: undefined
reference to `iounmap_atomic'
/home/mayuresh/L4/src/l4linux/include/linux/io-mapping.h:98: undefined
reference to `iounmap_atomic'
drivers/built-in.o: In function `io_mapping_map_atomic_wc':
/home/mayuresh/L4/src/l4linux/include/linux/io-mapping.h:92: undefined
reference to `iomap_atomic_prot_pfn'
/home/mayuresh/L4/src/l4linux/include/linux/io-mapping.h:92: undefined
reference to `iomap_atomic_prot_pfn'
drivers/built-in.o: In function `io_mapping_unmap_atomic':
/home/mayuresh/L4/src/l4linux/include/linux/io-mapping.h:98: undefined
reference to `iounmap_atomic'
make[1]: *** [.tmp_vmlinux1] Error 1
make: *** [sub-make] Error 2
Anand Mayuresh Vivekanand
2
1
Get lost in Fiasco.OC regarding the io-apic IRQ number and CPU interrupt numbers
by Chen Tian 31 Jul '12
by Chen Tian 31 Jul '12
31 Jul '12
Hello,
As confirmed by Udo, I thought the vector of an IO-APIC pin is the one used
to index idt, which is from 0x20-0x37. But I just checked the idt using
kernel debugger and found that many entries between 0x20 and 0x37 are
marked as reserved. Several defined ones can be found in entry.S. However,
I noticed that 48 entries from 0x50 to 0x7f are actually defined. Are those
for the 48 pins in my two IO-APICs? Why have the vectors changed? And
where can I found the corresponding CPU interrupt handlers?
Another thing that confuses me is that th function "irq_interrupt" in file
"dirq-ia32-ux.cpp". Where does it get called? I found one call site in
entry.S, which seems to use an interrupt number (int - 0x20) as the first
parameter. But why this number is used as a pointer that pointing to an irq
object?
I must have missed something. I would really appreciate it if someone can
answer my questions. Thanks.
Best,
Chen
2
1
Hello,
I have some basic questions about IO-APIC. In the boot-up message, I can
see this:
IO-APIC[ 0]: pins 23
PIN[ 0m]: vector=20, del=0, dm=physical, dest=0 (high, edge)
PIN[ 1m]: vector=21, del=0, dm=physical, dest=0 (high, edge)
PIN[ 2m]: vector=22, del=0, dm=physical, dest=0 (high, edge)
I understand this info is from IO-APIC redirection table. My question is
what does vector means? Is that the interrupt number CPU is going to see
when an interrupt request is sent from a pin? Or it's an irq number
assigned to an IO-APIC pin?
Thanks.
Best,
Chen
3
5
Hello,
I was trying to build L4,L4RE, L4Linux for the Intel atom board.
I tried to build everything from the scratch.
But I am not able to boot l4linux on intel atom.
The same image if I am running on QEMU then it is working.
I don't know what I am doing wrong.
Pleas Help.
The difference that I can see while running on QEMU and Intel Atom is:
QEMU:
CPU0: AMD QEMU Virtual CPU version 1.0 stepping 03
Performance Events: l4linux | WARNING: Unknown rdmsr: c0010000 at 0x6d529f
l4linux | WARNING: Unknown rdmsr: c0010001 at 0x6d529f
l4linux | WARNING: Unknown rdmsr: c0010002 at 0x6d529f
l4linux | WARNING: Unknown rdmsr: c0010003 at 0x6d529f
l4linux | WARNING: Unknown wrmsr: c0010004 at 0x6d531d
l4linux | WARNING: Unknown rdmsr: c0010004 at 0x6d532f
Broken PMU hardware detected, using software events only.
Brought up 1 CPUs
Total of 1 processors activated (2877.82 BogoMIPS).
bio: create slab <bio-0> at 0
vgaarb: loaded
SCSI subsystem initialized
PCI: L4 root bridge is device 1b390
vgaarb: device added: PCI:0000:00:01.0,decodes=io+mem,owns=io+mem,locks=none
Intel Atom:
CPU0: Intel(R) Atom(TM) CPU 330 @ 1.60GHz stepping 02
Performance Events: l4linux | WARNING: Unknown rdmsr: 00000345 at 0x6d4c3a
no PEBS fmt3+, Atom events, l4linux | WARNING: Unknown rdmsr: 00000186 at
0x6d529f
l4linux | WARNING: Unknown rdmsr: 00000187 at 0x6d529f
l4linux | WARNING: Unknown rdmsr: 0000038d at 0x6d52d2
Broken BIOS detected, complain to your hardware vendor.
[Firmware Bug]: the BIOS has corrupted hw-PMU resources (MSR 38d is
b30006000000038d)
Intel PMU driver.
l4linux | Page fault (non-resolved): pfa=1e3342 pc=416170
l4linux | Page fault (non-resolved): pfa=1a8 pc=493e6b
Die message: Trap: 14
Trap: 14: 0004 [#1] SMP
Modules linked in:
Below is the complete log file(Intel Atom):
mayuresh@mayuresh:~/L4$ sudo picocom -b 115200 /dev/ttyUSB0
[sudo] password for mayuresh:
picocom v1.4
port is : /dev/ttyUSB0
flowcontrol : none
baudrate is : 115200
parity is : none
databits are : 8
escape is : C-a
noinit is : no
noreset is : no
nolock is : no
send_cmd is : ascii_xfr -s -v -l10
receive_cmd is : rz -vv
Terminal ready
L4 Bootstrapper
Build: #4 Tue Jul 24 20:56:27 CEST 2012, x86-32, 4.6.3
RAM: 0000000000000000 - 000000000008efff: 572kB
RAM: 0000000000100000 - 000000007f5c7fff: 2085664kB
RAM: 000000007f5d4000 - 000000007f65ffff: 560kB
RAM: 000000007f6f0000 - 000000007f6f2fff: 12kB
RAM: 000000007f6ff000 - 000000007f6fffff: 4kB
Total RAM: 2037MB
Moving 11 modules to 1100000 with offset ded000
moving module 11 { 1814000-19814000 } -> { 2601000-1a601000 }
moving module 10 { 133a000-1813ea7 } -> { 2127000-2600ea7 }
moving module 09 { 1339000-133931c } -> { 2126000-212631c }
moving module 08 { 1338000-133848d } -> { 2125000-212548d }
moving module 07 { 942000-1337e43 } -> { 172f000-2124e43 }
moving module 06 { 941000-94139b } -> { 172e000-172e39b }
moving module 05 { 711000-940c5f } -> { 14fe000-172dc5f }
moving module 04 { 5ec000-710565 } -> { 13d9000-14fd565 }
moving module 03 { 3ce000-5eb781 } -> { 11bb000-13d8781 }
moving module 02 { 37a000-3cd525 } -> { 1167000-11ba525 }
moving module 01 { 313000-3798e0 } -> { 1100000-11668e0 }
Scanning /fiasco -serial_esc
Scanning /sigma0
Scanning /moe rom/linux-x2-pci.cfg
Bootloader MMAP:
[ 0, 8f000) RAM (1)
[ 8f000, a0000) reserved (2)
[ e0000, 100000) reserved (2)
[ 100000, 7f5c8000) RAM (1)
[ 7f5c8000, 7f5d4000) reserved (2)
[ 7f5d4000, 7f660000) RAM (1)
[ 7f660000, 7f6f0000) ACPI NVS (4)
[ 7f6f0000, 7f6f3000) RAM (1)
[ 7f6f3000, 7f6ff000) ACPI (3)
[ 7f6ff000, 7f700000) RAM (1)
[ 7f700000, 7f800000) reserved (2)
[ 7f800000, 80000000) reserved (2)
[ f0000000, f0000000) reserved (2)
[ f0000000, f8000000) reserved (2)
[ f8000000, fff80000) reserved (2)
[ fff80000, fffff000) reserved (2)
[ fffff000, 100000000) reserved (2)
Relocated mbi to [0x2dd000-0x2dd1a5]
Loading /fiasco
Loading /sigma0
Loading /moe
find kernel info page...
found kernel info page at 0x400000
Regions of list regions
[ 0, fff] { 1000} Arch BIOS
[ 8f000, 9ffff] { 11000} Arch BIOS
[ e0000, fffff] { 20000} Arch BIOS
[ 100000, 10b197] { b198} Sigma0 /sigma0
[ 140000, 18d23f] { 4d240} Root /moe
[ 2d0000, 2e13e7] { 113e8} Boot bootstrap
[ 2dd000, 2dd2a2] { 2a3} Root Multiboot info
[ 300000, 38ffff] { 90000} Kern /fiasco
[ 400000, 46bfff] { 6c000} Kern /fiasco
[ 13d9000, 1a600fff] { 19228000} Root Modules Memory
[ 7f5c8000, 7f5d3fff] { c000} Arch BIOS
[ 7f660000, 7f6effff] { 90000} Arch BIOS
[ 7f6f3000, 7f6fefff] { c000} Arch BIOS
[ 7f700000, 7fffffff] { 900000} Arch BIOS
[ f0000000, ffffffff] { 10000000} Arch BIOS
API Version: (87) experimental
Sigma0 config ip:001001dc sp:002dca50
Roottask config ip:001401c4 sp:00000000
Starting kernel /fiasco at 0030090c
Welcome to Fiasco.OC (ia32)!
L4/Fiasco.OC ia32 microkernel (C) 1998-2011 TU Dresden
Rev: r38 compiled with gcc 4.6.3 for Intel Pentium Pro []
Build: #5 Wed Jul 25 15:54:44 CEST 2012
Performance-critical config option(s) detected:
CONFIG_NDEBUG is off
Superpages: yes
Kmem:: cpu page at 7f3e2000 (4096Bytes)
ACPI-Init
ACPI: RSDP[0xfe020] r00 OEM:INTEL.
ACPI: RSDT[0x202fd038] r01 OEM:INTEL. OEMTID:D945GLF2
ACPI: FACP[0x202fc000] r01 OEM:INTEL. OEMTID:D945GLF2
ACPI: APIC[0x202f6000] r01 OEM:INTEL. OEMTID:D945GLF2
ACPI: WDDT[0x202f5000] r01 OEM:INTEL. OEMTID:D945GLF2
ACPI: MCFG[0x202f4000] r01 OEM:INTEL. OEMTID:D945GLF2
ACPI: ASF.[0x202f3000] r20 OEM:INTEL. OEMTID:D945GLF2
IO-APIC: MADT = 0x202f6000
IO-APIC[ 0]: struct: 0x202f604c adr=fec00000
IO-APIC[ 0]: pins 24
PIN[ 0m]: vector=20, del=0, dm=physical, dest=0 (high, edge)
PIN[ 1m]: vector=21, del=0, dm=physical, dest=0 (high, edge)
PIN[ 2m]: vector=22, del=0, dm=physical, dest=0 (high, edge)
PIN[ 3m]: vector=23, del=0, dm=physical, dest=0 (high, edge)
PIN[ 4m]: vector=24, del=0, dm=physical, dest=0 (high, edge)
PIN[ 5m]: vector=25, del=0, dm=physical, dest=0 (high, edge)
PIN[ 6m]: vector=26, del=0, dm=physical, dest=0 (high, edge)
PIN[ 7m]: vector=27, del=0, dm=physical, dest=0 (high, edge)
PIN[ 8m]: vector=28, del=0, dm=physical, dest=0 (high, edge)
PIN[ 9m]: vector=29, del=0, dm=physical, dest=0 (high, edge)
PIN[10m]: vector=2a, del=0, dm=physical, dest=0 (high, edge)
PIN[11m]: vector=2b, del=0, dm=physical, dest=0 (high, edge)
PIN[12m]: vector=2c, del=0, dm=physical, dest=0 (high, edge)
PIN[13m]: vector=2d, del=0, dm=physical, dest=0 (high, edge)
PIN[14m]: vector=2e, del=0, dm=physical, dest=0 (high, edge)
PIN[15m]: vector=2f, del=0, dm=physical, dest=0 (high, edge)
PIN[16m]: vector=30, del=0, dm=physical, dest=0 (high, edge)
PIN[17m]: vector=31, del=0, dm=physical, dest=0 (high, edge)
PIN[18m]: vector=32, del=0, dm=physical, dest=0 (high, edge)
PIN[19m]: vector=33, del=0, dm=physical, dest=0 (high, edge)
PIN[20m]: vector=34, del=0, dm=physical, dest=0 (high, edge)
PIN[21m]: vector=35, del=0, dm=physical, dest=0 (high, edge)
PIN[22m]: vector=36, del=0, dm=physical, dest=0 (high, edge)
PIN[23m]: vector=37, del=0, dm=physical, dest=0 (high, edge)
IO-APIC: dual 8259: yes
IO-APIC: ovr[ 0] 00 -> 2
IO-APIC: ovr[ 1] 09 -> 9
Allocate cpu_mem @ 0xfffe6000
Local APIC[00]: version=14 max_lvt=5
APIC ESR value before/after enabling: 00000000/00000000
Using the PIT (i8254) on IRQ 2 for scheduling
SERIAL ESC: allocated IRQ 4 for serial uart
SERIAL ESC: allocated IRQ 4 for serial uart
Not using serial hack in slow timer handler.
Absolute KIP Syscalls using: Sysenter
CPU[0:0]: GenuineIntel (6:1C:2:0)[000106c2] Model: Intel(R)
Atom(TM) CPU 330 @ 1.60GHz at 1596 MHz
32 Entry I TLB (4K pages)
80 Entry D TLB (4K pages) 8 Entry D TLB (4k or 4M pages)
32 KB L1 I Cache (8-way associative, 64 bytes per line)
24 KB L1 D Cache (6-way associative, 64 bytes per line)
512 KB L2 U Cache (16-way associative, 64 bytes per line)
Freeing init code/data: 28672 bytes (7 pages)
Calibrating timer loop... done.
SIGMA0: Hello!
KIP @ 400000
Found Fiasco: KIP syscalls: yes
allocated 4KB for maintenance structures
SIGMA0: Dump of all resource maps
RAM:------------------------
[0:1000;8efff]
[0:10c000;13ffff]
[4:140000;18dfff]
[0:18e000;2dcfff]
[4:2dd000;2ddfff]
[0:2de000;3fffff]
[0:465000;13d8fff]
[4:13d9000;1a600fff]
[0:1a601000;7b7fffff]
[0:7f400000;7f5c7fff]
[0:7f5d4000;7f65ffff]
[0:7f6f0000;7f6f2fff]
[0:7f6ff000;7f6fffff]
IOMEM:----------------------
[0:0;fff]
[0:8f000;fffff]
[0:7f5c8000;7f5d3fff]
[0:7f660000;7f6effff]
[0:7f6f3000;7f6fefff]
[0:7f700000;fedfffff]
[0:fee01000;ffffffff]
IO PORTS--------------------------
[0:0;fffffff]
MOE: Hello world
MOE: found 1612792 KByte free memory
MOE: found RAM from 1000 to 7f700000
MOE: allocated 2038 KByte for the page array @0x465000
MOE: virtual user address space [0-bfffffff]
MOE: rom name space cap -> [C:501000]
BOOTFS: [13d9000-14fd565] [C:503000] l4re
BOOTFS: [14fe000-172dc5f] [C:504000] ned
BOOTFS: [172e000-172e39b] [C:505000] linux-x2-pci.cfg
BOOTFS: [172f000-2124e43] [C:506000] io
BOOTFS: [2125000-212548d] [C:507000] x86-legacy-min.devs
BOOTFS: [2126000-212631c] [C:508000] l4lx-x86-x2-pci.io
BOOTFS: [2127000-2600ea7] [C:509000] vmlinuz
BOOTFS: [2601000-1a601000] [C:50a000] squeezesmall-x.img
MOE: cmdline: /moe rom/linux-x2-pci.cfg
MOE: Starting: rom/ned rom/linux-x2-pci.cfg
MOE: loading 'rom/ned'
Ned says: Hi World!
Ned: loading file: 'rom/linux-x2-pci.cfg'
io | Io service
io | Verboseness level: 5
io | unused physical memory space:
io | [00000080000000-000000efffffff]
io | Hello from L4-ACPICA
io | Find root Pointer
io | new iomem region: p=0 v=400000 s=400000 (bmb=0x3658)
io | map mem: p=0 v=400000 s=1000: done
io | AcpiOsMapMemory(40e, 2) = 40040e
io | map mem: p=9f000 v=49f000 s=1000: done
io | AcpiOsMapMemory(9fc00, 400) = 49fc00
io | map mem: p=e0000 v=4e0000 s=20000: done
io | AcpiOsMapMemory(e0000, 20000) = 4e0000
io | Find root Pointer: fe020
io | AcpiOsMapMemory(fe020, 24) = 4fe020
io | ACPI: RSDP 0xfe020 00014 (v00 INTEL )
io | new iomem region: p=7f400000 v=800000 s=400000 (bmb=0x3700)
io | map mem: p=7f6fd000 v=afd000 s=1000: done
io | AcpiOsMapMemory(7f6fd038, 24) = afd038
io | ACPI: RSDT 0x7f6fd038 00038 (v01 INTEL D945GLF2 000000E5
01000013)
io | AcpiOsMapMemory(7f6fd038, 38) = afd038
io | map mem: p=7f6fc000 v=afc000 s=1000: done
io | AcpiOsMapMemory(7f6fc000, 24) = afc000
io | ACPI: FACP 0x7f6fc000 00074 (v01 INTEL D945GLF2 000000E5 MSFT
01000013)
io | AcpiOsMapMemory(7f6fc000, 74) = afc000
io | map mem: p=7f6f7000 v=af7000 s=1000: done
io | AcpiOsMapMemory(7f6f7000, 24) = af7000
io | ACPI: DSDT 0x7f6f7000 045EC (v01 INTEL D945GLF2 000000E5 MSFT
01000013)
io | map mem: p=7f6a3000 v=aa3000 s=1000: done
io | AcpiOsMapMemory(7f6a3000, 24) = aa3000
io | ACPI: FACS 0x7f6a3000 00040
io | map mem: p=7f6f6000 v=af6000 s=1000: done
io | AcpiOsMapMemory(7f6f6000, 24) = af6000
io | ACPI: APIC 0x7f6f6000 00078 (v01 INTEL D945GLF2 000000E5 MSFT
01000013)
io | map mem: p=7f6f5000 v=af5000 s=1000: done
io | AcpiOsMapMemory(7f6f5000, 24) = af5000
io | ACPI: WDDT 0x7f6f5000 00040 (v01 INTEL D945GLF2 000000E5 MSFT
01000013)
io | map mem: p=7f6f4000 v=af4000 s=1000: done
io | AcpiOsMapMemory(7f6f4000, 24) = af4000
io | ACPI: MCFG 0x7f6f4000 0003C (v01 INTEL D945GLF2 000000E5 MSFT
01000013)
io | map mem: p=7f6f3000 v=af3000 s=1000: done
io | AcpiOsMapMemory(7f6f3000, 24) = af3000
io | ACPI: ASF! 0x7f6f3000 000A6 (v32 INTEL D945GLF2 000000E5 MSFT
01000013)
io | map mem: p=7f6f8000 v=af8000 s=4000: done
io | AcpiOsMapMemory(7f6f7000, 45ec) = af7000
io | Parsing all Control Methods:
io | Table [DSDT](id 0001) - 562 Objects with 56 Devices 158 Methods
35 Regions
io | tbxface-0601 [02] TbLoadNamespace : ACPI Tables
successfully acquired
io | enable ACPI subsystem
io | evxfevnt-0184 [02] Enable : Transition to ACPI
mode successful
io | AcpiOsMapMemory(7f6a3000, 40) = aa3000
io | evgpeblk-1129 [04] EvCreateGpeBlock : GPE 00 to 1F [_GPE] 4
regs on int 0x9
io |
/home/mayuresh/L4/src/l4/pkg/acpica/lib-acpi/src/osl-basic.cc:57:AcpiOsInstallInterruptHandler:
UNINPLEMENTED
io | initialize ACPI objects
io | Completing Region/Field/Buffer/Package
initialization:..................................................................................
io | Initialized 35/35 Regions 0/0 Fields 25/25 Buffers 22/22 Packages
(571 nodes)
io | Initializing Device/Processor/Thermal objects by executing _INI
methods:
io | Executed 1 _INI methods requiring 0 _STA executions (examined 62
objects)
io | evgpeblk-1234 [03] EvInitializeGpeBlock : Found 8 Wake, Enabled
3 Runtime GPEs in this block
io | Interpreter enabled
io | scanning for PCI root bridge
io | Found PCI root bridge...
io | Using IOAPIC for interrupt routing
io | ACPI subsystem initialized
io | ACPICA-Version:20091214, System in ACPI MODE, 32bit timer
io | WARNING: phys mmio resource allocation failed
io | IOMEM * [000000f8000000-000000febffffe 6bfffff] non-pref (32bit)
(align=6bffffe flags=c002)
io | WARNING: phys mmio resource allocation failed
io | IOMEM * [000000f8000000-000000febffffe 6bfffff] non-pref (32bit)
(align=6bffffe flags=c002)
io | WARNING: phys mmio resource allocation failed
io | IOMEM * [000000000e0000-000000000effff 10000] non-pref (32bit)
(align=ffff flags=c002)
io | WARNING: phys mmio resource allocation failed
io | IOMEM * [000000000e0000-000000000effff 10000] non-pref (32bit)
(align=ffff flags=c002)
io | WARNING: phys mmio resource allocation failed
io | IOMEM * [000000000a0000-000000000bffff 20000] non-pref (32bit)
(align=1ffff flags=c002)
io | WARNING: phys mmio resource allocation failed
io | IOMEM * [000000000a0000-000000000bffff 20000] non-pref (32bit)
(align=1ffff flags=c002)
io | WARNING: ignoring ACPI recource (unkown type: 1)
io | WARNING: ignoring ACPI recource (unkown type: 1)
io | WARNING: ignoring ACPI recource (unkown type: 1)
io | Loading: config 'rom/x86-legacy-min.devs'
io | WARNING: phys mmio resource allocation failed
io | IOMEM [000000000c0000-000000000fffff 40000] non-pref (32bit)
(align=3ffff flags=c002)
io | WARNING: phys mmio resource allocation failed
io | IOMEM [000000000c0000-000000000fffff 40000] non-pref (32bit)
(align=3ffff flags=c002)
io | WARNING: phys mmio resource allocation failed
io | IOMEM [0000000009f000-0000000009ffff 1000] non-pref (32bit)
(align=fff flags=c002)
io | WARNING: phys mmio resource allocation failed
io | IOMEM [0000000009f000-0000000009ffff 1000] non-pref (32bit)
(align=fff flags=c002)
io | WARNING: phys mmio resource allocation failed
io | IOMEM [00000000000000-00000000000fff 1000] non-pref (32bit)
(align=fff flags=4002)
io | WARNING: phys mmio resource allocation failed
io | IOMEM [00000000000000-00000000000fff 1000] non-pref (32bit)
(align=fff flags=4002)
io | ERROR: could not reserve resource
io | IOMEM [00000000000000-00000000000fff 1000] non-pref (32bit)
(align=fff flags=4102)
io | WARNING: phys mmio resource allocation failed
io | IOMEM [000000000a0000-000000000bffff 20000] non-pref (32bit)
(align=1ffff flags=8c002)
io | WARNING: phys mmio resource allocation failed
io | IOMEM [000000000a0000-000000000bffff 20000] non-pref (32bit)
(align=1ffff flags=8c002)
io | Loading: config 'rom/l4lx-x86-x2-pci.io'
io | Add IRQ resources to vbus: IRQ [0000000000000b-0000000000000b
1] rising edge (32bit) (align=0 flags=4001)
io | Add IRQ resources to vbus: IRQ [00000000000001-00000000000001
1] rising edge (32bit) (align=0 flags=4001)
io | Add IRQ resources to vbus: IRQ [0000000000000c-0000000000000c
1] rising edge (32bit) (align=0 flags=4001)
io | Add IRQ resources to vbus: IRQ [00000000000010-00000000000010
1] level low (32bit) (align=0 flags=304201)
io | Add IRQ resources to vbus: IRQ [00000000000013-00000000000013
1] level low (32bit) (align=0 flags=304201)
io | Add IRQ resources to vbus: IRQ [00000000000012-00000000000012
1] level low (32bit) (align=0 flags=304201)
io | Add IRQ resources to vbus: IRQ [0000000000000e-0000000000000e
1] rising edge (32bit) (align=0 flags=4001)
io | Add IRQ resources to vbus: IRQ [0000000000000f-0000000000000f
1] rising edge (32bit) (align=0 flags=4001)
io | P6Device: l4linux ""
io | P6Device: vgadev "PNP0900"
io | IRQ [0000000000000b-0000000000000b 1] rising edge (32bit)
(align=0 flags=4001)
io | IOPORT [00000000000000-00000000000fff 1000] non-pref (32bit)
(align=fff flags=4003)
io | IOPORT [0000000000c000-0000000000c00f 10] non-pref (32bit)
(align=f flags=4003)
io | IOMEM [000000000a0000-000000000bffff 20000] non-pref
(32bit) (align=1ffff flags=8c002)
io | P6Device: ps2 "PNP0303"
io | IRQ [00000000000001-00000000000001 1] rising edge (32bit)
(align=0 flags=4001)
io | IRQ [0000000000000c-0000000000000c 1] rising edge (32bit)
(align=0 flags=4001)
io | P6Device: bios "BIOS"
io | IOMEM [0000000009f000-0000000009ffff 1000] non-pref (32bit)
(align=fff flags=c002)
io | IOMEM [000000000c0000-000000000fffff 40000] non-pref
(32bit) (align=3ffff flags=c002)
io | P6Device: PCI0 "PNP0A03"
io | P6Device: host_bridge_dummy ""
io | P6Device: pci_gfx[0000] ""
io | IRQ [00000000000010-00000000000010 1] level low (32bit)
(align=0 flags=304201)
io | IOMEM [00000090200000-0000009027ffff 80000] non-pref
(32bit) (align=7ffff flags=4a02)
io | IOPORT [000000000020e0-000000000020e7 8] non-pref (32bit)
(align=7 flags=4a03)
io | IOMEM [00000080000000-0000008fffffff 10000000] pref
(32bit) (align=fffffff flags=4e02)
io | IOMEM [00000090280000-000000902bffff 40000] non-pref
(32bit) (align=3ffff flags=4a02)
io | P6Device: pci_l4x[0000] ""
io | IRQ [00000000000013-00000000000013 1] level low (32bit)
(align=0 flags=304201)
io | IOPORT [000000000020c8-000000000020cf 8] non-pref (32bit)
(align=7 flags=4a03)
io | IOPORT [000000000020ec-000000000020ef 4] non-pref (32bit)
(align=3 flags=4a03)
io | IOPORT [000000000020c0-000000000020c7 8] non-pref (32bit)
(align=7 flags=4a03)
io | IOPORT [000000000020e8-000000000020eb 4] non-pref (32bit)
(align=3 flags=4a03)
io | IOPORT [000000000020a0-000000000020af 10] non-pref (32bit)
(align=f flags=4a03)
io | P6Device: pci_l4x[0001] ""
io | IRQ [00000000000012-00000000000012 1] level low (32bit)
(align=0 flags=304201)
io | IOPORT [000000000001f0-000000000001f7 8] non-pref (32bit)
(align=7 flags=4a03)
io | IOPORT [000000000003f6-000000000003f6 1] non-pref (32bit)
(align=0 flags=4a03)
io | IRQ [0000000000000e-0000000000000e 1] rising edge
(32bit) (align=0 flags=4001)
io | IOPORT [00000000000170-00000000000177 8] non-pref (32bit)
(align=7 flags=4a03)
io | IOPORT [00000000000376-00000000000376 1] non-pref (32bit)
(align=0 flags=4a03)
io | IRQ [0000000000000f-0000000000000f 1] rising edge
(32bit) (align=0 flags=4001)
io | IOPORT [000000000020d8-000000000020df 8] non-pref (32bit)
(align=7 flags=4a03)
io | IOPORT [000000000020f4-000000000020f7 4] non-pref (32bit)
(align=3 flags=4a03)
io | IOPORT [000000000020d0-000000000020d7 8] non-pref (32bit)
(align=7 flags=4a03)
io | IOPORT [000000000020f0-000000000020f3 4] non-pref (32bit)
(align=3 flags=4a03)
io | IOPORT [000000000020b0-000000000020bf 10] non-pref (32bit)
(align=f flags=4a03)
io | P6Device: pci_l4x[0002] ""
io | IRQ [00000000000010-00000000000010 1] level low (32bit)
(align=0 flags=304201)
io | IOPORT [00000000001000-000000000010ff 100] non-pref
(32bit) (align=ff flags=4a03)
io | IOMEM [00000090100000-00000090100fff 1000] non-pref
(64bit) (align=fff flags=14a02)
io | IOMEM [00000090000000-0000009000ffff 10000] pref (64bit)
(align=ffff flags=14e02)
io | P6Device: (noname) "L40009"
io | Real Hardware -----------------------------------
io | P6Device: System Bus ""
io | Hw::Device[System Bus]
io | P6Device: SLPB "PNP0C0E"
io | Hw::Device[SLPB]
io | P6Device: PCI0 "PNP0A03"
io | Hw::Device[PCI0]
io | IOMEM * [00000080000000-000000efffffff 70000000] non-pref
(32bit) (align=6fffffff flags=c002)
io | IOMEM * [000000f8000000-000000febffffe 6bfffff] non-pref
(32bit) (align=6bffffe flags=c002)
io | IOMEM * [000000000e0000-000000000effff 10000] non-pref
(32bit) (align=ffff flags=c002)
io | IOMEM * [000000000a0000-000000000bffff 20000] non-pref
(32bit) (align=1ffff flags=c002)
io | IOPORT* [00000000000d00-0000000000ffff f300] non-pref (32bit)
(align=f2ff flags=c003)
io | IOPORT* [00000000000000-00000000000cf7 cf8] non-pref (32bit)
(align=cf7 flags=c003)
io | IOPORT [00000000000cf8-00000000000cff 8] non-pref (32bit)
(align=7 flags=c003)
io | BUS * [00000000000000-000000000000ff 100] non-pref (32bit)
(align=ff flags=c004)
io | PCI IRQ ROUTER:
18Pci_irq_router_resIN12_GLOBAL__N_122Acpi_pci_irq_router_rsEE (0x7c70)
io | P6Device: IOCM "PNP0C02"
io | Hw::Device[IOCM]
io | IOMEM [000000000e0000-000000000fffff 20000] non-pref
(32bit) (align=1ffff flags=c002)
io | IOMEM [000000000c0000-000000000dffff 20000] non-pref
(32bit) (align=1ffff flags=c002)
io | IOMEM [000000fed45000-000000fed99fff 55000] non-pref
(32bit) (align=54fff flags=c002)
io | IOMEM [000000fed20000-000000fed3ffff 20000] non-pref
(32bit) (align=1ffff flags=c002)
io | IOMEM [000000fed1c000-000000fed1ffff 4000] non-pref
(32bit) (align=3fff flags=c002)
io | IOMEM [000000fed19000-000000fed19fff 1000] non-pref
(32bit) (align=fff flags=c002)
io | IOMEM [000000fed18000-000000fed18fff 1000] non-pref
(32bit) (align=fff flags=c002)
io | IOMEM [000000fed14000-000000fed17fff 4000] non-pref
(32bit) (align=3fff flags=c002)
io | IOMEM [000000fed13000-000000fed13fff 1000] non-pref
(32bit) (align=fff flags=c002)
io | IOMEM [000000f0000000-000000f3ffffff 4000000] non-pref
(32bit) (align=3ffffff flags=c002)
io | P6Device: P32_ ""
io | Hw::Device[P32_]
io | 0000:00:1e.0: PCI Bridge [1]
io | 0x8086 0x244e
io | Intel Corporation 82801 PCI Bridge
io | IOPORT* [00000000000000-00000000000000 1] non-pref (32bit)
(align=fff flags=5003)
io | IOMEM * [00000000000000-00000000000000 1] pref (64bit)
(align=fffff flags=15402)
io | IOMEM * [00000000000000-00000000000000 1] non-pref (32bit)
(align=fffff flags=5002)
io | PCI IRQ ROUTER:
18Pci_irq_router_resIN12_GLOBAL__N_122Acpi_pci_irq_router_rsEE (0x3220)
io | P6Device: LPC_ ""
io | Hw::Device[LPC_]
io | 0000:00:1f.0: ISA Bridge [128]
io | 0x8086 0x27b8
io | Intel Corporation 82801GB/GR (ICH7 Family)
LPC Interface Bridge
io | P6Device: LNKA "PNP0C0F"
io | Hw::Device[LNKA]
io | IRQ [0000000000000b-0000000000000b 1] level low
(32bit) (align=0 flags=304001)
io | P6Device: LNKB "PNP0C0F"
io | Hw::Device[LNKB]
io | P6Device: LNKC "PNP0C0F"
io | Hw::Device[LNKC]
io | IRQ [00000000000009-00000000000009 1] level low
(32bit) (align=0 flags=304001)
io | P6Device: LNKD "PNP0C0F"
io | Hw::Device[LNKD]
io | IRQ [0000000000000b-0000000000000b 1] level low
(32bit) (align=0 flags=304001)
io | P6Device: LNKE "PNP0C0F"
io | Hw::Device[LNKE]
io | P6Device: LNKF "PNP0C0F"
io | Hw::Device[LNKF]
io | P6Device: LNKG "PNP0C0F"
io | Hw::Device[LNKG]
io | IRQ [00000000000009-00000000000009 1] level low
(32bit) (align=0 flags=304001)
io | P6Device: LNKH "PNP0C0F"
io | Hw::Device[LNKH]
io | IRQ [0000000000000a-0000000000000a 1] level low
(32bit) (align=0 flags=304001)
io | P6Device: DMAC "PNP0200"
io | Hw::Device[DMAC]
io | IOPORT [000000000000c0-000000000000df 20] non-pref
(32bit) (align=1f flags=c003)
io | IOPORT [0000000000008f-0000000000008f 1] non-pref
(32bit) (align=0 flags=c003)
io | IOPORT [00000000000089-0000000000008b 3] non-pref
(32bit) (align=2 flags=c003)
io | IOPORT [00000000000087-00000000000087 1] non-pref
(32bit) (align=0 flags=c003)
io | IOPORT [00000000000081-00000000000083 3] non-pref
(32bit) (align=2 flags=c003)
io | IOPORT [00000000000000-0000000000000f 10] non-pref
(32bit) (align=f flags=c003)
io | P6Device: RTC_ "PNP0B00"
io | Hw::Device[RTC_]
io | IRQ [00000000000008-00000000000008 1] rising edge
(32bit) (align=0 flags=4001)
io | IOPORT [00000000000074-00000000000077 4] non-pref
(32bit) (align=3 flags=c003)
io | IOPORT [00000000000070-00000000000071 2] non-pref
(32bit) (align=1 flags=c003)
io | P6Device: PIC_ "PNP0000"
io | Hw::Device[PIC_]
io | IOPORT [000000000004d0-000000000004d1 2] non-pref
(32bit) (align=1 flags=c003)
io | IOPORT [000000000000a0-000000000000bd 1e] non-pref
(32bit) (align=1d flags=c003)
io | IOPORT [00000000000020-0000000000003d 1e] non-pref
(32bit) (align=1d flags=c003)
io | P6Device: FPU_ "PNP0C04"
io | Hw::Device[FPU_]
io | IRQ [0000000000000d-0000000000000d 1] rising edge
(32bit) (align=0 flags=4001)
io | IOPORT [000000000000f0-000000000000f0 1] non-pref
(32bit) (align=0 flags=c003)
io | P6Device: TMR_ "PNP0100"
io | Hw::Device[TMR_]
io | IRQ [00000000000000-00000000000000 1] rising edge
(32bit) (align=0 flags=4001)
io | IOPORT [00000000000050-00000000000053 4] non-pref
(32bit) (align=3 flags=c003)
io | IOPORT [00000000000040-00000000000043 4] non-pref
(32bit) (align=3 flags=c003)
io | P6Device: SPKR "PNP0800"
io | Hw::Device[SPKR]
io | IOPORT [00000000000061-00000000000061 1] non-pref
(32bit) (align=0 flags=c003)
io | P6Device: XTRA "PNP0C02"
io | Hw::Device[XTRA]
io | IOPORT [00000000000090-0000000000009f 10] non-pref
(32bit) (align=f flags=c003)
io | IOPORT [0000000000008c-0000000000008e 3] non-pref
(32bit) (align=2 flags=c003)
io | IOPORT [00000000000088-00000000000088 1] non-pref
(32bit) (align=0 flags=c003)
io | IOPORT [00000000000084-00000000000086 3] non-pref
(32bit) (align=2 flags=c003)
io | IOPORT [00000000000080-00000000000080 1] non-pref
(32bit) (align=0 flags=c003)
io | IOPORT [00000000000072-00000000000073 2] non-pref
(32bit) (align=1 flags=c003)
io | IOPORT [00000000000010-0000000000001f 10] non-pref
(32bit) (align=f flags=c003)
io | IOPORT [00000000000680-000000000006ff 80] non-pref
(32bit) (align=7f flags=c003)
io | IOPORT [00000000000092-00000000000092 1] non-pref
(32bit) (align=0 flags=c003)
io | IOPORT [00000000000400-0000000000047f 80] non-pref
(32bit) (align=7f flags=c003)
io | IOPORT [00000000000500-0000000000053f 40] non-pref
(32bit) (align=3f flags=c003)
io | P6Device: TPM_ "PNP0C31"
io | Hw::Device[TPM_]
io | IOMEM [000000fed40000-000000fed44fff 5000] non-pref
(32bit) (align=4fff flags=c002)
io | P6Device: XTR2 "PNP0C02"
io | Hw::Device[XTR2]
io | IOPORT [00000000000064-00000000000064 1] non-pref
(32bit) (align=0 flags=c003)
io | IOPORT [00000000000060-00000000000060 1] non-pref
(32bit) (align=0 flags=c003)
io | P6Device: FDC0 "PNP0700"
io | Hw::Device[FDC0]
io | IRQ [00000000000006-00000000000006 1] rising edge
(32bit) (align=0 flags=4001)
io | IOPORT [00000000000000-00000000000000 1] non-pref
(32bit) (align=0 flags=c003)
io | IOPORT [00000000000000-00000000000005 6] non-pref
(32bit) (align=5 flags=c003)
io | P6Device: LPT_ "PNP0400"
io | Hw::Device[LPT_]
io | IRQ [00000000000007-00000000000007 1] rising edge
(32bit) (align=0 flags=4001)
io | IOPORT [00000000000378-0000000000037f 8] non-pref
(32bit) (align=7 flags=c003)
io | P6Device: ECP_ "PNP0401"
io | Hw::Device[ECP_]
io | IRQ [00000000000007-00000000000007 1] rising edge
(32bit) (align=0 flags=4001)
io | IOPORT [00000000000778-0000000000077f 8] non-pref
(32bit) (align=7 flags=c003)
io | IOPORT [00000000000378-0000000000037f 8] non-pref
(32bit) (align=7 flags=c003)
io | P6Device: PS2M "PNP0F03"
io | Hw::Device[PS2M]
io | IRQ [0000000000000c-0000000000000c 1] rising edge
(32bit) (align=0 flags=4001)
io | IOPORT [00000000000064-00000000000064 1] non-pref
(32bit) (align=0 flags=c003)
io | IOPORT [00000000000060-00000000000060 1] non-pref
(32bit) (align=0 flags=c003)
io | P6Device: PS2K "PNP0303"
io | Hw::Device[PS2K]
io | IRQ [00000000000001-00000000000001 1] rising edge
(32bit) (align=0 flags=4001)
io | IOPORT [00000000000064-00000000000064 1] non-pref
(32bit) (align=0 flags=c003)
io | IOPORT [00000000000060-00000000000060 1] non-pref
(32bit) (align=0 flags=c003)
io | P6Device: UAR1 "PNP0501"
io | Hw::Device[UAR1]
io | IRQ [00000000000004-00000000000004 1] rising edge
(32bit) (align=0 flags=4001)
io | IOPORT [000000000003f8-000000000003ff 8] non-pref
(32bit) (align=7 flags=c003)
io | P6Device: UAR2 "PNP0501"
io | Hw::Device[UAR2]
io | IRQ [00000000000003-00000000000003 1] rising edge
(32bit) (align=0 flags=4001)
io | IOPORT [00000000000000-00000000000007 8] non-pref
(32bit) (align=7 flags=c003)
io | P6Device: IELK "AWY0001"
io | Hw::Device[IELK]
io | P6Device: PEX0 ""
io | Hw::Device[PEX0]
io | 0000:00:1c.0: PCI Bridge [129]
io | 0x8086 0x27d0
io | Intel Corporation N10/ICH 7 Family PCI
Express Port 1
io | IRQ [00000000000011-00000000000011 1] level low (32bit)
(align=0 flags=304201)
io | IOPORT* [00000000001000-00000000001fff 1000] non-pref
(32bit) (align=fff flags=4003)
io | IOMEM * [00000090000000-000000900fffff 100000] pref (64bit)
(align=fffff flags=14402)
io | IOMEM * [00000090100000-000000901fffff 100000] non-pref
(32bit) (align=fffff flags=4002)
io | PCI IRQ ROUTER:
18Pci_irq_router_resIN12_GLOBAL__N_122Acpi_pci_irq_router_rsEE (0x13d48)
io | P6Device: ""
io | Hw::Device[]
io | 0000:01:00.0: network controller [0]
io | 0x10ec 0x8168
io | Realtek Semiconductor Co., Ltd.
RTL8111/8168B PCI Express Gigabit Ethernet cont
io | IOMEM [00000090000000-0000009000ffff 10000] pref
(64bit) (align=ffff flags=14e02)
io | IOMEM [00000090100000-00000090100fff 1000] non-pref
(64bit) (align=fff flags=14a02)
io | IOPORT [00000000001000-000000000010ff 100] non-pref
(32bit) (align=ff flags=4a03)
io | IRQ [00000000000010-00000000000010 1] level low
(32bit) (align=0 flags=304201)
io | P6Device: PEX1 ""
io | Hw::Device[PEX1]
io | P6Device: PEX2 ""
io | Hw::Device[PEX2]
io | 0000:00:1c.2: PCI Bridge [129]
io | 0x8086 0x27d4
io | Intel Corporation N10/ICH 7 Family PCI
Express Port 3
io | IRQ [00000000000012-00000000000012 1] level low (32bit)
(align=0 flags=304201)
io | IOPORT* [00000000000000-00000000000000 1] non-pref (32bit)
(align=fff flags=5003)
io | IOMEM * [00000000000000-00000000000000 1] pref (64bit)
(align=fffff flags=15402)
io | IOMEM * [00000000000000-00000000000000 1] non-pref (32bit)
(align=fffff flags=5002)
io | PCI IRQ ROUTER:
18Pci_irq_router_resIN12_GLOBAL__N_122Acpi_pci_irq_router_rsEE (0x13e88)
io | P6Device: PEX3 ""
io | Hw::Device[PEX3]
io | 0000:00:1c.3: PCI Bridge [129]
io | 0x8086 0x27d6
io | Intel Corporation N10/ICH 7 Family PCI
Express Port 4
io | IRQ [00000000000013-00000000000013 1] level low (32bit)
(align=0 flags=304201)
io | IOPORT* [00000000000000-00000000000000 1] non-pref (32bit)
(align=fff flags=5003)
io | IOMEM * [00000000000000-00000000000000 1] pref (64bit)
(align=fffff flags=15402)
io | IOMEM * [00000000000000-00000000000000 1] non-pref (32bit)
(align=fffff flags=5002)
io | PCI IRQ ROUTER:
18Pci_irq_router_resIN12_GLOBAL__N_122Acpi_pci_irq_router_rsEE (0x13fc8)
io | P6Device: PEX4 ""
io | Hw::Device[PEX4]
io | P6Device: PEX5 ""
io | Hw::Device[PEX5]
io | P6Device: APIC "PNP0003"
io | Hw::Device[APIC]
io | IOMEM [000000fec00000-000000fec000ff 100] non-pref
(32bit) (align=ff flags=c002)
io | P6Device: HPET "PNP0103"
io | Hw::Device[HPET]
io | IOMEM [000000fed00000-000000fed003ff 400] non-pref
(32bit) (align=3ff flags=c002)
io | P6Device: UHC1 ""
io | Hw::Device[UHC1]
io | 0000:00:1d.0: serial bus controller [128]
io | 0x8086 0x27c8
io | Intel Corporation N10/ICH 7 Family USB UHCI
Controller #1
io | IOPORT [00000000002080-0000000000209f 20] non-pref (32bit)
(align=1f flags=4a03)
io | IRQ [00000000000017-00000000000017 1] level low (32bit)
(align=0 flags=304201)
io | P6Device: UHC2 ""
io | Hw::Device[UHC2]
io | 0000:00:1d.1: serial bus controller [0]
io | 0x8086 0x27c9
io | Intel Corporation N10/ICH 7 Family USB UHCI
Controller #2
io | IOPORT [00000000002060-0000000000207f 20] non-pref (32bit)
(align=1f flags=4a03)
io | IRQ [00000000000013-00000000000013 1] level low (32bit)
(align=0 flags=304201)
io | P6Device: UHC3 ""
io | Hw::Device[UHC3]
io | 0000:00:1d.2: serial bus controller [0]
io | 0x8086 0x27ca
io | Intel Corporation N10/ICH 7 Family USB UHCI
Controller #3
io | IOPORT [00000000002040-0000000000205f 20] non-pref (32bit)
(align=1f flags=4a03)
io | IRQ [00000000000012-00000000000012 1] level low (32bit)
(align=0 flags=304201)
io | P6Device: UHC4 ""
io | Hw::Device[UHC4]
io | 0000:00:1d.3: serial bus controller [0]
io | 0x8086 0x27cb
io | Intel Corporation N10/ICH 7 Family USB UHCI
Controller #4
io | IOPORT [00000000002020-0000000000203f 20] non-pref (32bit)
(align=1f flags=4a03)
io | IRQ [00000000000010-00000000000010 1] level low (32bit)
(align=0 flags=304201)
io | P6Device: EHCI ""
io | Hw::Device[EHCI]
io | 0000:00:1d.7: serial bus controller [0]
io | 0x8086 0x27cc
io | Intel Corporation N10/ICH 7 Family USB2 EHCI
Controller
io | IOMEM [000000902c4000-000000902c43ff 400] non-pref
(32bit) (align=3ff flags=4a02)
io | IRQ [00000000000017-00000000000017 1] level low (32bit)
(align=0 flags=304201)
io | P6Device: AC9M ""
io | Hw::Device[AC9M]
io | P6Device: AZAL ""
io | Hw::Device[AZAL]
io | 0000:00:1b.0: multimedia device [0]
io | 0x8086 0x27d8
io | Intel Corporation N10/ICH 7 Family High
Definition Audio Controller
io | IOMEM [000000902c0000-000000902c3fff 4000] non-pref
(64bit) (align=3fff flags=14a02)
io | IRQ [00000000000016-00000000000016 1] level low (32bit)
(align=0 flags=304201)
io | P6Device: IDEC ""
io | Hw::Device[IDEC]
io | 0000:00:1f.1: mass storage contoller [0]
io | 0x8086 0x27df
io | Intel Corporation 82801G (ICH7 Family) IDE
Controller
io | IOPORT [000000000020b0-000000000020bf 10] non-pref (32bit)
(align=f flags=4a03)
io | IOPORT [000000000020f0-000000000020f3 4] non-pref (32bit)
(align=3 flags=4a03)
io | IOPORT [000000000020d0-000000000020d7 8] non-pref (32bit)
(align=7 flags=4a03)
io | IOPORT [000000000020f4-000000000020f7 4] non-pref (32bit)
(align=3 flags=4a03)
io | IOPORT [000000000020d8-000000000020df 8] non-pref (32bit)
(align=7 flags=4a03)
io | IRQ [0000000000000f-0000000000000f 1] rising edge
(32bit) (align=0 flags=4001)
io | IOPORT [00000000000376-00000000000376 1] non-pref (32bit)
(align=0 flags=4a03)
io | IOPORT [00000000000170-00000000000177 8] non-pref (32bit)
(align=7 flags=4a03)
io | IRQ [0000000000000e-0000000000000e 1] rising edge
(32bit) (align=0 flags=4001)
io | IOPORT [000000000003f6-000000000003f6 1] non-pref (32bit)
(align=0 flags=4a03)
io | IOPORT [000000000001f0-000000000001f7 8] non-pref (32bit)
(align=7 flags=4a03)
io | IRQ [00000000000012-00000000000012 1] level low (32bit)
(align=0 flags=304201)
io | P6Device: PRID ""
io | Hw::Device[PRID]
io | P6Device: P_D0 ""
io | Hw::Device[P_D0]
io | P6Device: P_D1 ""
io | Hw::Device[P_D1]
io | P6Device: IDES ""
io | Hw::Device[IDES]
io | 0000:00:1f.2: mass storage contoller [0]
io | 0x8086 0x27c0
io | Intel Corporation N10/ICH7 Family SATA IDE
Controller
io | IOPORT [000000000020a0-000000000020af 10] non-pref (32bit)
(align=f flags=4a03)
io | IOPORT [000000000020e8-000000000020eb 4] non-pref (32bit)
(align=3 flags=4a03)
io | IOPORT [000000000020c0-000000000020c7 8] non-pref (32bit)
(align=7 flags=4a03)
io | IOPORT [000000000020ec-000000000020ef 4] non-pref (32bit)
(align=3 flags=4a03)
io | IOPORT [000000000020c8-000000000020cf 8] non-pref (32bit)
(align=7 flags=4a03)
io | IRQ [00000000000013-00000000000013 1] level low (32bit)
(align=0 flags=304201)
io | P6Device: PRID ""
io | Hw::Device[PRID]
io | P6Device: P_D0 ""
io | Hw::Device[P_D0]
io | P6Device: P_D1 ""
io | Hw::Device[P_D1]
io | P6Device: SECD ""
io | Hw::Device[SECD]
io | P6Device: S_D0 ""
io | Hw::Device[S_D0]
io | P6Device: S_D1 ""
io | Hw::Device[S_D1]
io | P6Device: ""
io | Hw::Device[]
io | 0000:00:00.0: Host/PCI Bridge [0]
io | 0x8086 0x2770
io | Intel Corporation 82945G/GZ/P/PL Memory
Controller Hub
io | P6Device: ""
io | Hw::Device[]
io | 0000:00:02.0: display controller [0]
io | 0x8086 0x2772
io | Intel Corporation 82945G/GZ Integrated
Graphics Controller
io | IOMEM [00000090280000-000000902bffff 40000] non-pref
(32bit) (align=3ffff flags=4a02)
io | IOMEM [00000080000000-0000008fffffff 10000000] pref
(32bit) (align=fffffff flags=4e02)
io | IOPORT [000000000020e0-000000000020e7 8] non-pref (32bit)
(align=7 flags=4a03)
io | IOMEM [00000090200000-0000009027ffff 80000] non-pref
(32bit) (align=7ffff flags=4a02)
io | IRQ [00000000000010-00000000000010 1] level low (32bit)
(align=0 flags=304201)
io | P6Device: ""
io | Hw::Device[]
io | 0000:00:1f.3: serial bus controller [0]
io | 0x8086 0x27da
io | Intel Corporation N10/ICH 7 Family SMBus
Controller
io | IOPORT [00000000002000-0000000000201f 20] non-pref (32bit)
(align=1f flags=4a03)
io | IRQ [00000000000013-00000000000013 1] level low (32bit)
(align=0 flags=304201)
io | P6Device: PS2 "PNP0303"
io | Hw::Device[PS2]
io | IRQ [0000000000000c-0000000000000c 1] rising edge (32bit)
(align=0 flags=4001)
io | IRQ [00000000000001-00000000000001 1] rising edge (32bit)
(align=0 flags=4001)
io | P6Device: BIOS "BIOS"
io | Hw::Device[BIOS]
io | IOMEM [000000000c0000-000000000fffff 40000] non-pref
(32bit) (align=3ffff flags=c002)
io | IOMEM [0000000009f000-0000000009ffff 1000] non-pref (32bit)
(align=fff flags=c002)
io | IOMEM [00000000000000-00000000000fff 1000] non-pref (32bit)
(align=fff flags=4102)
io | P6Device: VGA "PNP0900"
io | Hw::Device[VGA]
io | IOMEM [000000000a0000-000000000bffff 20000] non-pref
(32bit) (align=1ffff flags=8c002)
io | IOPORT [0000000000c000-0000000000c00f 10] non-pref (32bit)
(align=f flags=4003)
io | IOPORT [00000000000000-00000000000fff 1000] non-pref (32bit)
(align=fff flags=4003)
io | IRQ [0000000000000b-0000000000000b 1] rising edge (32bit)
(align=0 flags=4001)
io | Ready. Waiting for request.
l4linux | PH 0 (t: 1) offs=00001000 vaddr=00400000 vend=007de000
l4linux | phys=00400000 ephys=007de000
l4linux | f_sz=003de000 memsz=003de000 flgs=r-x
l4linux | PH 1 (t: 1) offs=003df000 vaddr=007de000 vend=008fa000
l4linux | phys=007de000 ephys=008fa000
l4linux | f_sz=00070000 memsz=0011c000 flgs=rw-
l4linux | PH 2 (t: 4) offs=00302a90 vaddr=00701a90 vend=00701ab4
l4linux | phys=00701a90 ephys=00701ab4
l4linux | f_sz=00000024 memsz=00000024 flgs=---
l4linux | Starting binary at 0x400000, argc=6 argv=0x80007f90
*argv=0xb1007ff4 argv0=rom/vmlinuz
l4linux | External resolver is at 0xa80006d0
l4linux | ======> L4Linux 2.6 starting... <========
l4linux | Linux version 3.0.0-l4-svn23 (root@mayuresh) (gcc version 4.6.3
(Ubuntu/Linaro 4.6.3-1ubuntu5) ) #16 SMP Wed Jul 25 17:05:02 CEST 2012
l4linux | Binary name: rom/vmlinuz
l4linux | Linux kernel command line (5 args): mem=800M earlyprintk=yes
l4x_rd=rom/squeezesmall-x.img root=1:0 ramdisk_size=400000
l4linux | CPU mapping (l:p)[1]: 0:0
l4linux | Image: 00400000 - 008fa000 [5096 KiB].
l4linux | Areas: Text: 00400000 - 007de000 [3960kB] (a bit longer)
l4linux | Data: 007de000 - 008102a0 [200kB]
l4linux | Initdata: 00811000 - 00848000 [220kB]
l4linux | BSS: 0084e000 - 008ea000 [624kB]
io | map mem: p=a0000 v=4a0000 s=20000: done
l4linux | gs=43 fs=43
l4linux | Device scan:
l4linux | Device: PNP0900
l4linux | IRQ: 0000000b - 0000000b
io | request resource: IOPORT [0000000000000b-0000000000000b 1]
non-pref (32bit) (align=0 flags=4003)
io |
l4linux | PORT: 00000000 - 00000fff
io | request resource: IOPORT [00000000000000-00000000000fff 1000]
non-pref (32bit) (align=fff flags=4003)
io |
l4linux | PORT: 0000c000 - 0000c00f
io | request resource: IOPORT [0000000000c000-0000000000c00f 10]
non-pref (32bit) (align=f flags=4003)
io |
l4linux | MEM: 000a0000 - 000bffff
io | request resource: IOPORT [000000000a0000-000000000bffff 20000]
non-pref (32bit) (align=1ffff flags=4003)
io |
l4linux | Device: PNP0303
l4linux | IRQ: 00000001 - 00000001
io | request resource: IOPORT [00000000000001-00000000000001 1]
non-pref (32bit) (align=0 flags=4003)
io |
l4linux | IRQ: 0000000c - 0000000c
io | request resource: IOPORT [0000000000000c-0000000000000c 1]
non-pref (32bit) (align=0 flags=4003)
io |
l4linux | Device: BIOS
l4linux | MEM: 0009f000 - 0009ffff
io | request resource: IOPORT [0000000009f000-0000000009ffff 1000]
non-pref (32bit) (align=fff flags=4003)
io |
l4linux | MEM: 000c0000 - 000fffff
io | request resource: IOPORT [000000000c0000-000000000fffff 40000]
non-pref (32bit) (align=3ffff flags=4003)
io |
l4linux | Device:
l4linux | IRQ: 00000010 - 00000010
io | request resource: IOPORT [00000000000010-00000000000010 1]
non-pref (32bit) (align=0 flags=4003)
io |
l4linux | MEM: 90200000 - 9027ffff
io | request resource: IOPORT [00000090200000-0000009027ffff 80000]
non-pref (32bit) (align=7ffff flags=4003)
io |
l4linux | PORT: 000020e0 - 000020e7
io | request resource: IOPORT [000000000020e0-000000000020e7 8]
non-pref (32bit) (align=7 flags=4003)
io |
l4linux | MEM: 80000000 - 8fffffff
io | request resource: IOPORT [00000080000000-0000008fffffff
10000000] non-pref (32bit) (align=fffffff flags=4003)
io |
l4linux | MEM: 90280000 - 902bffff
io | request resource: IOPORT [00000090280000-000000902bffff 40000]
non-pref (32bit) (align=3ffff flags=4003)
io |
l4linux | Device:
l4linux | IRQ: 00000013 - 00000013
io | request resource: IOPORT [00000000000013-00000000000013 1]
non-pref (32bit) (align=0 flags=4003)
io |
l4linux | PORT: 000020c8 - 000020cf
io | request resource: IOPORT [000000000020c8-000000000020cf 8]
non-pref (32bit) (align=7 flags=4003)
io |
l4linux | PORT: 000020ec - 000020ef
io | request resource: IOPORT [000000000020ec-000000000020ef 4]
non-pref (32bit) (align=3 flags=4003)
io |
l4linux | PORT: 000020c0 - 000020c7
io | request resource: IOPORT [000000000020c0-000000000020c7 8]
non-pref (32bit) (align=7 flags=4003)
io |
l4linux | PORT: 000020e8 - 000020eb
io | request resource: IOPORT [000000000020e8-000000000020eb 4]
non-pref (32bit) (align=3 flags=4003)
io |
l4linux | PORT: 000020a0 - 000020af
io | request resource: IOPORT [000000000020a0-000000000020af 10]
non-pref (32bit) (align=f flags=4003)
io |
l4linux | Device:
l4linux | IRQ: 00000012 - 00000012
io | request resource: IOPORT [00000000000012-00000000000012 1]
non-pref (32bit) (align=0 flags=4003)
io |
l4linux | PORT: 000001f0 - 000001f7
io | request resource: IOPORT [000000000001f0-000000000001f7 8]
non-pref (32bit) (align=7 flags=4003)
io |
l4linux | PORT: 000003f6 - 000003f6
io | request resource: IOPORT [000000000003f6-000000000003f6 1]
non-pref (32bit) (align=0 flags=4003)
io |
l4linux | IRQ: 0000000e - 0000000e
io | request resource: IOPORT [0000000000000e-0000000000000e 1]
non-pref (32bit) (align=0 flags=4003)
io |
l4linux | PORT: 00000170 - 00000177
io | request resource: IOPORT [00000000000170-00000000000177 8]
non-pref (32bit) (align=7 flags=4003)
io |
l4linux | PORT: 00000376 - 00000376
io | request resource: IOPORT [00000000000376-00000000000376 1]
non-pref (32bit) (align=0 flags=4003)
io |
l4linux | IRQ: 0000000f - 0000000f
io | request resource: IOPORT [0000000000000f-0000000000000f 1]
non-pref (32bit) (align=0 flags=4003)
io |
l4linux | PORT: 000020d8 - 000020df
io | request resource: IOPORT [000000000020d8-000000000020df 8]
non-pref (32bit) (align=7 flags=4003)
io |
l4linux | PORT: 000020f4 - 000020f7
io | request resource: IOPORT [000000000020f4-000000000020f7 4]
non-pref (32bit) (align=3 flags=4003)
io |
l4linux | PORT: 000020d0 - 000020d7
io | request resource: IOPORT [000000000020d0-000000000020d7 8]
non-pref (32bit) (align=7 flags=4003)
io |
l4linux | PORT: 000020f0 - 000020f3
io | request resource: IOPORT [000000000020f0-000000000020f3 4]
non-pref (32bit) (align=3 flags=4003)
io |
l4linux | PORT: 000020b0 - 000020bf
io | request resource: IOPORT [000000000020b0-000000000020bf 10]
non-pref (32bit) (align=f flags=4003)
io |
l4linux | Device:
l4linux | IRQ: 00000010 - 00000010
io | request resource: IOPORT [00000000000010-00000000000010 1]
non-pref (32bit) (align=0 flags=4003)
io |
l4linux | PORT: 00001000 - 000010ff
io | request resource: IOPORT [00000000001000-000000000010ff 100]
non-pref (32bit) (align=ff flags=4003)
io |
l4linux | MEM: 90100000 - 90100fff
io | request resource: IOPORT [00000090100000-00000090100fff 1000]
non-pref (32bit) (align=fff flags=4003)
io |
l4linux | MEM: 90000000 - 9000ffff
io | request resource: IOPORT [00000090000000-0000009000ffff 10000]
non-pref (32bit) (align=ffff flags=4003)
io |
l4linux | l4x_fiasco_gdt_entry_offset = 9
l4linux | rtc not found
l4linux | WARNING: RTC server does not seem there!
l4linux | l4lx_thread_create: Created thread 416 (cpu0) (u:b3000400,
v:b3000600, sp:007dfff4)
l4linux | main thread will be 416
l4linux | l4x_register_pointer_section: addr = 007de000 size = 1163264
l4linux | section-with-init: virt: 0x7de000 to 0x8f9fff [1136 KiB]
l4linux | section-with-init: Phys: 0x00a41000 to 0x00b5d000, Size: 1163264
l4linux | l4x_linux_startup: thread 416.
l4linux | Main thread running, waiting...
l4linux | main thread: received startup message.
l4linux | WARNING: Unknown wrmsr: 0000008b at 0x6f7d1f
l4linux | WARNING: Unknown rdmsr: 0000008b at 0x6f7d27
l4linux | l4x_setup_memory: Forcing superpages for main memory
l4linux | l4re_global_env: 0xb1007f04
l4linux | Main memory size: 800MB
l4linux | Main memory: virt: 0xc00000 to 0x32bfffff [819200 KiB]
l4linux | Main memory: Phys: 0x1a800000 to 0x4c800000, Size: 838860800
l4linux | Filling lower ptabs...
l4linux | Done (1533 entries).
l4linux | l4x_register_pointer_section: addr = 007de000 size = 1163264
l4linux | end: virt: 0x7de000 to 0x8f9fff [1136 KiB]
l4linux | end: Phys: 0x00a41000 to 0x00b5d000, Size: 1163264
l4linux | l4x_rd_path: rom/squeezesmall-x.img
l4linux | Loading: rom/squeezesmall-x.img
l4linux | INITRD: Size of RAMdisk is 393216KiB
l4linux | RAMdisk from 3ac00000 to 52c00000 [393216KiB]
Linux version 3.0.0-l4-svn23 (root@mayuresh) (gcc version 4.6.3
(Ubuntu/Linaro 4.6.3-1ubuntu5) ) #16 SMP Wed Jul 25 17:05:02 CEST 2012
Disabled fast string operations
BIOS-provided physical RAM map:
L4Lx-Memory: 0000000000000000 - 0000000000400000 (reserved)
L4Lx-Memory: 0000000000400000 - 00000000008fa000 (usable)
L4Lx-Memory: 00000000008fa000 - 0000000000c00000 (unusable)
L4Lx-Memory: 0000000000c00000 - 0000000032c00000 (usable)
Notice: NX (Execute Disable) protection cannot be enabled: non-PAE kernel!
last_pfn = 0x32c00 max_arch_pfn = 0x100000
init_memory_mapping: 0000000000000000-0000000032c00000
INITRD: 3ac00000 - 52c00000
812MB LOWMEM available.
mapped low ram: 0 - 32c00000
low ram: 0 - 32c00000
Zone PFN ranges:
DMA 0x00000400 -> 0x00000000
Normal 0x00000000 -> 0x00032c00
Movable zone start PFN for each node
early_node_map[2] active PFN ranges
0: 0x00000400 -> 0x000008fa
0: 0x00000c00 -> 0x00032c00
Using APIC driver default
Intel MultiProcessor Specification v1.0
Virtual Wire compatibility mode.
Processors: 1
SMP: Allowing 1 CPUs, 0 hotplug CPUs
Allocating PCI resources starting at 32c00000 (gap: 32c00000:cd400000)
setup_percpu: NR_CPUS:8 nr_cpumask_bits:8 nr_cpu_ids:1 nr_node_ids:1
PERCPU: Embedded 11 pages/cpu @32000000 s20896 r0 d24160 u4194304
Built 1 zonelists in Zone order, mobility grouping on. Total pages: 204458
Kernel command line: mem=800M earlyprintk=yes l4x_rd=rom/squeezesmall-x.img
root=1:0 ramdisk_size=400000
console [earlykdb0] enabled
PID hash table entries: 4096 (order: 2, 16384 bytes)
Dentry cache hash table entries: 131072 (order: 7, 524288 bytes)
Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)
Initializing CPU#0
Memory: 811944k/831488k available (3077k kernel code, 12352k reserved,
1083k data, 220k init, 0k highmem)
virtual kernel memory layout:
fixmap : 0x00100000 - 0x001e7000 ( 924 kB)
vmalloc : 0x32c00000 - 0x3ac00000 ( 128 MB)
lowmem : 0x00000000 - 0x32c00000 ( 812 MB)
.init : 0x00811000 - 0x00848000 ( 220 kB)
.data : 0x00701618 - 0x008102a0 (1083 kB)
.text : 0x00400000 - 0x00701618 (3077 kB)
Hierarchical RCU implementation.
NR_IRQS:512
l4lx_irq_init: l4lx_irq_max = 512
l4linux | rtc not found
Console: colour VGA+ 80x25
console [tty0] enabled
l4lx_irq_dev_startup_timer(0)
l4linux | l4lx_thread_create: Created thread 41f (timer.i0) (u:b3000800,
v:00000000, sp:0087fff8)
Detected 1596.021 MHz procesl4linux | timer_irq_thread: Starting timer IRQ
thread.
sor.
Calibrating delay loop (skipped), value calculated using timer frequency..
3192.04 BogoMIPS (lpj=15960210)
pid_max: default: 32768 minimum: 301
Mount-cache hash table entries: 512
l4linux | WARNING: Unknown wrmsr: 0000008b at 0x6f7d1f
l4linux | WARNING: Unknown rdmsr: 0000008b at 0x6f7d27
Disabled fast string operations
CPU: Physical Processor ID: 0
CPU: Processor Core ID: 0
SMP alternatives: switching to UP code
Freeing SMP alternatives: 24k freed
CPU0: Intel(R) Atom(TM) CPU 330 @ 1.60GHz stepping 02
Performance Events: l4linux | WARNING: Unknown rdmsr: 00000345 at 0x817cac
no PEBS fmt3+, Atom events, l4linux | WARNING: Unknown rdmsr: 00000186 at
0x818311
l4linux | WARNING: Unknown rdmsr: 00000187 at 0x818311
l4linux | WARNING: Unknown rdmsr: 0000038d at 0x818344
Broken BIOS detected, complain to your hardware vendor.
[Firmware Bug]: the BIOS has corrupted hw-PMU resources (MSR 38d is
b30006000000038d)
Intel PMU driver.
l4linux | Page fault (non-resolved): pfa=1e3342 pc=416170
l4linux | Page fault (non-resolved): pfa=1a8 pc=493edb
Die message: Trap: 14
Trap: 14: 0004 [#1] SMP
Modules linked in:
Pid: 1, comm: swapper Not tainted 3.0.0-l4-svn23 #16
EIP: 0000:[<00493edb>] EFLAGS: 00010202 CPU: 0
EIP is at do_coredump+0x4b/0xa50
EAX: 00000000 EBX: 0000000a ECX: 31c35fb4 EDX: 0000000b
ESI: 31c35cac EDI: 00000000 EBP: 31c35c24 ESP: 31c35b8c
DS: 0000 ES: 0000 FS: 005b GS: 0043 SS: 0023
Process swapper (pid: 1, ti=31c34000 task=31c33bc0 task.ti=31c34000)
Stack:
31c35b94 00000000 31c35c04 0046a6b2 00000001 00000041 b3000600 31c15000
00000000 31c16dc0 0000000b 0048b223 31c268f8 0000000b 31c26904 00000000
31c35bd8 0043308d 0000000b 31c35bec 31c33e30 31c35cac 31c35bec 0000000b
Call Trace:
[<0046a6b2>] ? get_page_from_freelist+0x142/0x460
[<0048b223>] ? kmem_cache_free+0x43/0x60
[<0043308d>] ? __sigqueue_free+0x2d/0x30
[<0046aaab>] ? __alloc_pages_nodemask+0xdb/0x560
[<004351f4>] get_signal_to_deliver+0x174/0x3b0
[<00408653>] do_signal+0x43/0x7a0
[<006fd6e0>] ? cache_alloc_refill+0x66/0x425
[<007011ed>] ? _raw_spin_unlock_irqrestore+0xd/0x10
[<004339fe>] ? signal_wake_up+0x2e/0x40
[<00433b7c>] ? complete_signal+0xec/0x1f0
[<00433db8>] ? __send_signal.constprop.31+0x138/0x2b0
[<007011ed>] ? _raw_spin_unlock_irqrestore+0xd/0x10
[<004345f6>] ? force_sig_info+0xa6/0xd0
[<00403541>] l4x_deliver_signal+0x61/0x70
[<0042cc60>] ? remote_softirq_receive+0x40/0x40
[<007011ed>] ? _raw_spin_unlock_irqrestore+0xd/0x10
[<00586a76>] ? vgacon_set_cursor_size.isra.11+0x96/0x120
[<00416170>] ? native_apic_mem_write+0x10/0x20
[<006fc14d>] l4x_vcpu_entry_kern+0x3f9/0x99c
[<0044354d>] ? atomic_notifier_call_chain+0x1d/0x20
[<005a8ff2>] ? notify_update+0x22/0x30
[<005a9bee>] ? vt_console_print+0x25e/0x340
[<005a9990>] ? set_cursor+0x80/0x80
[<00416170>] ? native_apic_mem_write+0x10/0x20
[<007011ed>] ? _raw_spin_unlock_irqrestore+0xd/0x10
[<004282e1>] ? console_unlock+0x171/0x1c0
[<0040477f>] l4x_vcpu_entry+0x5ff/0x1790
[<00428511>] ? vprintk+0x191/0x3e0
[<0040477f>] ? l4x_vcpu_entry+0x5ff/0x1790
[<007011ed>] ? _raw_spin_unlock_irqrestore+0xd/0x10
[<00428511>] ? vprintk+0x191/0x3e0
[<004143cb>] ? perf_events_lapic_init+0x2b/0x30
[<008184cf>] ? init_hw_perf_events+0xcca/0xe8b
[<006f7b07>] ? print_cpu_info+0x93/0x125
[<00817805>] ? check_bugs+0xe6/0xe6
[<0040005b>] ? do_one_initcall+0x2b/0x170
[<0081a071>] ? native_smp_prepare_cpus+0x1c0/0x1c7
[<008115b2>] ? start_kernel+0x2b1/0x2b1
[<008115fd>] ? kernel_init+0x4b/0x10e
[<008115b2>] ? start_kernel+0x2b1/0x2b1
Code: 00 c7 45 d0 00 00 00 00 89 55 90 8b 55 9c 89 7d a4 8b 80 68 01 00 00
c7 45 d4 00 00 00 00 c7 45 cc 00 00 00 00 89 55 c4 89 45 d0 <8b> 87 a8 01
00 00 8b bf 60 01 00 00 89 4d c8 89 45 d4 85 ff 89
EIP: [<00493edb>] do_coredump+0x4b/0xa50 SS:ESP 0023:31c35b8c
---[ end trace 4eaa2a86a8e2da22 ]---
Kernel panic - not syncing: Attempted to kill init!
Pid: 1, comm: swapper Tainted: G D 3.0.0-l4-svn23 #16
Call Trace:
[<006fcf1c>] ? printk+0x18/0x1a
[<006fce1a>] panic+0x57/0x141
[<0042b053>] do_exit+0x6b3/0x6c0
[<007011ed>] ? _raw_spin_unlock_irqrestore+0xd/0x10
[<006fcf1c>] ? printk+0x18/0x1a
[<0040e300>] oops_end+0x70/0x90
[<0040e465>] die+0x45/0x70
[<00493edb>] ? do_coredump+0x4b/0xa50
[<0046a6b2>] ? get_page_from_freelist+0x142/0x460
[<0048b223>] ? kmem_cache_free+0x43/0x60
[<0043308d>] ? __sigqueue_free+0x2d/0x30
[<0046aaab>] ? __alloc_pages_nodemask+0xdb/0x560
[<004351f4>] ? get_signal_to_deliver+0x174/0x3b0
[<00408653>] ? do_signal+0x43/0x7a0
[<006fd6e0>] ? cache_alloc_refill+0x66/0x425
[<007011ed>] ? _raw_spin_unlock_irqrestore+0xd/0x10
[<004339fe>] ? signal_wake_up+0x2e/0x40
[<00433b7c>] ? complete_signal+0xec/0x1f0
[<00433db8>] ? __send_signal.constprop.31+0x138/0x2b0
[<007011ed>] ? _raw_spin_unlock_irqrestore+0xd/0x10
[<004345f6>] ? force_sig_info+0xa6/0xd0
[<00403541>] ? l4x_deliver_signal+0x61/0x70
[<0042cc60>] ? remote_softirq_receive+0x40/0x40
[<007011ed>] ? _raw_spin_unlock_irqrestore+0xd/0x10
[<00586a76>] ? vgacon_set_cursor_size.isra.11+0x96/0x120
[<00416170>] ? native_apic_mem_write+0x10/0x20
[<006fc14d>] ? l4x_vcpu_entry_kern+0x3f9/0x99c
[<0044354d>] ? atomic_notifier_call_chain+0x1d/0x20
[<005a8ff2>] ? notify_update+0x22/0x30
[<005a9bee>] ? vt_console_print+0x25e/0x340
[<005a9990>] ? set_cursor+0x80/0x80
[<00416170>] ? native_apic_mem_write+0x10/0x20
[<007011ed>] ? _raw_spin_unlock_irqrestore+0xd/0x10
[<004282e1>] ? console_unlock+0x171/0x1c0
[<0040477f>] ? l4x_vcpu_entry+0x5ff/0x1790
[<00428511>] ? vprintk+0x191/0x3e0
[<0040477f>] ? l4x_vcpu_entry+0x5ff/0x1790
[<007011ed>] ? _raw_spin_unlock_irqrestore+0xd/0x10
[<00428511>] ? vprintk+0x191/0x3e0
[<004143cb>] ? perf_events_lapic_init+0x2b/0x30
[<008184cf>] ? init_hw_perf_events+0xcca/0xe8b
[<006f7b07>] ? print_cpu_info+0x93/0x125
[<00817805>] ? check_bugs+0xe6/0xe6
[<0040005b>] ? do_one_initcall+0x2b/0x170
[<0081a071>] ? native_smp_prepare_cpus+0x1c0/0x1c7
[<008115b2>] ? start_kernel+0x2b1/0x2b1
[<008115fd>] ? kernel_init+0x4b/0x10e
[<008115b2>] ? start_kernel+0x2b1/0x2b1
panic: going to sleep forever, bye
l4linux | panic: going to sleep forever, bye
Anand Mayuresh Vivekanand
2
1
Hello.
I need to send megabytes of data from one virtual machine to another.
I looked into source code of IPC streams for C++, but did not find any facility for sending the content of a large buffer (say, 512B).
I have also noticed the buffer registers in the UTCB, but I haven't figured out how to use it.
If there is a way to send the content of a large buffer, would you please reference me to the related documents?
A simple example would be very helpful.
2
1