summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2015-08-08 13:49:04 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2015-08-08 17:38:18 -0700
commit56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch)
tree3f91093cdb475e565ae857f1c5a7fd339e2d781e /sys-fs/ocfs2-tools/files
downloadgentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip
proj/gentoo: Initial commit
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'sys-fs/ocfs2-tools/files')
-rw-r--r--sys-fs/ocfs2-tools/files/ocfs2-tools-1.6.4-asneeded.patch78
-rw-r--r--sys-fs/ocfs2-tools/files/ocfs2-tools-recent-kernels.patch19
-rw-r--r--sys-fs/ocfs2-tools/files/ocfs2.confd38
-rw-r--r--sys-fs/ocfs2-tools/files/ocfs2.initd125
4 files changed, 260 insertions, 0 deletions
diff --git a/sys-fs/ocfs2-tools/files/ocfs2-tools-1.6.4-asneeded.patch b/sys-fs/ocfs2-tools/files/ocfs2-tools-1.6.4-asneeded.patch
new file mode 100644
index 000000000000..c382522f14ed
--- /dev/null
+++ b/sys-fs/ocfs2-tools/files/ocfs2-tools-1.6.4-asneeded.patch
@@ -0,0 +1,78 @@
+--- configure.in.orig 2011-01-19 20:43:35.000000000 +0100
++++ configure.in 2012-02-21 11:14:51.047974999 +0100
+@@ -265,7 +265,6 @@
+ cpg_package=openais
+ fi
+ TRY_PATH="$AIS_TRY_PATH"
+- AC_MSG_CHECKING([for cpg_initialize in -lcpg])
+ while test "x$TRY_PATH" != "x"; do
+ TRY="`echo $TRY_PATH | cut -f1 -d:`"
+ NEW_TRY_PATH="`echo $TRY_PATH | cut -f2- -d:`"
+@@ -281,9 +280,8 @@
+ # TRY="$TRY"
+
+ saved_LDFLAGS="$LDFLAGS"
+- LDFLAGS="$LDFLAGS $TRY -lcpg"
+- AC_LINK_IFELSE([AC_LANG_CALL([], [cpg_initialize])],
+- cpg_found=yes)
++ LDFLAGS="$LDFLAGS $TRY"
++ AC_SEARCH_LIBS([cpg_initialize], [cpg], [cpg_found=yes], [], [])
+ LDFLAGS="$saved_LDFLAGS"
+
+ if test "x$cpg_found" = "xyes"; then
+@@ -292,10 +290,7 @@
+ fi
+ done
+ fi
+-if test "x$cpg_found" = "xyes"; then
+- AC_MSG_RESULT(yes)
+-else
+- AC_MSG_RESULT(no)
++if test "x$cpg_found" = "xno"; then
+ AC_MSG_WARN([libcpg not found, ocfs2_controld will not be built])
+ fi
+ AC_SUBST(CPG_LDFLAGS)
+@@ -309,7 +304,6 @@
+ if test "x$ckpt_found" = "xyes"; then
+ ckpt_found=
+ TRY_PATH="$AIS_TRY_PATH"
+- AC_MSG_CHECKING([for saCkptInitialize in -lSaCkpt])
+ while test "x$TRY_PATH" != "x"; do
+ TRY="`echo $TRY_PATH | cut -f1 -d:`"
+ NEW_TRY_PATH="`echo $TRY_PATH | cut -f2- -d:`"
+@@ -325,9 +319,8 @@
+ # TRY="$TRY"
+
+ saved_LDFLAGS="$LDFLAGS"
+- LDFLAGS="$LDFLAGS $TRY -lSaCkpt"
+- AC_LINK_IFELSE([AC_LANG_CALL([], [saCkptInitialize])],
+- ckpt_found=yes)
++ LDFLAGS="$LDFLAGS $TRY"
++ AC_SEARCH_LIBS([saCkptInitialize], [SaCkpt], [ckpt_found=yes], [], [])
+ LDFLAGS="$saved_LDFLAGS"
+
+ if test "x$ckpt_found" = "xyes"; then
+@@ -336,10 +329,7 @@
+ fi
+ done
+ fi
+-if test "x$ckpt_found" = "xyes"; then
+- AC_MSG_RESULT(yes)
+-else
+- AC_MSG_RESULT(no)
++if test "x$ckpt_found" = "xno"; then
+ AC_MSG_WARN([libSaCkpt not found, ocfs2_controld will not be built])
+ fi
+ AC_SUBST(AIS_LDFLAGS)
+
+--- ocfs2_controld/Makefile.orig 2012-02-21 11:49:36.248974932 +0100
++++ ocfs2_controld/Makefile 2012-02-21 11:49:47.943974980 +0100
+@@ -14,7 +14,7 @@
+ ifneq ($(BUILD_PCMK_SUPPORT),)
+ SBIN_PROGRAMS += ocfs2_controld.pcmk
+ # Some pacemaker headers which pacemaker.c includes want this.
+-PCMK_INCLUDES = -I/usr/include/pacemaker -I/usr/include/heartbeat/ $(GLIB_CFLAGS)
++PCMK_INCLUDES = -I/usr/include/pacemaker -I/usr/include/heartbeat/ `pkg-config --cflags libxml-2.0` $(GLIB_CFLAGS)
+ endif
+
+ INCLUDES = -I$(TOPDIR)/include -I. $(PCMK_INCLUDES)
diff --git a/sys-fs/ocfs2-tools/files/ocfs2-tools-recent-kernels.patch b/sys-fs/ocfs2-tools/files/ocfs2-tools-recent-kernels.patch
new file mode 100644
index 000000000000..24bc40dcd09f
--- /dev/null
+++ b/sys-fs/ocfs2-tools/files/ocfs2-tools-recent-kernels.patch
@@ -0,0 +1,19 @@
+# git diff include/ocfs2-kernel/ocfs2_fs.h
+diff --git a/include/ocfs2-kernel/ocfs2_fs.h b/include/ocfs2-kernel/ocfs2_fs.h
+index 3eafb07..7bb954a 100644
+--- a/include/ocfs2-kernel/ocfs2_fs.h
++++ b/include/ocfs2-kernel/ocfs2_fs.h
+@@ -1681,11 +1681,11 @@ static inline int ocfs2_sprintf_system_inode_name(char *buf, int len,
+ return chars;
+ }
+
+-static inline void ocfs2_set_de_type(struct ocfs2_dir_entry *de,
++/*static inline void ocfs2_set_de_type(struct ocfs2_dir_entry *de,
+ umode_t mode)
+ {
+ de->file_type = ocfs2_type_by_mode[(mode & S_IFMT)>>S_SHIFT];
+-}
++}*/
+
+ static inline int ocfs2_gd_is_discontig(struct ocfs2_group_desc *gd)
+ { \ No newline at end of file
diff --git a/sys-fs/ocfs2-tools/files/ocfs2.confd b/sys-fs/ocfs2-tools/files/ocfs2.confd
new file mode 100644
index 000000000000..b9538cbea33e
--- /dev/null
+++ b/sys-fs/ocfs2-tools/files/ocfs2.confd
@@ -0,0 +1,38 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+# Put your cluster names here, separated by space, ie.
+# OCFS2_CLUSTER="cluster1 admincluster cluster2"
+OCFS2_CLUSTER="home"
+
+# Some heartbeat tweaks to prevent self-fencing quite so much during heavy load.
+# http://oss.oracle.com/projects/ocfs2/dist/documentation/ocfs2_faq.html
+
+# How long to wait before a node is considered dead from lack of network activity.
+OCFS2_IDLE_TIMEOUT_MS="30000"
+# How often we should attempt to send heartbeats.
+OCFS2_KEEPALIVE_DELAY_MS="2000"
+OCFS2_RECONNECT_DELAY_MS="2000"
+# How often we should attempt to send heartbeats.
+# How many interations before a node is considered dead from lack of IO activity.
+# (dead_threshold - 1) * 2s
+OCFS2_DEAD_THRESHOLD="61"
+
+# Default: "-fy" (force check on double-unmounted boot). I beleave this is best.
+# Native way is "-y", but once I have twice reboot/powerOFF with bad result...
+# Affected only fstab.
+OCFS2_FSCK="-fy"
+
+# http://oss.oracle.com/projects/ocfs2-tools/news/article_8.html
+# starting from 1.4.3, fsck.ocfs2 "aggressively cache the metadata blocks"
+# this is useful on lots of free memory, but I have heavy slowdown on x86_64
+# with 1G of RAM.
+# "yes" will "swapoff -a" & "swapon -a" around fsck to avoid caching over swap
+OCFS2_FSCK_SWAPOFF="yes"
+
+# Signal to kill processes on stop/umount on busy device (empty to not kill)
+#OCFS2_UMOUNT_KILL="KILL"
+
+# "yes" to force stop
+#OCFS2_FORCE_STOP="no"
diff --git a/sys-fs/ocfs2-tools/files/ocfs2.initd b/sys-fs/ocfs2-tools/files/ocfs2.initd
new file mode 100644
index 000000000000..e5c091ee04c7
--- /dev/null
+++ b/sys-fs/ocfs2-tools/files/ocfs2.initd
@@ -0,0 +1,125 @@
+#!/sbin/runscript
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+depend() {
+ need net localmount
+ before netmount
+}
+
+check_modules_config() {
+ local MODULES=$1
+ local CONFIGS=$2
+ local MODULE
+ local retval=0
+
+ for MODULE in ${MODULES}; do
+ if ! ls -1 /sys/module | egrep -q "^${MODULE}$"; then
+ retval=1
+ fi
+ done
+ if [ ${retval} -eq 1 ] && [ -e /proc/config.gz ]; then
+ retval=0
+ for MODULE in ${CONFIGS}; do
+ if ! gzip -dc /proc/config.gz | egrep -q "^CONFIG_${MODULE}=y$"; then
+ retval=1
+ fi
+ done
+ fi
+ return ${retval}
+}
+
+check_modules() {
+ check_modules_config "ocfs2_dlmfs ocfs2 ocfs2_dlm ocfs2_nodemanager" "OCFS2_FS OCFS2_FS_O2CB" && check_modules_config configfs CONFIGFS_FS && return 0
+ if ! egrep -q '\s*ocfs2\s*$' /proc/filesystems || ! egrep -q '\s*ocfs2_dlmfs\s*$' /proc/filesystems; then
+ ewarn "One or more required modules are not loaded."
+ ewarn "Make sure you have "
+ ewarn " - placed ocfs, dlmfs and configfs into /etc/modules.autoload.d/kernel-2.6 or built directly into the kernel."
+ ewarn "For a (in)complete documentation, read /usr/share/doc/ocfs-<version>/INSTALL.GENTOO.bz2"
+ fi
+ return 1
+}
+
+check_pseudofs() {
+ local retval=0
+ local HASMOUNT="mount -l -t"
+ if [ -z "`${HASMOUNT} configfs`" ] ; then
+ retval=1
+ fi
+ if [ -z "`${HASMOUNT} ocfs2_dlmfs`" ] ; then
+ retval=1
+ fi
+
+ if [ ${retval} -eq 1 ]; then
+ ewarn "One or more pseudo-filesystes are not mounted."
+ ewarn "Make sure you have following lines in your /etc/fstab:"
+ ewarn "none /sys/kernel/config configfs defaults 0 0"
+ ewarn "none /sys/kernel/dlm ocfs2_dlmfs defaults 0 0"
+ fi
+ return ${retval}
+}
+
+
+
+start() {
+ check_modules || return $?
+ check_pseudofs || return $?
+
+ einfo "Starting OCFS2 cluster"
+ for cluster in ${OCFS2_CLUSTER}; do
+ ebegin " - ${cluster}"
+ /sbin/o2cb_ctl -H -n ${cluster} -t cluster -a online=yes >/dev/null 2>&1
+ eend $?
+
+ # Some heartbeat tweaks to prevent self-fencing quite so much during heavy load.
+ # http://oss.oracle.com/projects/ocfs2/dist/documentation/ocfs2_faq.html
+
+ # How long to wait before a node is considered dead from lack of network activity.
+ echo $OCFS2_IDLE_TIMEOUT_MS > /sys/kernel/config/cluster/${cluster}/idle_timeout_ms
+ # How often we should attempt to send heartbeats.
+ echo $OCFS2_KEEPALIVE_DELAY_MS > /sys/kernel/config/cluster/${cluster}/keepalive_delay_ms
+ echo $OCFS2_RECONNECT_DELAY_MS > /sys/kernel/config/cluster/${cluster}/reconnect_delay_ms
+ # How many interations before a node is considered dead from lack of IO activity.
+ # (dead_threshold - 1) * 2s
+ echo $OCFS2_DEAD_THRESHOLD > /sys/kernel/config/cluster/${cluster}/heartbeat/dead_threshold
+ done
+ sleep 2
+}
+
+stop() {
+ # Shamelesly stolen from netmount
+ local ret
+ ebegin "Unmounting OCFS2 filesystems"
+ [ -z "$(umount -art ocfs2 2>&1)" ]
+ ret=$?
+ eend ${ret} "Failed to simply unmount filesystems"
+ [ ${ret} -eq 0 ] && return 0
+
+ declare -a siglist=( "TERM" "KILL" "KILL" )
+ local retry=0
+ local remaining="go"
+
+ while [ -n "${remaining}" -a ${retry} -lt 3 ]
+ do
+ remaining="$(awk '$3 ~ /'ocfs2'/ { if ($2 != "/") print $2 }' /proc/mounts | sort -r)"
+ IFS=$'\n'
+ set -- ${remaining//\\040/ }
+ unset IFS
+ [ -z "${remaining}" ] && break
+
+ ebegin $'\t'"Unmounting ocfs2 filesystems (retry #$((retry+1)))"
+ /bin/fuser -k -${siglist[$((retry++))]} -m "$@" &>/dev/null
+ sleep 5
+ umount "$@" &>/dev/null
+ eend $? $'\t'"Failed to unmount filesystems"
+ done
+
+
+ einfo "Stopping OCFS2 cluster"
+ for cluster in ${OCFS_CLUSTERS}; do
+ ebegin " - ${cluster}"
+ /sbin/o2cb_ctl -H -n ${cluster} -t cluster -a online=no >/dev/null 2>&1
+ eend $?
+ done
+}