summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--debian/patches/procfs-filesystems.patch17
-rw-r--r--debian/patches/procfs-maps.patch34
2 files changed, 37 insertions, 14 deletions
diff --git a/debian/patches/procfs-filesystems.patch b/debian/patches/procfs-filesystems.patch
index 7205c7f1..cfa28db3 100644
--- a/debian/patches/procfs-filesystems.patch
+++ b/debian/patches/procfs-filesystems.patch
@@ -1,18 +1,25 @@
-From 4b2ab4810ef918cbc4c8bdb9a6f1476e70accace Mon Sep 17 00:00:00 2001
+From 4b30ee4249c752d935e1863365bef457a5389169 Mon Sep 17 00:00:00 2001
From: Justus Winter <4winter@informatik.uni-hamburg.de>
Date: Thu, 18 Sep 2014 19:38:04 +0200
-Subject: [PATCH] procfs: implement /proc/filesystems
+Subject: [PATCH 2/2] procfs: implement /proc/filesystems
* procfs/rootdir.c (rootdir_gc_filesystems): New function.
(rootdir_entries): Use the new function to implement /proc/filesystems.
---
- procfs/rootdir.c | 59 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- 1 file changed, 59 insertions(+)
+ procfs/rootdir.c | 61 +++++++++++++++++++++++++++++++++++++++++++++++++++++++-
+ 1 file changed, 60 insertions(+), 1 deletion(-)
diff --git a/procfs/rootdir.c b/procfs/rootdir.c
-index 0b13119..50ed0d3 100644
+index 0b13119..e500c3a 100644
--- a/procfs/rootdir.c
+++ b/procfs/rootdir.c
+@@ -1,5 +1,5 @@
+ /* Hurd /proc filesystem, permanent files of the root directory.
+- Copyright (C) 2010,13 Free Software Foundation, Inc.
++ Copyright (C) 2010,13,14 Free Software Foundation, Inc.
+
+ This file is part of the GNU Hurd.
+
@@ -32,6 +32,7 @@
#include <sys/stat.h>
#include <argz.h>
diff --git a/debian/patches/procfs-maps.patch b/debian/patches/procfs-maps.patch
index 3d1053fb..7e973e56 100644
--- a/debian/patches/procfs-maps.patch
+++ b/debian/patches/procfs-maps.patch
@@ -1,19 +1,28 @@
-From 5c1494757f27f3ec4feb6b9d85d91d8368ee9d25 Mon Sep 17 00:00:00 2001
+From f89a89b0ecefdc9327f799f9a0394e06cd1997c0 Mon Sep 17 00:00:00 2001
From: Justus Winter <4winter@informatik.uni-hamburg.de>
Date: Thu, 18 Sep 2014 18:38:04 +0200
-Subject: [PATCH] procfs: implement /proc/N/maps
+Subject: [PATCH 1/2] procfs: implement /proc/N/maps
+
+Fixes https://savannah.gnu.org/bugs/?32770 .
* procfs/process.c (process_file_gc_maps): New function.
(entries): Use the new function to implement /proc/N/maps.
---
- procfs/process.c | 95 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- 1 file changed, 95 insertions(+)
+ procfs/process.c | 104 ++++++++++++++++++++++++++++++++++++++++++++++++++++++-
+ 1 file changed, 103 insertions(+), 1 deletion(-)
diff --git a/procfs/process.c b/procfs/process.c
-index 4854148..feb68ff 100644
+index 4854148..a9b1a59 100644
--- a/procfs/process.c
+++ b/procfs/process.c
-@@ -109,6 +109,93 @@ process_file_gc_environ (struct proc_stat *ps, char **contents)
+@@ -1,5 +1,5 @@
+ /* Hurd /proc filesystem, implementation of process directories.
+- Copyright (C) 2010 Free Software Foundation, Inc.
++ Copyright (C) 2010,14 Free Software Foundation, Inc.
+
+ This file is part of the GNU Hurd.
+
+@@ -109,6 +109,100 @@ process_file_gc_environ (struct proc_stat *ps, char **contents)
}
static ssize_t
@@ -43,6 +52,11 @@ index 4854148..feb68ff 100644
+ struct mem_obj *objects = NULL;
+
+ s = open_memstream (contents, &contents_len);
++ if (s == NULL)
++ {
++ *contents = NULL;
++ return 0;
++ }
+
+ while (1)
+ {
@@ -91,8 +105,10 @@ index 4854148..feb68ff 100644
+
+ while (objects)
+ {
-+ mach_port_deallocate (mach_task_self (), objects->port);
-+ objects = objects->next;
++ struct mem_obj *o = objects;
++ mach_port_deallocate (mach_task_self (), o->port);
++ objects = o->next;
++ free (o);
+ }
+
+ /* This is a bit awkward, fortunately vm_region should not fail. */
@@ -107,7 +123,7 @@ index 4854148..feb68ff 100644
process_file_gc_stat (struct proc_stat *ps, char **contents)
{
struct procinfo *pi = proc_stat_proc_info (ps);
-@@ -348,6 +435,14 @@ static struct procfs_dir_entry entries[] = {
+@@ -348,6 +442,14 @@ static struct procfs_dir_entry entries[] = {
},
},
{