From 22187c16f858898e19d9ef7f5bb128d7e56d38c7 Mon Sep 17 00:00:00 2001 From: Samuel Thibault Date: Fri, 1 Nov 2013 22:38:52 +0000 Subject: New upstream snapshot --- procfs/rootdir.c | 55 ++++++++++++++++++++++++++++++++++++++++++------------- 1 file changed, 42 insertions(+), 13 deletions(-) diff --git a/procfs/rootdir.c b/procfs/rootdir.c index 34bf91ce..94b0ddb2 100644 --- a/procfs/rootdir.c +++ b/procfs/rootdir.c @@ -407,6 +407,47 @@ rootdir_gc_fakeself (void *hook, char **contents, ssize_t *contents_len) /* The mtab translator to use by default for the "mounts" node. */ #define MTAB_TRANSLATOR "/hurd/mtab" +static struct node *rootdir_mounts_node; +static pthread_spinlock_t rootdir_mounts_node_lock = + PTHREAD_SPINLOCK_INITIALIZER; + +static struct node * +rootdir_mounts_make_node (void *dir_hook, const void *entry_hook) +{ + struct node *np, *prev; + + pthread_spin_lock (&rootdir_mounts_node_lock); + np = rootdir_mounts_node; + pthread_spin_unlock (&rootdir_mounts_node_lock); + + if (np != NULL) + { + netfs_nref (np); + return np; + } + + np = procfs_make_node (entry_hook, dir_hook); + if (np == NULL) + return NULL; + + procfs_node_chtype (np, S_IFREG | S_IPTRANS); + procfs_node_chmod (np, 0444); + + pthread_spin_lock (&rootdir_mounts_node_lock); + prev = rootdir_mounts_node; + if (rootdir_mounts_node == NULL) + rootdir_mounts_node = np; + pthread_spin_unlock (&rootdir_mounts_node_lock); + + if (prev != NULL) + { + procfs_cleanup (np); + np = prev; + } + + return np; +} + static error_t rootdir_mounts_get_translator (void *hook, char **argz, size_t *argz_len) { @@ -451,18 +492,6 @@ rootdir_symlink_make_node (void *dir_hook, const void *entry_hook) return np; } -static struct node * -rootdir_translator_make_node (void *dir_hook, const void *entry_hook) -{ - struct node *np = procfs_make_node (entry_hook, dir_hook); - if (np) - { - procfs_node_chtype (np, S_IFREG | S_IPTRANS); - procfs_node_chmod (np, 0444); - } - return np; -} - static const struct procfs_dir_entry rootdir_entries[] = { { .name = "self", @@ -530,7 +559,7 @@ static const struct procfs_dir_entry rootdir_entries[] = { .get_translator = rootdir_mounts_get_translator, }, .ops = { - .make_node = rootdir_translator_make_node, + .make_node = rootdir_mounts_make_node, .exists = rootdir_mounts_exists, } }, -- cgit v1.2.3 From 54e3446b2134baee308d83d4a279a610173173b2 Mon Sep 17 00:00:00 2001 From: Samuel Thibault Date: Fri, 1 Nov 2013 22:42:25 +0000 Subject: New upstream snapshot. * control: bump libc0.3-dev dependency to make sure we don't get internal inlines exported by previous versions. --- debian/changelog | 8 ++++++++ debian/control | 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/debian/changelog b/debian/changelog index ad9498cd..fbd57b83 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,11 @@ +hurd (1:0.5.git20131101-1) UNRELEASED; urgency=low + + * New upstream snapshot. + * control: bump libc0.3-dev dependency to make sure we don't get internal + inlines exported by previous versions. + + -- Samuel Thibault Sat, 28 Sep 2013 14:25:53 +0000 + hurd (1:0.5.git20130928-1) unstable; urgency=low * New upstream release, yay! diff --git a/debian/control b/debian/control index 86baddf2..90d3475f 100644 --- a/debian/control +++ b/debian/control @@ -4,7 +4,7 @@ Priority: required Maintainer: GNU Hurd Maintainers Standards-Version: 3.9.4 Build-Depends: mig (>= 1.3-2), gnumach-dev (>= 2:1.3.99.dfsg.cvs20070526), - libc0.3-dev (>= 2.17-93~), texinfo, libncursesw5-dev, + libc0.3-dev (>= 2.17-94~), texinfo, libncursesw5-dev, debhelper (>= 7.0.50~), gcc-4.7, dpkg (>= 1.15.4) | install-info, autoconf, dh-autoreconf, libparted-dev, libpciaccess-dev, libx11-dev, x11proto-core-dev, pkg-config, xkb-data, gawk, flex, bison, autotools-dev, libdaemon-dev, libpcap0.8-dev -- cgit v1.2.3 From c27d9c3c97b18cb34a5997beb73b3740a1c010b1 Mon Sep 17 00:00:00 2001 From: Samuel Thibault Date: Fri, 1 Nov 2013 22:47:01 +0000 Subject: refresh patches --- debian/patches/exec_filename_fs.patch | 2 +- debian/patches/rc.patch | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/debian/patches/exec_filename_fs.patch b/debian/patches/exec_filename_fs.patch index b92a13a5..51f5aaa4 100644 --- a/debian/patches/exec_filename_fs.patch +++ b/debian/patches/exec_filename_fs.patch @@ -136,8 +136,8 @@ Index: hurd-debian/exec/hashexec.c + + mach_port_deallocate (mach_task_self (), interp_file); + munmap (new_argv, new_argvlen); - if (! e->error) Index: hurd-debian/hurd/fs.defs =================================================================== --- hurd-debian.orig/hurd/fs.defs 2013-06-19 23:32:37.000000000 +0000 diff --git a/debian/patches/rc.patch b/debian/patches/rc.patch index fffbb467..a4be4aa5 100644 --- a/debian/patches/rc.patch +++ b/debian/patches/rc.patch @@ -19,11 +19,11 @@ More debianish rc scripts + fsysopts / --update --writable ;; # Filesystem modified (but ok now) - 1 | 2) + 1) + fsysopts / --update --writable ;; - # Fsck couldn't fix it. - 4 | 8) + # Filesystem modified, filesystem should be restarted + # Ideally we would only restart the filesystem @@ -85,12 +88,25 @@ if test -d /tmp; then fi -- cgit v1.2.3