summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSage Weil <sage@inktank.com>2013-02-24 13:22:47 -0800
committerSage Weil <sage@inktank.com>2013-02-24 13:22:47 -0800
commit0be28af0bb129aad915895744bc091f21336642e (patch)
treececd5a42e42cb5a00618b4ebb1a5d0d9fecba917
parent35c951f36275cfd756e2391f4fb8cf267db754ed (diff)
parent0cd215ee5b4768012041006377e10eeff53de7b0 (diff)
downloadceph-0be28af0bb129aad915895744bc091f21336642e.tar.gz
Merge remote-tracking branch 'gh/next'
-rw-r--r--qa/run_xfstests.sh23
-rw-r--r--src/common/ConfUtils.cc9
-rw-r--r--src/messages/MMDSMap.h3
3 files changed, 21 insertions, 14 deletions
diff --git a/qa/run_xfstests.sh b/qa/run_xfstests.sh
index 2f350d512a1..f3dffca293f 100644
--- a/qa/run_xfstests.sh
+++ b/qa/run_xfstests.sh
@@ -242,15 +242,17 @@ function parseargs() {
################################################################
+[ -z "$TESTDIR" ] && export TESTDIR="/tmp/cephtest"
+
# Set up some environment for normal teuthology test setup.
# This really should not be necessary but I found it was.
-export CEPH_ARGS="--conf /tmp/cephtest/ceph.conf"
-export CEPH_ARGS="${CEPH_ARGS} --keyring /tmp/cephtest/data/client.0.keyring"
+export CEPH_ARGS="--conf ${TESTDIR}/ceph.conf"
+export CEPH_ARGS="${CEPH_ARGS} --keyring ${TESTDIR}/data/client.0.keyring"
export CEPH_ARGS="${CEPH_ARGS} --name client.0"
-export LD_LIBRARY_PATH="/tmp/cephtest/binary/usr/local/lib:${LD_LIBRARY_PATH}"
-export PATH="/tmp/cephtest/binary/usr/local/bin:${PATH}"
-export PATH="/tmp/cephtest/binary/usr/local/sbin:${PATH}"
+export LD_LIBRARY_PATH="${TESTDIR}/binary/usr/local/lib:${LD_LIBRARY_PATH}"
+export PATH="${TESTDIR}/binary/usr/local/bin:${PATH}"
+export PATH="${TESTDIR}/binary/usr/local/sbin:${PATH}"
################################################################
@@ -260,7 +262,6 @@ export EXT4_MKFS_OPTIONS="${EXT4_MKFS_OPTIONS:--F}"
export BTRFS_MKFS_OPTION # No defaults
XFSTESTS_DIR="/var/lib/xfstests" # Where the tests live
-TEST_ROOT="/tmp/cephtest" # Files, etc. will be created here
# download, build, and install xfstests
function install_xfstests() {
@@ -269,7 +270,7 @@ function install_xfstests() {
local multiple=""
local ncpu
- pushd "${TEST_ROOT}"
+ pushd "${TESTDIR}"
git clone "${XFSTESTS_REPO}"
@@ -289,7 +290,7 @@ function install_xfstests() {
function remove_xfstests() {
arg_count 0 $#
- rm -rf "${TEST_ROOT}/xfstests"
+ rm -rf "${TESTDIR}/xfstests"
rm -rf "${XFSTESTS_DIR}"
}
@@ -298,14 +299,14 @@ function setup_host_options() {
arg_count 0 $#
# Create mount points for the test and scratch filesystems
- local test_dir="$(mktemp -d ${TEST_ROOT}/test_dir.XXXXXXXXXX)"
- local scratch_dir="$(mktemp -d ${TEST_ROOT}/scratch_mnt.XXXXXXXXXX)"
+ local test_dir="$(mktemp -d ${TESTDIR}/test_dir.XXXXXXXXXX)"
+ local scratch_dir="$(mktemp -d ${TESTDIR}/scratch_mnt.XXXXXXXXXX)"
# Write a host options file that uses these devices.
# xfstests uses the file defined by HOST_OPTIONS as the
# place to get configuration variables for its run, and
# all (or most) of the variables set here are required.
- export HOST_OPTIONS="$(mktemp ${TEST_ROOT}/host_options.XXXXXXXXXX)"
+ export HOST_OPTIONS="$(mktemp ${TESTDIR}/host_options.XXXXXXXXXX)"
cat > "${HOST_OPTIONS}" <<-!
# Created by ${PROGNAME} on $(date)
# HOST_OPTIONS="${HOST_OPTIONS}"
diff --git a/src/common/ConfUtils.cc b/src/common/ConfUtils.cc
index 147cdc2fb60..5efde8d4ae0 100644
--- a/src/common/ConfUtils.cc
+++ b/src/common/ConfUtils.cc
@@ -471,8 +471,13 @@ process_line(int line_no, const char *line, std::deque<std::string> *errors)
case ACCEPT_KEY:
if ((((c == '#') || (c == ';')) && (!escaping)) || (c == '\0')) {
ostringstream oss;
- oss << "unexpected character while parsing putative key value, "
- << "at char " << (l - line) << ", line " << line_no;
+ if (c == '\0') {
+ oss << "end of key=val line " << line_no
+ << " reached, no \"=val\" found...missing =?";
+ } else {
+ oss << "unexpected character while parsing putative key value, "
+ << "at char " << (l - line) << ", line " << line_no;
+ }
errors->push_back(oss.str());
return NULL;
}
diff --git a/src/messages/MMDSMap.h b/src/messages/MMDSMap.h
index 42bb98f54e1..66566d01d31 100644
--- a/src/messages/MMDSMap.h
+++ b/src/messages/MMDSMap.h
@@ -82,7 +82,8 @@ public:
void encode_payload(uint64_t features) {
::encode(fsid, payload);
::encode(epoch, payload);
- if ((features & CEPH_FEATURE_PGID64) == 0) {
+ if ((features & CEPH_FEATURE_PGID64) == 0 ||
+ (features & CEPH_FEATURE_MDSENC) == 0) {
// reencode for old clients.
MDSMap m;
m.decode(encoded);