Commit Graph

307 Commits

Author SHA1 Message Date
Gary Lowell
e5a02c33e2 Merge branch 'next' 2013-12-10 21:00:14 +00:00
Gary Lowell
d8ad51ee8a v0.73 2013-12-10 04:55:36 +00:00
Noah Watkins
539fe26109 wbthrottle: use feature check for fdatasync
Checking for fdatasync uses the same approach as the qemu configure
script. The relevant commit is d1722a27f552a22561104210e0afad4577878e53.
Here is a copy of the commit message which explains the check:

Under Darwin, a symbol exists for the fdatasync() function, so that our
link test succeeds. However _POSIX_SYNCHRONIZED_IO is set to '-1'.

According to POSIX:2008, a value of -1 means the feature is not
supported.
A value of 0 means supported at compilation time, and a value greater 0
means supported at both compilation and run time.

Enable fdatasync() only if _POSIX_SYNCHRONIZED_IO is '>0'.

Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2013-12-07 10:37:00 -08:00
Sage Weil
51cd75080d Merge pull request #838 from xinglin/boost-program-option-check
autoconf: add check for the boost_program_options library

Reviewed-by: Noah Watkins <noah.watkins@inktank.com>
2013-11-29 22:25:28 -08:00
Sage Weil
444ddaef7b Merge pull request #829 from ceph/port/detect-clang
conf: use better clang detection
2013-11-29 22:24:34 -08:00
Josh Durgin
29ef3d4607 Merge branch 'wip-zero-copy-bufferlist-last'
Reviewed-by: Samuel Just <sam.just@inktank.com>
2013-11-25 17:12:03 -08:00
Josh Durgin
be29b3471c buffer: attempt to size raw_pipe buffers
Make sure the requested length is below the maximum pipe size for now,
since we're only using one pipe and splicing once into and out of
it. The default max is 1MB on recent kernels, so this isn't such a
terrible limitation.

To get around this we could use multiple pipes, or keep both source and
destination fds open at the same time and call splice many times. This
is more usual usage for splice, but would require a lot more work to
restructure the filestore and messenger to handle it.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
2013-11-22 16:14:03 -08:00
Josh Durgin
30bc0e2791 safe_io: add functions for handling splice
Like the other functions, these don't handle non-blocking I/O.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
2013-11-22 16:14:03 -08:00
Xing Lin
125582e08e autoconf: add check for the boost_program_options library
check for the existence of boost_program_options library in
configure.ac since several files need that library

Signed-off-by: Xing Lin <xinglin@cs.utah.edu>
2013-11-10 17:06:55 -07:00
Sage Weil
3596b4cfdb Merge pull request #823 from ceph/port/detect-libresolv
autoconf: check for res_nquery explicitly
2013-11-09 00:36:08 -08:00
Sage Weil
3c70da20e3 Merge pull request #834 from ceph/port/stat
client: use platform-specific stat time members

Reviewed-by: Sage Weil <sage@inktank.com>
2013-11-08 00:26:17 -08:00
Gary Lowell
aef3378bd7 Merge branch 'next' 2013-11-08 05:19:11 +00:00
Noah Watkins
01f7b463d1 client: use platform-specific stat time members
Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2013-11-07 15:48:05 -08:00
Gary Lowell
5832e2603c v0.72 2013-11-07 20:27:35 +00:00
Noah Watkins
afb3566b18 conf: use better clang detection
Handle case where compiler isn't called 'clang'. This is slightly
modified from the version here:
http://src.chromium.org/svn/branches/1312/src/third_party/mesa/MesaLib/configure.ac

Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2013-11-06 14:33:52 -08:00
Noah Watkins
ac044812d0 assert: choose function-var name on non-gnu
Selects __PRETTY_FUNCTION__ or __func__. Linux assumes GNU, and chooses
__PRETTY_FUNCTION__ if gcc/g++ versions are favorable.

This also includes a fix in ax_c_var_func.m4:

AC_TRY_COMPILE will wrap the test in main{}, and then GCC will complain
about nested functions. Just use the original main{} body.

