El Wed, 19 May 2010 16:29:21 +0200
Sergio Lopez <s...@sinrega.org> escribió:
>   - 01defpager-mutex.patch: Properly unlock the mutex before returning
>     NO_BLOCK in pager_read_offset.
> 
>   - 02defpager-extread.patch: Add an "external" attribute to
>     dstruct structure. In default_read, if the object is external,
>     resolve a read request with a zero filled page.
> 
>   - 03defpager-synclock.patch: Remove user reference count logic, to
>     avoid setting an arbitrary limit to the number of requests
>     processed by an object. Don't request completion notification for
>     m_o_lock_request. I think is worth noting that the original
> problem which makes default_pager get stuck waiting for a seqno that
> never arrives in S_default_pager_object_set_size, was just that
>     reply_port and seqno arguments were in wrong order.
> 
>   - 04defpager-objectsize.patch: In S_default_pager_object_create,
>     reject values for "size" other than "vm_page_size", since internal
>     logic doesn't properly support it (though object size limit can be
>     increased by sucesive calls to S_default_pager_set_size).

After applying these patches, you'll also need this one to be able to
compile proxy-defpager (which still doesn't work, but that's another
question...).

diff -dur a/trans/proxy-defpager.c b/trans/proxy-defpager.c
--- a/trans/proxy-defpager.c	2010-05-21 08:22:12.000000000 +0000
+++ b/trans/proxy-defpager.c	2010-05-21 08:22:25.000000000 +0000
@@ -107,7 +107,6 @@
 
 kern_return_t
 S_default_pager_object_set_size (mach_port_t memory_object,
-				 mach_port_t reply_port,
 				 mach_port_seqno_t seqno,
 				 vm_size_t object_size_limit)
 {

Reply via email to