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

[Xen-devel] Question regarding behavior of virt_to_bus ....

Hi Folks,

I need some large chunk of physical memory, so I allocate it early using alloc_bootmem_low_pages and use it later (akin to bigphysarea patch). The trouble I am having is the following. Suppose the virtual address for the memory area is 0xc14d6000. After xen_create_contiguous_region call, I do a virt_to_bus and the bus address comes out to be 0x18000000. So far so good. However, later when I try to use this memory in a device driver, the call to virt_to_bus returns 0x14d6000. This result is baffling me, since that's what it would look like in a normal 32-bit i386 world, and not in xenified world.

Am I doing something stupid, or is there some technicality of memory subsystem that I don't get. Ofcourse, if I just use pci_alloc_consistent (for a small buffer), everything works fine, since there is no bootmem related contortion involved.

I will highly appreciate any input on this.

Himanshu Raj
PhD Student, GaTech (www.cc.gatech.edu/~rhim)
I prefer to receive attachments in an open, non-proprietary format.

Xen-devel mailing list



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