summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJustus Winter <4winter@informatik.uni-hamburg.de>2014-04-27 09:34:30 +0200
committerJustus Winter <4winter@informatik.uni-hamburg.de>2014-04-27 09:34:30 +0200
commit08a92c130663d0d3e29ac6b691f2d8781baeb262 (patch)
tree1a3afa9f901a75689fdf92a6b0964f5c24c196c7
parent313a4648a065bbc6fd6074164ce8c480fe2bddb8 (diff)
update ext2fs-two-pagers.patch
-rw-r--r--debian/patches/ext2fs-two-pagers.patch35
1 files changed, 21 insertions, 14 deletions
diff --git a/debian/patches/ext2fs-two-pagers.patch b/debian/patches/ext2fs-two-pagers.patch
index 4f4087f5..6d9d6dee 100644
--- a/debian/patches/ext2fs-two-pagers.patch
+++ b/debian/patches/ext2fs-two-pagers.patch
@@ -1,4 +1,4 @@
-commit f06e4557fed5d86a9eb4ab0a1fe54ba021dc53ed
+commit 6c2cd694f8bb88181bf9a808fc63a5e6463f0386
Author: Justus Winter <4winter@informatik.uni-hamburg.de>
Date: Sat Apr 26 19:48:18 2014 +0200
@@ -30,10 +30,17 @@ Date: Sat Apr 26 19:48:18 2014 +0200
(enable_caching): Likewise.
diff --git a/ext2fs/pager.c b/ext2fs/pager.c
-index 6e99c83..1753831 100644
+index 6e99c83..f3e9489 100644
--- a/ext2fs/pager.c
+++ b/ext2fs/pager.c
-@@ -27,8 +27,11 @@
+@@ -21,14 +21,18 @@
+ #include <unistd.h>
+ #include <string.h>
+ #include <errno.h>
++#include <error.h>
+ #include <hurd/store.h>
+ #include "ext2fs.h"
+
/* XXX */
#include "../libpager/priv.h"
@@ -47,7 +54,7 @@ index 6e99c83..1753831 100644
pthread_spinlock_t node_to_page_lock = PTHREAD_SPINLOCK_INITIALIZER;
-@@ -1188,21 +1191,56 @@ disk_cache_block_is_ref (block_t block)
+@@ -1188,21 +1192,56 @@ disk_cache_block_is_ref (block_t block)
return ref;
}
@@ -107,7 +114,7 @@ index 6e99c83..1753831 100644
}
/* Call this to create a FILE_DATA pager and return a send right.
-@@ -1241,7 +1279,7 @@ diskfs_get_filemap (struct node *node, vm_prot_t prot)
+@@ -1241,7 +1280,7 @@ diskfs_get_filemap (struct node *node, vm_prot_t prot)
upi->max_prot = prot;
diskfs_nref_light (node);
node->dn->pager =
@@ -116,7 +123,7 @@ index 6e99c83..1753831 100644
MEMORY_OBJECT_COPY_DELAY, 0);
if (node->dn->pager == 0)
{
-@@ -1324,14 +1362,13 @@ diskfs_shutdown_pager ()
+@@ -1324,14 +1363,13 @@ diskfs_shutdown_pager ()
error_t shutdown_one (void *v_p)
{
struct pager *p = v_p;
@@ -133,7 +140,7 @@ index 6e99c83..1753831 100644
/* Sync everything on the the disk pager. */
sync_global (1);
-@@ -1347,13 +1384,12 @@ diskfs_sync_everything (int wait)
+@@ -1347,13 +1385,12 @@ diskfs_sync_everything (int wait)
error_t sync_one (void *v_p)
{
struct pager *p = v_p;
@@ -149,7 +156,7 @@ index 6e99c83..1753831 100644
/* Do things on the the disk pager. */
sync_global (wait);
-@@ -1372,7 +1408,8 @@ disable_caching ()
+@@ -1372,7 +1409,8 @@ disable_caching ()
/* Loop through the pagers and turn off caching one by one,
synchronously. That should cause termination of each pager. */
@@ -159,7 +166,7 @@ index 6e99c83..1753831 100644
}
static void
-@@ -1400,7 +1437,8 @@ enable_caching ()
+@@ -1400,7 +1438,8 @@ enable_caching ()
return 0;
}
@@ -169,7 +176,7 @@ index 6e99c83..1753831 100644
}
/* Tell diskfs if there are pagers exported, and if none, then
-@@ -1408,7 +1446,7 @@ enable_caching ()
+@@ -1408,7 +1447,7 @@ enable_caching ()
int
diskfs_pager_users ()
{
@@ -178,7 +185,7 @@ index 6e99c83..1753831 100644
if (npagers <= 1)
return 0;
-@@ -1421,8 +1459,8 @@ diskfs_pager_users ()
+@@ -1421,8 +1460,8 @@ diskfs_pager_users ()
immediately. XXX */
sleep (1);
@@ -189,7 +196,7 @@ index 6e99c83..1753831 100644
return 0;
/* Darn, there are actual honest users. Turn caching back on,
-@@ -1430,7 +1468,7 @@ diskfs_pager_users ()
+@@ -1430,7 +1469,7 @@ diskfs_pager_users ()
enable_caching ();
}
@@ -198,7 +205,7 @@ index 6e99c83..1753831 100644
return 1;
}
-@@ -1441,17 +1479,15 @@ vm_prot_t
+@@ -1441,17 +1480,15 @@ vm_prot_t
diskfs_max_user_pager_prot ()
{
vm_prot_t max_prot = 0;
@@ -219,7 +226,7 @@ index 6e99c83..1753831 100644
/* Stop iterating if MAX_PROT is as filled as it's going to get. */
return
(max_prot == (VM_PROT_READ|VM_PROT_WRITE|VM_PROT_EXECUTE)) ? 1 : 0;
-@@ -1463,12 +1499,12 @@ diskfs_max_user_pager_prot ()
+@@ -1463,12 +1500,12 @@ diskfs_max_user_pager_prot ()
immediately. XXX */
sleep (1);