diff --git a/m4/ax_c_var_func.m4 b/m4/ax_c_var_func.m4
index 0ad7d2b..8b57563 100644
--- a/m4/ax_c_var_func.m4
+++ b/m4/ax_c_var_func.m4
@@ -57,9 +57,9 @@ AC_DEFUN([AX_C_VAR_FUNC],
 [AC_REQUIRE([AC_PROG_CC])
 AC_CACHE_CHECK(whether $CC recognizes __func__, ac_cv_c_var_func,
 AC_TRY_COMPILE(,
-[int main() {
+[
 char *s = __func__;
-}],
+],
 AC_DEFINE(HAVE_FUNC,,
 [Define if the C complier supports __func__]) ac_cv_c_var_func=yes,
 ac_cv_c_var_func=no) )

Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2013-11-06 14:16:28 -08:00
Noah Watkins
81a3ea1bc0 rgw: add compat file for name service macros
Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2013-11-05 13:38:48 -08:00
Noah Watkins
1cc8558b60 autoconf: check for res_nquery explicitly
Creates a test that checks explicitly for res_nquery, which can be a
macro in resolv.h. Defines RESOLV_LIBS that contains any libraries that
need to be linked against.

Notes from later fix:

Based on the 2013-09-30 version of wip-port.  On FreeBSD, one must
include netinet/in.h to get the definitions for stuff in resolv.h.
Also, resolv.h's functions are part of libc instead of libresolv.

Signed-off-by: Alan Somers <asomers@gmail.com>
Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2013-11-05 08:24:11 -08:00
Sage Weil
74873fd110 Merge pull request #816 from ceph/wip-fadvise
wbthrottle: use posix_fadvise if available

Reviewed-by: Sage Weil <sage@inktank.com>
2013-11-05 05:31:57 -08:00
Noah Watkins
6821a6e83a assert: use feature test for static_cast
Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2013-11-04 13:14:11 -08:00
Noah Watkins
330a6a769b wbthrottle: use posix_fadvise if available
Only adding information about data usage. This won't effect correctness.

Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2013-11-04 13:01:33 -08:00
Noah Watkins
59a55fdaaf pipe: use pipe2 feature test; check fcntl retval
Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2013-11-01 16:21:14 -07:00
Gary Lowell
e11c9756af v0.72-rc1 2013-10-30 00:45:10 +00:00
Gary Lowell
e509cb1e69 v0.71 2013-10-17 09:19:36 +00:00
Gary Lowell
7efbebe20f Merge branch 'next' 2013-10-05 02:11:36 +00:00
Gary Lowell
e3bb0656d9 v0.70 2013-10-04 20:12:24 +00:00
Sage Weil
b683005c21 Merge pull request #607 from ceph/prctl-getname-test
code_env: use feature test for PR_GET_NAME support

Reviewed-by: Sage Weil <sage@inktank.com>
2013-09-23 10:14:07 -07:00
Noah Watkins
f3718c29bb code_env: use feature test for PR_GET_NAME support
Function `get_process_name` has platform specific dependencies. Check
for Linux prctl function and correct command flag.

Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2013-09-19 15:00:31 -07:00
Gary Lowell
5216ed134b Merge pull request #604 from ceph/wip-buck-centos-core
Wip buck centos core
Reviewed-by: Gary Lowell <gary.lowell@inktank.com>
2013-09-19 13:01:00 -07:00
Gary Lowell
33671f3554 Merge branch 'next' 2013-09-18 09:11:02 +00:00
Gary Lowell
6ca6f2f9f7 v0.69 2013-09-18 01:40:51 +00:00
Joe Buck
971bf60b39 Remove unneeded junit4 check
We refactored the java tests to not use
the ExternalResource class, so this test
is no longer necessary.

Signed-off-by: Joe Buck <jbbuck@gmail.com>
2013-09-16 22:07:02 -07:00
Joe Buck
cd6f4bcdae Use a loop for testing jdk paths
Loop through a list of sensible default
locations for a JDK, stopping if a
workable JDK is found.
Also, add support for CentOS' default
java location.

Signed-off-by: Joe Buck <jbbuck@gmail.com>
2013-09-16 22:02:59 -07:00
Noah Watkins
b86c068669 hadoop: remove hadoop shim
The in-tree Hadoop shim was a combination of libcephfs wrapper, and the
bits to support Hadoop. This has been replaced by src/java that
implements generic libcephfs wrappers, and externally, the hadoop shim
(see docs).

Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2013-09-13 13:39:48 -07:00
Roald J. van Loon
7845115f8b automake cleanup: adding vta support to configure
Signed-off-by: Roald J. van Loon <roaldvanloon@gmail.com>
2013-09-07 22:41:09 +02:00
Sage Weil
cfb07f1451 arch: add NEON cpu feature detection
Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Dan Mick <dan.mick@inktank.com>
2013-09-04 16:05:00 -07:00
Gary Lowell
d9187a73c3 Merge branch 'next' 2013-09-04 01:37:41 -07:00
Gary Lowell
b4cf0f2574 v0.68 2013-09-03 16:10:31 -07:00
Sage Weil
14a483745f Merge pull request #514 from kri5/wip-clang-compilation
Do not use some compilation flag invalid for clang

Reviewed-by: Loic Dachary <loic@dachary.org>
Reviewed-by: Sage Weil <sage@inktank.com>
2013-08-23 21:21:57 -07:00
Sage Weil
e55809acd2 crc32c: add intel optimized crc32c implementation
This is from Intel's ISA-L library and licensed under BSD 3-clause.

It needs to build with yasm, which means we go through all sorts of pain
to make this work with libtool:

 - strip out args it doesn't understand with yasm-wrapper
 - detect whether it is recent enough during configure

The code is conditional on:

 - build-time support (yasm)
 - run-time support (sse4.2)

Signed-off-by: Sage Weil <sage@inktank.com>
2013-08-22 09:15:05 -07:00
Christophe Courtaut
8e53301840 Do not use some compilation flag invalid for clang
-Wstrict-null-sentinel and -rdynamic are invalid flags
for clang compiler.

Signed-off-by: Christophe Courtaut <christophe.courtaut@gmail.com>
2013-08-20 11:42:19 +02:00
Yan, Zheng
5a15369865 store: Add (experimental) ZFS parallel journal support
This patch adds ZFS parallel journal support. It uses libzfs provided by
zfsonlinux to access ZFS' functionalities. To enable ZFS parallel journal
support, compile ceph by:

  ./configure --with-libzfs LIBZFS_CFLAGS="-I<libzfs header> -I<libspl header>"
  make

Add following line to osd section of ceph.conf

  filestore zfs_snap = 1

Note: ZFS (no mater parallel journal is enabled or not) does not support
direct IO. To use it as backend FS for OSD, you need to add following line
to osd section of ceph.conf

  journal aio = 0
  journal dio = 0

Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
2013-08-15 09:48:22 -07:00
Sage Weil
ddaf6d5a93 Merge remote-tracking branch 'gh/next'
Conflicts:
	configure.ac
	src/ceph.in
	src/pybind/ceph_argparse.py
2013-07-25 10:48:57 -07:00
Gary Lowell
1cdb3ecffc configure.ac: Remove -rc suffix from the configure version number.
Remove the rc suffix since RPM complains about.  For rc release
builds the "rc" in the git describe string is suffcient for
everyhting but RPM.  For rc release builds (i.e. not gitbuilder)
add a flag to the spec file.

Signed-off-by: Gary Lowell  <gary.lowell@inktank.com>
2013-07-23 22:43:59 -07:00
Gary Lowell
b7c40ec4c3 configure.ac: Set version number to match git describe.
Workaround for issue with rc1 suffix for rpms.

Signed-off-by: Gary Lowell  <gary.lowell@inktank.com>
2013-07-23 21:42:03 -07:00
Gary Lowell
fc6cb81eba Merge branch 'next' 2013-07-22 23:19:47 -07:00
Gary Lowell
835dd97301 v0.67-rc1 2013-07-22 11:57:27 -07:00
Noah Watkins
3846bf2f1a fuse: fix fuse_getgroups detection
The ac_check_func fails because -lfuse is not in LIBS. This also enables
code that wasn't being compiled, and fixes compiler errors that
resulted.

Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
Reviewed-by: Sage Weil <sage@inktank.com>
2013-07-21 20:00:28 -07:00
Sage Weil
aa7448cd17 Merge pull request #415 from ceph/rgw-next 2013-07-09 15:34:05 -07:00
Yehuda Sadeh
73c2a3dcd3 configure.ac: detect whether libcurl supports curl_multi_wait()
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-07-08 23:43:00 -07:00