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

Re: [Xen-devel] [RFC PATCH] page_alloc: use first half of higher order chunks when halving

On Mon, Apr 14, 2014 at 09:51:34AM +0100, Jan Beulich wrote:
> >>> On 13.04.14 at 23:32, <tim@xxxxxxx> wrote:
> >  (c) If for some reason the current hypercall API is not sufficient
> >      for dom0 to get what it wants, we should consider adding some new
> >      operation/flag/mode somewhere.  But since AFAIK there's already
> >      another path in linux that allocates contiguous DMA buffers
> >      for device drivers, presumably this isn't the case.
> And it should be kept in mind that requesting contiguous memory
> shouldn't be done at will, as it may end up exhausting the portion
> of memory intended for DMA-style allocations (SWIOTLB / DMA-
> coherent allocations in Linux). I.e. neither Dom0 nor DomU should
> be trying to populate large parts of their memory with contiguous
> allocation requests to the hypervisor. They may, if they so desire,
> go and re-arrange their P2M mapping (solely based on what they
> got handed by doing order-0 allocations).

I did try that at some point  - and it did not work.

The reason for trying this was that during the E820 parsing we would
find the MMIO holes/gaps and instead of doing the
'XENMEM_decrease_reservation'/ 'XENMEM_populate_physmap' dance I
thought I could just swap the P2M entries.

That was OK, but the M2P lookup table was not too thrilled with this.
Perhaps I should have used another hypercall to re-arrange the M2P?
I think I did try 'XENMEM_exchange' but that is not the right call either.

Perhaps I should use XENMEM_remove_from_physmap/XENMEM_add_to_physmap
combo ?

> Jan

Xen-devel mailing list



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