Author: sthibault
Date: 2012-01-23 23:24:05 +0000 (Mon, 23 Jan 2012)
New Revision: 5128

Added:
   glibc-package/trunk/debian/patches/hurd-i386/cvs-mmap.diff
Removed:
   glibc-package/trunk/debian/patches/hurd-i386/submitted-mmap.diff
Modified:
   glibc-package/trunk/debian/patches/series
Log:
mv {submitted,cvs}-mmap.diff

Copied: glibc-package/trunk/debian/patches/hurd-i386/cvs-mmap.diff (from rev 
5127, glibc-package/trunk/debian/patches/hurd-i386/submitted-mmap.diff)
===================================================================
--- glibc-package/trunk/debian/patches/hurd-i386/cvs-mmap.diff                  
        (rev 0)
+++ glibc-package/trunk/debian/patches/hurd-i386/cvs-mmap.diff  2012-01-23 
23:24:05 UTC (rev 5128)
@@ -0,0 +1,83 @@
+Take addr parameter of mmap as suggestion even without MAP_FIXED.
+
+2011-12-26  Samuel Thibault  <[email protected]>
+
+        * sysdeps/mach/hurd/mmap.c (__mmap): When `mapaddr' is non zero, try
+        __vm_allocate and __vm_map with `anywhere' set to 0 first, and try with
+        `anywhere' set to 1 only on KERN_NO_SPACE error.
+
+---
+ mmap.c |   44 ++++++++++++++++++++++++++++++--------------
+ 1 file changed, 30 insertions(+), 14 deletions(-)
+diff --git a/sysdeps/mach/hurd/mmap.c b/sysdeps/mach/hurd/mmap.c
+index 1d1460c..96d7661 100644
+--- a/sysdeps/mach/hurd/mmap.c
++++ b/sysdeps/mach/hurd/mmap.c
+@@ -51,15 +51,20 @@ __mmap (__ptr_t addr, size_t len, int prot, int flags, int 
fd, off_t offset)
+     {
+       /* vm_allocate has (a little) less overhead in the kernel too.  */
+       err = __vm_allocate (__mach_task_self (), &mapaddr, len,
+-                         !(flags & MAP_FIXED));
++                         !mapaddr);
+ 
+-      if (err == KERN_NO_SPACE && (flags & MAP_FIXED))
++      if (err == KERN_NO_SPACE)
+       {
+-        /* XXX this is not atomic as it is in unix! */
+-        /* The region is already allocated; deallocate it first.  */
+-        err = __vm_deallocate (__mach_task_self (), mapaddr, len);
+-        if (!err)
+-          err = __vm_allocate (__mach_task_self (), &mapaddr, len, 0);
++        if (flags & MAP_FIXED)
++          {
++            /* XXX this is not atomic as it is in unix! */
++            /* The region is already allocated; deallocate it first.  */
++            err = __vm_deallocate (__mach_task_self (), mapaddr, len);
++            if (!err)
++              err = __vm_allocate (__mach_task_self (), &mapaddr, len, 0);
++          }
++        else if (mapaddr)
++          err = __vm_allocate (__mach_task_self (), &mapaddr, len, 1);
+       }
+ 
+       return err ? (__ptr_t) (long int) __hurd_fail (err) : (__ptr_t) mapaddr;
+@@ -135,21 +140,32 @@ __mmap (__ptr_t addr, size_t len, int prot, int flags, 
int fd, off_t offset)
+ 
+   err = __vm_map (__mach_task_self (),
+                 &mapaddr, (vm_size_t) len, (vm_address_t) 0,
+-                ! (flags & MAP_FIXED),
++                !mapaddr,
+                 memobj, (vm_offset_t) offset,
+                 ! (flags & MAP_SHARED),
+                 vmprot, VM_PROT_ALL,
+                 (flags & MAP_SHARED) ? VM_INHERIT_SHARE : VM_INHERIT_COPY);
+ 
+-  if (err == KERN_NO_SPACE && (flags & MAP_FIXED))
++  if (err == KERN_NO_SPACE)
+     {
+-      /* XXX this is not atomic as it is in unix! */
+-      /* The region is already allocated; deallocate it first.  */
+-      err = __vm_deallocate (__mach_task_self (), mapaddr, len);
+-      if (! err)
++      if (flags & MAP_FIXED)
++      {
++        /* XXX this is not atomic as it is in unix! */
++        /* The region is already allocated; deallocate it first.  */
++        err = __vm_deallocate (__mach_task_self (), mapaddr, len);
++        if (! err)
++          err = __vm_map (__mach_task_self (),
++                          &mapaddr, (vm_size_t) len, (vm_address_t) 0,
++                          0, memobj, (vm_offset_t) offset,
++                          ! (flags & MAP_SHARED),
++                          vmprot, VM_PROT_ALL,
++                          (flags & MAP_SHARED) ? VM_INHERIT_SHARE
++                          : VM_INHERIT_COPY);
++      }
++      else if (mapaddr)
+       err = __vm_map (__mach_task_self (),
+                       &mapaddr, (vm_size_t) len, (vm_address_t) 0,
+-                      0, memobj, (vm_offset_t) offset,
++                      1, memobj, (vm_offset_t) offset,
+                       ! (flags & MAP_SHARED),
+                       vmprot, VM_PROT_ALL,
+                       (flags & MAP_SHARED) ? VM_INHERIT_SHARE

Deleted: glibc-package/trunk/debian/patches/hurd-i386/submitted-mmap.diff
===================================================================
--- glibc-package/trunk/debian/patches/hurd-i386/submitted-mmap.diff    
2012-01-23 21:30:07 UTC (rev 5127)
+++ glibc-package/trunk/debian/patches/hurd-i386/submitted-mmap.diff    
2012-01-23 23:24:05 UTC (rev 5128)
@@ -1,83 +0,0 @@
-Take addr parameter of mmap as suggestion even without MAP_FIXED.
-
-2011-12-26  Samuel Thibault  <[email protected]>
-
-        * sysdeps/mach/hurd/mmap.c (__mmap): When `mapaddr' is non zero, try
-        __vm_allocate and __vm_map with `anywhere' set to 0 first, and try with
-        `anywhere' set to 1 only on KERN_NO_SPACE error.
-
----
- mmap.c |   44 ++++++++++++++++++++++++++++++--------------
- 1 file changed, 30 insertions(+), 14 deletions(-)
-diff --git a/sysdeps/mach/hurd/mmap.c b/sysdeps/mach/hurd/mmap.c
-index 1d1460c..96d7661 100644
---- a/sysdeps/mach/hurd/mmap.c
-+++ b/sysdeps/mach/hurd/mmap.c
-@@ -51,15 +51,20 @@ __mmap (__ptr_t addr, size_t len, int prot, int flags, int 
fd, off_t offset)
-     {
-       /* vm_allocate has (a little) less overhead in the kernel too.  */
-       err = __vm_allocate (__mach_task_self (), &mapaddr, len,
--                         !(flags & MAP_FIXED));
-+                         !mapaddr);
- 
--      if (err == KERN_NO_SPACE && (flags & MAP_FIXED))
-+      if (err == KERN_NO_SPACE)
-       {
--        /* XXX this is not atomic as it is in unix! */
--        /* The region is already allocated; deallocate it first.  */
--        err = __vm_deallocate (__mach_task_self (), mapaddr, len);
--        if (!err)
--          err = __vm_allocate (__mach_task_self (), &mapaddr, len, 0);
-+        if (flags & MAP_FIXED)
-+          {
-+            /* XXX this is not atomic as it is in unix! */
-+            /* The region is already allocated; deallocate it first.  */
-+            err = __vm_deallocate (__mach_task_self (), mapaddr, len);
-+            if (!err)
-+              err = __vm_allocate (__mach_task_self (), &mapaddr, len, 0);
-+          }
-+        else if (mapaddr)
-+          err = __vm_allocate (__mach_task_self (), &mapaddr, len, 1);
-       }
- 
-       return err ? (__ptr_t) (long int) __hurd_fail (err) : (__ptr_t) mapaddr;
-@@ -135,21 +140,32 @@ __mmap (__ptr_t addr, size_t len, int prot, int flags, 
int fd, off_t offset)
- 
-   err = __vm_map (__mach_task_self (),
-                 &mapaddr, (vm_size_t) len, (vm_address_t) 0,
--                ! (flags & MAP_FIXED),
-+                !mapaddr,
-                 memobj, (vm_offset_t) offset,
-                 ! (flags & MAP_SHARED),
-                 vmprot, VM_PROT_ALL,
-                 (flags & MAP_SHARED) ? VM_INHERIT_SHARE : VM_INHERIT_COPY);
- 
--  if (err == KERN_NO_SPACE && (flags & MAP_FIXED))
-+  if (err == KERN_NO_SPACE)
-     {
--      /* XXX this is not atomic as it is in unix! */
--      /* The region is already allocated; deallocate it first.  */
--      err = __vm_deallocate (__mach_task_self (), mapaddr, len);
--      if (! err)
-+      if (flags & MAP_FIXED)
-+      {
-+        /* XXX this is not atomic as it is in unix! */
-+        /* The region is already allocated; deallocate it first.  */
-+        err = __vm_deallocate (__mach_task_self (), mapaddr, len);
-+        if (! err)
-+          err = __vm_map (__mach_task_self (),
-+                          &mapaddr, (vm_size_t) len, (vm_address_t) 0,
-+                          0, memobj, (vm_offset_t) offset,
-+                          ! (flags & MAP_SHARED),
-+                          vmprot, VM_PROT_ALL,
-+                          (flags & MAP_SHARED) ? VM_INHERIT_SHARE
-+                          : VM_INHERIT_COPY);
-+      }
-+      else if (mapaddr)
-       err = __vm_map (__mach_task_self (),
-                       &mapaddr, (vm_size_t) len, (vm_address_t) 0,
--                      0, memobj, (vm_offset_t) offset,
-+                      1, memobj, (vm_offset_t) offset,
-                       ! (flags & MAP_SHARED),
-                       vmprot, VM_PROT_ALL,
-                       (flags & MAP_SHARED) ? VM_INHERIT_SHARE

Modified: glibc-package/trunk/debian/patches/series
===================================================================
--- glibc-package/trunk/debian/patches/series   2012-01-23 21:30:07 UTC (rev 
5127)
+++ glibc-package/trunk/debian/patches/series   2012-01-23 23:24:05 UTC (rev 
5128)
@@ -172,7 +172,7 @@
 hurd-i386/local-select.diff
 hurd-i386/submitted-posix2008.diff
 hurd-i386/submitted-mach-nanosleep.diff
-hurd-i386/submitted-mmap.diff
+hurd-i386/cvs-mmap.diff
 hurd-i386/submitted-hurd-socket-EAFNOSUPPORT.diff
 
 kfreebsd/submitted-libc_once.diff


-- 
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]
Archive: http://lists.debian.org/[email protected]

Reply via email to