head	1.2;
access;
symbols
	pkgsrc-2015Q1:1.1.0.4
	pkgsrc-2015Q1-base:1.1
	pkgsrc-2014Q4:1.1.0.2
	pkgsrc-2014Q4-base:1.1;
locks; strict;
comment	@# @;


1.2
date	2015.04.09.15.20.48;	author manu;	state dead;
branches;
next	1.1;
commitid	bIZy9bBKVmdqCVgy;

1.1
date	2014.11.18.14.38.15;	author manu;	state Exp;
branches;
next	;
commitid	VkcJZ5LKkZuDXFYx;


desc
@@


1.2
log
@Update glusterfs to 3.6.2

This is a maintenance release, complete Changelog can be found here:
http://blog.gluster.org/2015/01/glusterfs-3-6-2-ga-released/
@
text
@$NetBSD: patch-9010,v 1.1 2014/11/18 14:38:15 manu Exp $
From 70e4f2935ac858f2e83d0c3887b584af8fa0bd5b Mon Sep 17 00:00:00 2001
From: Emmanuel Dreyfus <manu@@netbsd.org>
Date: Thu, 30 Oct 2014 10:54:24 +0100
Subject: [PATCH] Use F_CLOSEM if available

Use F_CLOSEM to close all file descriptors if available.

Backport of Ib3c682825b89c163ebb152848f2533b3cb62cdce

BUG: 1138897
Change-Id: Ie44c8e07c77ca5509766e0addbb17c1979df68e7
Signed-off-by: Emmanuel Dreyfus <manu@@netbsd.org>
---
 contrib/uuid/gen_uuid.c | 7 +++++++
 libglusterfs/src/run.c  | 8 ++++++--
 2 files changed, 13 insertions(+), 2 deletions(-)

diff --git contrib/uuid/gen_uuid.c contrib/uuid/gen_uuid.c
index 79923cd..e69995a 100644
--- contrib/uuid/gen_uuid.c
+++ contrib/uuid/gen_uuid.c
@@@@ -465,6 +465,12 @@@@ static ssize_t read_all(int fd, char *buf, size_t count)
 #if defined(USE_UUIDD) && defined(HAVE_SYS_UN_H)
 static void close_all_fds(void)
 {
+#ifdef F_CLOSEM
+	(void)fcntl(0, F_CLOSEM);
+	(void)open("/dev/null", O_RDWR); /* stdin */
+	(void)open("/dev/null", O_RDWR); /* stdout */
+	(void)open("/dev/null", O_RDWR); /* stderr */
+#else /* F_CLOSEM */
 	int i, max;
 
 #if defined(HAVE_SYSCONF) && defined(_SC_OPEN_MAX)
@@@@ -485,6 +491,7 @@@@ static void close_all_fds(void)
 		if (i <= 2)
 			open("/dev/null", O_RDWR);
 	}
+#endif /* F_CLOSEM */
 }
 #endif
 
diff --git libglusterfs/src/run.c libglusterfs/src/run.c
index 4fd2a3a..93fe12a 100644
--- libglusterfs/src/run.c
+++ libglusterfs/src/run.c
@@@@ -289,7 +289,10 @@@@ runner_start (runner_t *runner)
                                 closedir (d);
                         } else
                                 ret = -1;
-#else
+#else /* !GF_LINUX_HOST_OS */
+#ifdef F_CLOSEM /* NetBSD */
+			(void)fcntl(3, F_CLOSEM);
+#else /* !F_CLOSEM */
                         struct rlimit rl;
                         ret = getrlimit (RLIMIT_NOFILE, &rl);
                         GF_ASSERT (ret == 0);
@@@@ -298,7 +301,8 @@@@ runner_start (runner_t *runner)
                                 if (i != xpi[1])
                                         close (i);
                         }
-#endif
+#endif /* !F_CLOSEM */
+#endif /* !GF_LINUX_HOST_OS */
                 }
 
                 if (ret != -1) {
-- 
1.8.2.3

@


1.1
log
@Upgrate to glusterfs 3.6.0

New features:

- Volume Snapshots
Distributed lvm thin-pool based snapshots for backing up volumes
in a Gluster Trusted Storage Pool.  Apart from providing cluster
wide co-ordination to trigger a consistent snapshot, several
improvements have been  performed through the GlusterFS stack to
make translators more crash consistent. Snapshotting of volumes is
tightly coupled with lvm today but one could also enhance the same
framework to integrate with a backend storage technology like btrfs
that can perform snapshots.

- Erasure Coding
Xavier Hernandez from Datalab added support to perform erasure
coding of data in a GlusterFS volume across nodes in a Trusted
Storage Pool. Erasure Coding requires fewer nodes to provide better
redundancy than a n-way replicated volume and can help in reducing
the overall deployment cost. We look forward to build on this
foundation and deliver more enhancememnts in upcoming releases.

- Better SSL support
Multiple improvements to SSL support in GlusterFS. The GlusterFS
driver in OpenStack Manila that provides certificate based access
to tenants relies on these improvements.

- Meta translator
This translator provides a /proc like view for examining internal
state of translators on the client stack of a GlusterFS volume and
certainly looks like an interface that I would be heavily consuming
for introspection of  GlusterFS.

- Automatic File Replication (AFR) v2
A significant re-factor of the synchronous replication translator,
provides granular entry self-healing and reduced resource consumption
with entry self-heals.

- NetBSD, OSX and FreeBSD ports
Lot of fixes on the portability front. The NetBSD port passes most
regression tests as of 3.6.0. At this point, none of these ports
are ready to be deployed in production. However, with dedicated
maintainers for each of these ports, we expect to reach production
readiness on these platforms in a future release.

Complete releases notes are available at
https://github.com/gluster/glusterfs/blob/release-3.6/doc/release-notes/3.6.0.md
@
text
@d1 1
a1 1
$NetBSD$
@

