[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] Why the machine address is out of the end of real physical memory?


  • To: ken lost <kenlost@xxxxxxxxx>
  • From: Keir Fraser <keir.fraser@xxxxxxxxxxxxx>
  • Date: Thu, 24 Apr 2008 11:05:25 +0100
  • Cc: Xen-devel@xxxxxxxxxxxxxxxxxxx
  • Delivery-date: Thu, 24 Apr 2008 03:06:08 -0700
  • List-id: Xen developer discussion <xen-devel.lists.xensource.com>
  • Thread-index: Acil8rbx9YRSYRHlEd20qAAX8io7RQ==
  • Thread-topic: [Xen-devel] Why the machine address is out of the end of real physical memory?

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


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.