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

Re: [Xen-devel] [PATCH] Provide support for multiple frame buffers in Xen



Hi,

I was really hoping to commit this today, but unfortunately, I've
spotted two things: 

1. There are a few uses of *_to_virt() to get persistent mappings
   of arbitrary addresses (PTEs, and pages of linked-list entries).
   That's presumably going to interact badly with Jan's work to support
   very large machines, which will reintroduce [un]map_domain_page()
   for 64-bit x86.

   I wouldn't hold this patch back just for that, specially since the
   code it replaces already uses maddr_to_virt(), but since it needs a
   respin for the other thing I'd like Jan's opinion.

2. This code still allocates user-controlled amounts of stack memory:

> +    {
> +        int size = (nr + BITS_PER_LONG - 1) / BITS_PER_LONG;
> +        unsigned long dirty_bitmap[size];
> +
> +        memset(dirty_bitmap, 0x00, size * BYTES_PER_LONG);
> +
> +        flush_tlb |= shadow_scan_dirty_flags(d, range, 
> (uint8_t*)dirty_bitmap);
> +
> +        rc = -EFAULT;
> +        if ( copy_to_guest(guest_dirty_bitmap,
> +                           (uint8_t*)dirty_bitmap,
> +                           size * BYTES_PER_LONG) == 0 )
> +            rc = 0;
> +    }

Cheers,

Tim.

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

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