|
|
|
|
|
|
|
|
|
|
xen-devel
Re: [Xen-devel] Why the machine address is out of the end of real physic
IIRC it does, yes.
-- Keir
On 24/4/08 10:52, "ken lost" <kenlost@xxxxxxxxx> wrote:
> Does it mean that On xen domain0 the file /proc/iomem show the real
machine
> memory map, not the psudo physical memory map ?
Can I get a memory page whose
> machine address is below 4G ?
These are the information of file iomem
# cat
> /proc/iomem
00000000-0009cfff : System RAM
0009dc00-0009ffff :
> reserved
000a0000-000bffff : Video RAM area
000cb000-000cbfff : Adapter
> ROM
000f0000-000fffff : System ROM
00100000-bfefffff : System RAM
> 00100000-00bfffff : Hypervisor code and data
00be6080-00be6143 : Crash
> note
00be7b80-00be7c77 : Crash note
00be7d00-00be7dc3 : Crash note
> 00be7e80-00be7f43 : Crash note
bff00000-bff08fff : ACPI
> Tables
bff09000-bff7ffff : ACPI Non-volatile Storage
bff80000-bfffffff :
> reserved
c8000000-c80003ff : 0000:00:1d.7
c8000000-c80003ff :
> ehci_hcd
c8000400-c80007ff : 0000:00:1f.2
c8100000-c82fffff : PCI Bus #01
> c8200000-c82fffff : PCI Bus #02
c8200000-c82fffff : PCI Bus #04
> c8200000-c821ffff : 0000:04:00.0
c8200000-c821ffff : e1000
> c8220000-c823ffff : 0000:04:00.1
c8220000-c823ffff :
> e1000
c8300000-c83fffff : PCI Bus #0c
c8300000-c830ffff : 0000:0c:02.0
> c8320000-c833ffff : 0000:0c:02.0
d0000000-d7ffffff : PCI Bus #0c
> d0000000-d7ffffff : 0000:0c:02.0
e0000000-efffffff :
> reserved
fe700000-fe7003ff : 0000:00:08.0
fec00000-fec0ffff :
> reserved
fee00000-fee00fff : reserved
ff000000-ffffffff :
> reserved
100000000-33fffffff : System RAM
2008/4/24, Keir Fraser
> <keir.fraser@xxxxxxxxxxxxx>:
> Physical memory doesn't run from 0MB to 8192MB.
> There is always a hole just
> below 4096MB, which is where PCI devices and
> video framebuffers and the like
> get mapped. The RAM which would be in that
> hole gets remapped above 4096MB.
>
> So probably your memory map is something
> like 0MB-3584MB and 4096MB-8704MB
> (i.e., 512MB is remapped). See the e820
> map that Xen (or native Linux)
> prints when you first boot your machine.
>
>
> -- Keir
>
> On 24/4/08 02:20, "ken lost" <kenlost@xxxxxxxxx> wrote:
>
> >
> Hello evrybody,
> >
> > I have a machine with 8G RAM, which runs on Redhat
> Enterprise linux
> > 5.1(kernel 2.6.18-53.el5xen, i386 platform PAE, xen 3.0.3
> ) . My
> > driver need run on Domain0.
> > The code has this code for get a
> momory and its machine address for BIOS.
> >
> > dmamem_buff =
> (void*)__get_free_pages( GFP_KERNEL|GFP_DMA,
> > DMA_MEMORY_ORDER);
> >
> maddr_t ma = virt_to_machine(dmamem_buff) ;
> > printk("machine
> address is %lldM\n", ma/1024/1024 );
> > printk("machine address is
> 0x%llx\n", ma );
> > ...
> >
> > But the result :
> > machine
> address is 8487M
> > machine address is 0x212790000
> >
> > Why the
> machine address is out of the end of real physical memory?
> >
> >
> _______________________________________________
> > Xen-devel mailing list
> >
> Xen-devel@xxxxxxxxxxxxxxxxxxx
> >
> http://lists.xensource.com/xen-devel
>
>
>
--
读懂一本书,精于一件事.
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
|
|
|
|