Commit Graph

496 Commits

Author SHA1 Message Date
Jenkins
b78644e7de 0.80 2014-05-06 14:03:28 +00:00
Stefan Eilemann
7539281037 Fix installation into user home directory, broken by d3f0c0b
Signed-off-by: Stefan Eilemann <Stefan.Eilemann@epfl.ch>
2014-05-05 09:54:19 +02:00
Sage Weil
915bd92f50 Merge pull request #1701 from ceph/wip-libkrbd
libkrbd convenience library

Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
2014-04-28 16:52:12 -07:00
Ilya Dryomov
2651750498 rbd: add libkrbd convenience library
Add libkrbd libtool convenience library to provide an interface for
mapping and unmapping rbd images programmatically.  This will be used
by the rbd binary itself and the librbd_fsx testing tool.

libkrbd takes care of the kernel module stuff (common/module.h) and
makes use of libudev to be able to properly wait for block device
creation and deletion and tell which block device got assigned by the
kernel to the newly created mapping.

Signed-off-by: Ilya Dryomov <ilya.dryomov@inktank.com>
2014-04-23 13:33:43 +04:00
Jenkins
6769f4dc88 0.80-rc1 2014-04-22 21:21:45 +00:00
Ilya Dryomov
070a8208af configure: check for blkid/blkid.h header
The check for the presence of blkid/blkid.h was missing.

Signed-off-by: Ilya Dryomov <ilya.dryomov@inktank.com>
2014-04-22 20:43:14 +04:00
Dan Mick
d0a7632a31 Use cpp_strerror() wherever possible, and use autoconf for portability
strerror_r is not portable; on Gnu libc it returns char * and sometimes
does not fill in the supplied buffer.  Use autoconf to test which
version this platform uses and adapt.

Clean up the random calls to strerror and strerror_r (along with all
their private little one-use buffers) and regularize the code to use
cpp_strerror almost everywhere.  Where changed, any negation of the
error code is also removed, since cpp_strerror() will do that.

Note: some tools were using their own calls to strerror/strerror_r, so
will now get a (%d) in their output that wasn't there before; hence
the change to test/cli/monmaptool/print-nonexistent.t

Fixes: #8041
Signed-off-by: Dan Mick <dan.mick@inktank.com>
2014-04-14 13:07:17 -07:00
Jenkins
4c2d73a509 0.79 2014-04-07 16:48:36 +00:00
Loic Dachary
c07aedb6db autotools: intel cpu features detection
Rename SIMD to INTEL for clarity.

Instead of agregating all flags in INTEL_FLAGS, create individual flags
for each feature (INTEL_SSE2_FLAGS etc.) for finer control in the
makefiles.

Signed-off-by: Loic Dachary <loic@dachary.org>
2014-03-27 14:27:23 +01:00
Loic Dachary
1bc680ebff erasure-code: deactivate SSE optimizations
Workaround until the bug is diagnosed and fixed

http://tracker.ceph.com/issues/7826 refs #7826

Signed-off-by: Loic Dachary <loic@dachary.org>
2014-03-24 09:14:57 +01:00
Sage Weil
361b251e15 v0.78
-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQIcBAABAgAGBQJTLLeZAAoJEH6/3V0X7TFtOTMP/Ru4Y8raF/yKFIKeqCu98l51
 CHYEQYHhLviDy6l0JJTZHVjkzYyfD1gf015ggIXGgQ45yp0dY2+Rv5kNJlRn9t+c
 HUyNO2Qaxe+9wmApkIIoNMrkmAcp2FVSNN0Vuri+LmlQkGJdRFwH1qfBnmqEMI22
 /4Zfca68LTFe2RzhE6sF1kqaHJAXx6YpApSyDJ5tzYNIk6JQ5sX4aObIBzPYYSZZ
 +VYbiQgV/UutiO0j2+V4Cg+Bm0tu0d4aoQam5rIYVDdzm17phzox4Y2r4XlTNe21
 5hz1MFGLbvi+gcwOiChQbOerGWa9MWhSstcAKuUmf8la1NHgG13rYVjbWnpiGNrH
 nOblSypZarCLkypOg8Ogv5wS8Q5d4j8MrU2lqciJTmMOVMtIonGg33qpS6WSelAa
 MetDgWqMCqnSeVj0kILE7rSRSZ0hnU4YRPu6mhHaahttdleb4jxQALT8YESp9Yep
 yH5BZHrfaUbqnSek/Pe+rNk+D4fsXMzsRI4YrqpLl/EWTmbtFWS5FXxCzfwQThA9
 SuhZtOCiKMykt/fyIkW9CxQyanGM1uZdRV5driu+2YbAtHQO7zT4sBV8RicEdX3M
 3HHDuuSWzjEN3ASkXUuJYncnXDLxYSiKvXCpTZ5+n5c/MtK7isQnmdt3PJRN5pKJ
 aQp3CL1bTrOue/yhNd/o
 =3q4f
 -----END PGP SIGNATURE-----

Merge tag 'v0.78'

v0.78
2014-03-22 10:24:25 -07:00
Jenkins
f6c746c314 0.78 2014-03-21 22:05:12 +00:00
Loic Dachary
8c7f6c11d4 autotools: AX_SSE detects the compiler SSE capabilities
For each SSE feature supported by the compiler

* add the corresponding -msse* flag
* define HAVE_SSE*

Remove AX_EXT because it decides based on the CPU capabilities of the
machine compiling the binary which may or may not be the one running
them.

Signed-off-by: Loic Dachary <loic@dachary.org>
2014-03-21 13:07:32 +01:00
Loic Dachary
543c642b1a erasure-code: disable SSE extensions
Until jerasure-2 / gf-complete is able to detect them at runtime.

http://tracker.ceph.com/issues/7757 refs #7757

Signed-off-by: Loic Dachary <loic@dachary.org>
2014-03-18 15:46:22 +01:00
Sage Weil
7bc9ade26b Merge pull request #1384 from dachary/wip-7599
upgrade jerasure to version 2

Reviewed-by: Sage Weil <sage@inktank.com>
2014-03-17 20:52:57 -07:00
Ilya Dryomov
2e342d6d2a FileStore: support compiling without libxfs
When configured with --without-libxfs, use GenericFileStoreBackend
instead of XfsFileStoreBackend for XFS.  At this point this would only
impact the allocation hint op.  The default is to compile with
--with-libxfs.  (Previously it was unconditionally enabled on linux and
disabled for non-linux arches.)

Signed-off-by: Ilya Dryomov <ilya.dryomov@inktank.com>
2014-03-10 11:44:11 +02:00
Loic Dachary
b74115a508 autotools: set SIMD_FLAGS with SSE flags
As well as compiler options.

Signed-off-by: Loic Dachary <loic@dachary.org>
2014-03-10 08:24:20 +01:00
Ilya Dryomov
1f5b796f58 FileStore: introduce XfsFileStoreBackend class
Introduce XfsFileStoreBackend class, currently the only filestore
backend implementing SETALLOCHINT op.  This commit adds a build-time
dependency on libxfs as xfs-specific ioctl (XFS_IOC_FSSETXATTR /
XFS_XFLAG_EXTSIZE) is used to implement the new set_alloc_hint()
method.

Signed-off-by: Ilya Dryomov <ilya.dryomov@inktank.com>
2014-03-03 20:33:44 +02:00
Ken Dreyer
c5c7f6c8e8 Merge branch 'next'
Conflicts:
	src/test/admin_socket.cc

Signed-off-by: Ken Dreyer <ken.dreyer@inktank.com>
2014-02-20 03:06:00 +00:00
Ken Dreyer
1bca9c5c41 v0.77 2014-02-19 22:54:44 +00:00
Ilya Dryomov
a5f479c2aa configure: fix F_SETPIPE_SZ detection
Currently CEPH_HAVE_SETPIPE_SZ is not set even if F_SETPIPE_SZ is
available, because AC_COMPILE_IFELSE test program as written always
fails to compile.  F_SETPIPE_SZ is a macro, so use AC_EGREP_CPP which
works on the preprocessor output instead of trying to compile.

Signed-off-by: Ilya Dryomov <ilya.dryomov@inktank.com>
2014-02-10 19:37:30 +02:00
Ilya Dryomov
450163ec40 configure: don't check for arpa/nameser_compat.h twice
Nuke redundant check and move the real one into the common
AC_CHECK_HEADERS stanza.

Signed-off-by: Ilya Dryomov <ilya.dryomov@inktank.com>
2014-02-10 19:37:30 +02:00
Ken Dreyer
3b990136bf v0.76 2014-02-03 18:26:25 +00:00
Ken Dreyer
03d7d97d5d Merge branch 'next' 2014-01-14 16:16:41 +00:00
Ken Dreyer
946d603695 v0.75 2014-01-13 21:07:01 +00:00
Sage Weil
5300ed9428 Merge pull request #1043 from ceph/port/misc
misc portability patches

Reviewed-by: Sage Weil <sage@inktank.com>
2014-01-06 23:00:05 -08:00
Jonathan Dieter
822ad58867 configure: support Automake 1.12
Signed-off-by: Jonathan Dieter <jdieter@lesbg.com>
Signed-off-by: Ken Dreyer <ken.dreyer@inktank.com>
2014-01-06 22:26:17 -07:00
Noah Watkins
ef6a56aa26 keyutils: handle non-linux platform
Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2014-01-04 09:18:04 -08:00
Sage Weil
1f47a5b12e Merge pull request #1035 from ceph/port/bitsandints
endianess and integer types

Reviewed-by: Sage Weil <sage@inktank.com>
2014-01-02 13:52:40 -08:00
Noah Watkins
8220549315 inttypes: detect and define missing integer types
Working around missing integer types is pretty easy. For example, the
__u32 family are Linux-specific types, and using these in Ceph
internally is fine because we can typedef them.

Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2014-01-02 11:03:48 -08:00
Gary Lowell
fe3fd5fb4a Merge branch 'next' 2014-01-01 07:53:37 +00:00
Gary Lowell
c165483bc7 v0.74 2013-12-30 21:03:17 +00:00
Noah Watkins
1fec818f7c spinlock: add generic spinlock implementation
Adds a ceph_spinlock_t implementation that will use pthread_spinlock_t
if available, and otherwise reverts to pthread_mutex_t. Note that this
spinlock is not intended to be used in process-shared memory.

Switches implementation in:

  ceph_context
  SimpleMessenger
  atomic_t

Only ceph_context initialized its spinlock with PTHREAD_PROCESS_SHARED.
However, there does not appear to be any instance in which CephContext
is allocated in shared memory, and thus can use the default private
memory space behavior.

Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2013-12-28 14:43:14 -08:00
Sage Weil
b8fb366eab Merge pull request #837 from ceph/port/fallocate
FileJournal: zero-fill in-lieu of posix_fallocate

We may want to change that to a #warning later...

Reviewed-by: Sage Weil <sage@inktank.com>
2013-12-26 21:33:39 -08:00
Sage Weil
1597d4e9f5 Merge pull request #951 from ceph/wip-linux-version
common: introduce get_linux_version()

Reviewed-by: Sage Weil <sage@inktank.com>
2013-12-16 09:27:43 -08:00
Ilya Dryomov
fcf6e9878b common: introduce get_linux_version()
get_linux_version() returns a version of the currently running kernel,
encoded as in int, and is contained in common/linux_version.[ch].

Signed-off-by: Ilya Dryomov <ilya.dryomov@inktank.com>
2013-12-16 18:57:21 +02:00
Ilya Dryomov
a2babe27e8 configure: break up AC_CHECK_HEADERS into one header-file per line
Break up AC_CHECK_HEADERS macro into one header-file per line so it's
easier to read and make changes.

Signed-off-by: Ilya Dryomov <ilya.dryomov@inktank.com>
2013-12-16 18:57:21 +02:00
Ilya Dryomov
462b3898e5 rbd: match against whole disks on unmap
Currently the way 'rbd unmap' translates a user-provided block device
into an rbd id is it matches the major number of the specified device
against /sys/bus/rbd/devices/<id>/major for each rbd mapping and
declares success on the first match.  This works for both entire disks
and partitions, because under the current device number allocation
scheme, each mapping means a new major number.

In preparation for support for single-major device number allocation
scheme, which would require matching both major and minor numbers, make
sure to always match against entire disk device numbers, by converting
the specified device major:minor pair into wholdedisk major:minor pair.
To achive that, use the libblkid library, which accomplishes this goal
by walking stable sysfs structures.

Signed-off-by: Ilya Dryomov <ilya.dryomov@inktank.com>
2013-12-13 17:40:52 +02:00
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
Noah Watkins
cfb82a1759 filejournal: add journal pre-allocate for osx
Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2013-11-10 15:50:13 -08: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
Gary Lowell
b6b48dbefa v0.66 2013-07-08 15:45:00 -07:00
Gary Lowell
c2d517ef96 v0.65 2013-06-25 09:19:32 -07:00
Gary Lowell
42e06c12db v0.64 2013-06-12 09:54:06 -07:00
Gary Lowell
054e96cf79 v0.63 2013-05-28 13:58:22 -07:00
Gary Lowell
9382379cc6 v0.62 2013-05-14 09:13:07 -07:00
Gary Lowell
237f3f1e8d v0.61 2013-05-06 13:18:56 -07:00
Samuel Just
1493e7dbfb osd/: optionally track every pg ref
This involves three pieces:

For intrusive_ptr type references, we use TrackedIntPtr instead.  This
uses get_with_id and put_with_id to associate an id and backtrace with
each particular ref instance.

For refs taken via direct calls to get() and put(), get and put now
require a tag string.  The PG tracks individual ref counts for each tag
as well as the total.

Finally, PGs register/unregister themselves on construction/destruction
with OSDService.

As a result, on shutdown, we can check for live pgs and determine where
the references are held.

This behavior is compiled out by default, but can be included with the
--enable-pgrefdebugging flag.

Signed-off-by: Samuel Just <sam.just@inktank.com>
2013-04-19 11:05:58 -07:00
Greg Farnum
8f21beb23c leveldbstore: handle old versions of leveldb
The filter_policy (bloom filter) stuff is fairly new in LevelDB's life,
and it turns out that precise's version is too old for it. Add conditional
compilation for those members in order to build and work properly.

Signed-off-by: Greg Farnum <greg@inktank.com>
2013-04-17 15:14:35 -07:00
Gary Lowell
f26f7a3902 v0.60 2013-04-01 12:22:53 -07:00
Gary Lowell
cbae6a435c v0.59 2013-03-19 22:27:13 -07:00
Gary Lowell
66cadbe515 Merge branch 'next' 2013-03-05 09:05:21 -08:00
Gary Lowell
ba3f91e750 v0.58 2013-03-04 15:18:24 -08:00
Danny Al-Gaaf
37d148ba91 configure.ac: check for libsnappy
Since libsnappy is needed by leveldb, check if the lib is installed
before check for leveldb.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-02-27 14:27:48 +01:00
Gary Lowell
ea546aef0c Build: Change build to always use system leveldb
Dynamically link to the leveldb installed on the system rather than
statically linking ceph copy.  Remove the --with-system-leveldb config
option, and add a requirement for leveldb libraries for rpm and debian
packages.  Bug 3945.

Signed-off-by: Gary Lowell  <gary.lowell@inktank.com>
2013-02-26 20:07:49 -08:00
Gary Lowell
aa79077c24 configure.ac: Add test for c++ compiler.
The AC_PROG_CXX macro sets a flag if a C++ compiler is found
but does not fail if one is not found, it left to application
to test the flags as needed. This fix will issue an error
when a c++ compiler is not found.  Bug 3955.

Signed-off-by: Gary Lowell  <gary.lowell@inktank.com>

it's not installed, this fix adds an error message for a
2013-02-25 19:35:34 -08:00
Gary Lowell
9a7a9d06c0 v0.57 2013-02-19 10:07:42 -08:00
Danny Al-Gaaf
f74265b08a configure: fix check for fuse_getgroups()
Check for fuse_getgroups() only in case we have found libfuse already.
Moved the check to the check for --with-fuse.

Small fix: fix string for NO_ATOMIC_OPS, don't use "'".

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-01-28 13:56:32 -08:00
Danny Al-Gaaf
fa421cf5f5 configure: remove -m4_include(m4/acx_pthread.m4)
Since we use already AC_CONFIG_MACRO_DIR, no need to include m4/acx_pthread.m4
extra.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-01-26 22:35:15 -08:00
Danny Al-Gaaf
32276e9afb configure: fix RPM_RELEASE
Use git to get RPM_RELEASE only if this is a git repo
clone and if the git command is available on the system.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-01-26 22:34:58 -08:00
Danny Al-Gaaf
c1a86ab142 configure.ac: fix problem with --enable-cephfs-java
The AS_IF used to cover java related checks via --enable-cephfs-java
didn't work correctly. Use a plain 'if/fi' instead to make sure this
section is only executed if --enable-cephfs-java is used.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-01-16 09:41:13 -08:00
Danny Al-Gaaf
59aad34795 configure.ac: check for org.junit.rules.ExternalResource
Check for org.junit.rules.ExternalResource if build with
--enable-cephfs-java and --with-debug. Checking for junit4
isn't enough since junit4 has this class not before 4.7.

Added some m4 files to get some JAVA related macros. Changed
autogen.sh to work with local m4 files/macros.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-01-09 19:52:05 -08:00
Danny Al-Gaaf
61437ee24e configure.ac: change junit4 handling
Change handling of --with-debug and junit4. Add a new conditional HAVE_JUNIT4
to be able to build ceph-test package also if junit4 isn't available. In
this case simply don't build libcephfs-test.jar, but the rest of the tools.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-01-09 17:13:11 -08:00
Danny Al-Gaaf
aedbb97fe6 configure.ac: remove AC_PROG_RANLIB
Remove already comment out AC_PROG_RANLIB to get rid of warning:

libtoolize: `AC_PROG_RANLIB' is rendered obsolete by `LT_INIT'

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-01-09 17:13:11 -08:00
Gary Lowell
1a32f0a0b4 v0.56 2012-12-31 17:10:11 -08:00
Sage Weil
0dd1302543 Merge remote-tracking branch 'gh/testing' into next 2012-12-17 16:51:20 -08:00
Gary Lowell
8e25c8d984 v0.55.1 2012-12-12 16:24:34 -08:00
Sage Weil
81e567c90d Merge remote-tracking branch 'gh/wip-ceph-test' into next 2012-12-08 09:18:21 -08:00
Gary Lowell
690f817560 v0.55 2012-12-03 19:08:35 -08:00
Gary Lowell
af5d9e435f Makefiles: Use AM_CXXFLAGS for crypto library compiler options
In configure.ac, add the crypto library compiler flags to AM_CXXFLAGS and in
src/Makefile remove CRYPTO_CXXFLAGS and use only AM_CXXFLAGS which now has
the flags if needed.
2012-11-27 13:50:25 -08:00
Chen Baozi
68491afceb rgw: add -lresolv flags to Makefile.am
radosgw depends on libresolv since since the commit 951c6be. So we need to
add -lresolve flags, or it cannot link right library.

Signed-off-by: Chen Baozi <baozich@gmail.com>
2012-11-17 23:21:08 -08:00
Gary Lowell
8b187bd8ca build: update for boost_thread library.
There is a difference in naming conventions between debian and
rpm based distributions for this library.  In configure.ac we
check first for boost_thread-mt, then if it's not found check
for boost_thread.  A side effect of the AC_CEHCK_LIB macro is
to add the library to the $LIBS, so the explicit -llibboost_thread
in the Makefile has been removed.
(cherry picked from commit f0c7bb363000037bbf7d58ac6e2d39d0f10200fe)
2012-11-16 10:51:42 -08:00
Gary Lowell
7926ef5393 Merge branch 'next'
Conflicts:
	configure.ac
	src/rgw/rgw_common.cc
2012-11-13 17:29:47 -08:00
Gary Lowell
60b84b095b v0.54 2012-11-13 13:18:07 -08:00
Gary Lowell
ff5ee98f1c build: Add RPM release string generated from git describe.
Fix for bug 3451.  Use the commit count and sha1 from git describe to
construct a release string for rpm packages.
2012-11-08 12:43:24 -08:00
Noah Watkins
1581db9bcb configure: fail when missing junit dependency
Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2012-11-08 09:28:26 -08:00
Joe Buck
5dec9172d9 Moving test java files into a proper heirarchy. Moving the compilation
of tests classes from build.xml to Makefile and editing configure.ac to
look for the junit4 jar in the default location of /usr/share/java. It
is still possible to build and run tests from build.xml as well as
Makefile.

Signed-off-by: Joe Buck <jbbuck@gmail.com>
Reviewed-by: Noah Watkins <noahwatkins@gmail.com>
2012-11-08 09:27:49 -08:00
Samuel Just
6bbe7db79d configure.ac: add program_options header check
Signed-off-by: Samuel Just <sam.just@inktank.com>
2012-10-31 10:27:33 -07:00
Noah Watkins
68e01649ff automake: setup autotools to build cephfs-java
Adds --enable-cephfs-java and --with-jdk to build
the libcephfs Java bindings and specify the default
JDK directory, respectively.

Also adds default JDK paths to avoid --with-jdk in
the common case. Currently setup for the default
provided by Debian's default-jdk package, but other
default search paths can easily be added.

Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2012-10-19 09:59:10 -07:00
Sage Weil
ad6840ce5c Merge branch 'wip-3301'
Reviewed-by: Sage Weil <sage@inktank.com>
2012-10-16 21:06:00 -07:00
Sam Lang
328bf48234 client: Add permissions checking to open
Users of the libcephfs api (fuse in particular)
don't check the mode against the open flags.  This
commit does the proper checks to grant/deny access
to the file.  The check_mode() function constructs
a requested mode based on the flags, and compares that
to the mode of the file.

Signed-off-by: Sam Lang <sam.lang@inktank.com>
2012-10-16 18:26:29 -07:00
Gary Lowell
d78ba6af94 Merge branch 'next' 2012-10-16 23:27:21 +00:00
Gary Lowell
2528b5ee10 v0.43 2012-10-16 17:42:36 +00:00
Gary Lowell
071fdc217a Makefile: Improve test for boost system library. 2012-10-15 14:14:35 -07:00
Gary Lowell
7ea734c472 Makefiles: Missing boost library should not be fatal. 2012-10-15 14:14:34 -07:00
Gary Lowell
3658157b60 Makefile: Updates to eliminates warnings, add test for boost system lib. 2012-10-15 14:14:34 -07:00
Tommi Virtanen
dd462ce38b configure.ac: Typo in human-readable description.
Signed-off-by: Tommi Virtanen <tv@inktank.com>
2012-10-09 13:38:45 -07:00
Gary Lowell
e48859474c v0.52 2012-09-27 16:26:11 +00:00
Sage Weil
c03ca95d23 v0.51 2012-08-25 15:58:39 -07:00
Sage Weil
a4428bd0e1 v0.50 2012-08-13 09:49:24 -07:00
Sage Weil
ca6265d0f4 v0.49 2012-07-23 11:28:08 -07:00
Sage Weil
c2b20ca742 v0.48argonaut 2012-07-02 16:06:01 -07:00
Sage Weil
a85a15fef4 Merge remote-tracking branch 'gh/stable' into next 2012-06-21 08:20:17 -07:00
Sage Weil
c467d9d1b2 v0.47.3 2012-06-20 10:57:41 -07:00
Sage Weil
dde85a207c CrushTester: allow build without boost stuff for chi^2 testing
With limited functionality.

Signed-off-by: Sage Weil <sage@inktank.com>
2012-06-03 16:12:20 -07:00
Sage Weil
fbae60315d Merge branch 'stable' 2012-05-23 16:41:14 -07:00
Sage Weil
8bf9fde89b v0.47.2 2012-05-23 10:55:49 -07:00
Josh Durgin
0ae59eae3d Merge branch 'stable' 2012-05-22 12:54:09 -07:00
Sage Weil
f5a9404445 v0.47.1 2012-05-21 14:28:45 -07:00
Sage Weil
d8f4c6d208 Merge branch 'stable'
Conflicts:
	src/os/FileStore.cc
2012-05-20 21:18:36 -07:00
Sage Weil
ad663d58c8 v0.47 2012-05-20 15:33:49 -07:00
Sage Weil
89316566b5 remove gceph
Signed-off-by: Sage Weil <sage@inktank.com>
2012-05-17 20:23:33 -07:00
Yehuda Sadeh
53f642e29a rest-bench: build conditionally
added configure --with-rest-bench, and configure --with-system-libs3

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
2012-05-04 15:55:25 -07:00
Sage Weil
cb7f1c9c75 v0.46 2012-04-30 10:55:45 -07:00
Sage Weil
0aea1cb1df v0.45 2012-04-10 10:42:11 -07:00
Sage Weil
d348e1abf8 configure: --with-system-leveldb
Default to bundled leveldb.  Optionally check.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
2012-04-09 21:20:18 -07:00
Sage Weil
7951d7e442 Merge remote branch 'gh/stable' into next 2012-04-08 20:59:33 -07:00
Sage Weil
dd8fd1688a configure: HAVE_FALLOCATE -> CEPH_HAVE_FALLOCATE
/usr/include/linux/fs.h defines this on CentOS 5, even though it does not
in fact compile.  This stupid workaround avoids the problem.

Reported-by: Nick Couchman <Nick.Couchman@seakr.com>
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
2012-04-08 20:58:59 -07:00
Sage Weil
689ac5d701 v0.44.2 2012-04-05 14:55:04 -07:00
Sage Weil
94e3abf88a Merge branch 'stable' 2012-03-27 19:58:54 -07:00
Sage Weil
c89b7f22c8 v0.44.1 2012-03-27 13:02:09 -07:00
Sage Weil
a608a8fef6 Merge branch 'stable' 2012-03-21 06:28:15 -07:00
Sage Weil
cdd5298d27 v0.44 2012-03-20 11:41:08 -07:00
Sage Weil
0904c7b73d configure: fix warnings
Finally!

Signed-off-by: Sage Weil <sage@newdream.net>
2012-03-16 10:39:39 -07:00
Yehuda Sadeh
d90298de18 ceph-dencoder: don't use rgw types if configured without rgw
Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
2012-03-13 17:04:01 -07:00
Sage Weil
ed6cc47b18 filestore: use FL_ALLOC_PUNCH_HOLE to zero, when available
First try the FL_ALLOC_PUNCH_HOLE fallocate() flag.  If we get EOPNOTSUPP,
fall back to writing zeros.

Check for fallocate(2) with configure.  Also, avoid this if we are not
Linux, since I'm not sure about the hard-coded FL_ALLOC_PUNCH_HOLE being
correct on other platforms.

Signed-off-by: Sage Weil <sage@newdream.net>
Reviewed-by: Samuel Just <samuel.just@dreamhost.com>
2012-03-08 14:30:06 -08:00
Florian Haas
c31b86963a OCF resource agents: add rbd
Add a resource agent for mapping, unmapping and monitoring RBD devices.

Maps an RBD on start, unmaps it on stop. Checks "rbd showmapped"
output for monitoring whether the device is mapped, thus does not
rely on the ceph-rbdnamer udev magic to be enabled.

This RA is cloneable and essentially allows people to use RBD devices
as a drop-in replacement for
- iSCSI devices,
- host-based mirrored devices using md RAID-1,
- DRBD devices
in Pacemaker clusters.
2012-03-05 21:30:30 +01:00
Sage Weil
38537ba74a Merge branch 'stable' 2012-03-02 13:45:03 -08:00
Sage Weil
9fa8781c01 v0.43 2012-03-02 08:53:30 -08:00
Samuel Just
d9b130faf0 Added LevelDBStore
Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
2012-03-01 10:11:42 -08:00
Sage Weil
732f3ec94e v0.42.2 2012-02-24 13:00:39 -08:00
Sage Weil
c3e1291da9 v0.42.1 2012-02-23 18:48:57 -08:00
Sage Weil
b205c64c68 v0.42 2012-02-19 15:30:37 -08:00
Sage Weil
fb0e2a3ece configure: add --without-libaio option
Use it by default; fail if it's not there.  Unless --without-libaio is
specified.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
2012-02-04 17:44:24 -08:00
Sage Weil
30a77acb07 filejournal: implement aio for writes
Implement aio for the journal writes.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
2012-02-04 17:44:24 -08:00
Sage Weil
c1345f7136 v0.41 2012-01-27 12:35:42 -08:00
Sage Weil
7eea40ea37 v0.40 2012-01-13 08:36:13 -08:00
Kacper Kowalik (Xarthisius)
c9e028f4e5 Makefile: Handle corner case of crypto++ correctly
i.e. use c++ while compiling, append to CRYPTO_LIBS instead of LIBS

Signed-off-by: Kacper Kowalik (Xarthisius) <xarthisius@gentoo.org>
2012-01-12 09:17:42 -08:00
Kacper Kowalik (Xarthisius)
c5144eed4e Makefile: Use ACX_PTHREAD in configure.ac and resulting flags in src/Makefile.am
instead of hardcoded flags

Signed-off-by: Kacper Kowalik (Xarthisius) <xarthisius@gentoo.org>
2012-01-12 09:17:24 -08:00
Florian Haas
92cfad4203 Add OCF-compliant resource agent for Ceph daemons
Add a wrapper around the ceph init script that makes
MDS, OSD and MON configurable as Open Cluster Framework
(OCF) compliant cluster resources. Allows Ceph
daemons to tie in with cluster resource managers that
support OCF, such as Pacemaker (http://www.clusterlabs.org).

Disabled by default, configure --with-ocf to enable.

Signed-off-by: Florian Haas <florian@hastexo.com>
2011-12-30 09:00:30 -08:00
Sage Weil
321ecdaba2 v0.39 2011-12-02 09:01:31 -08:00
Sage Weil
2253c0168d use libuuid for fsid
Signed-off-by: Sage Weil <sage@newdream.net>
2011-11-11 20:48:59 -08:00
Sage Weil
fa5047b377 Merge remote branch 'gh/stable' 2011-11-10 20:50:31 -08:00
Sage Weil
b600ec2ac7 v0.38 2011-11-10 15:07:05 -08:00
Sage Weil
20cf1e96fb automake: enable 'make V=0'
Enables silent mode for automake generated Makefiles,
and silent mode is _off_ by default. Using V=0 the output
is much easier to read when trying to find warnings:

nwatkins@piha:~/Projects/ceph/ceph$ make -j8 V=0
make[3]: Entering directory `/users/nwatkins/Projects/ceph/ceph/src'
  CC     locks.o
  CXX    journal.o
  CXX    Server.o
  CXX    Mutation.o
  CXX    MDCache.o
  CXX    Locker.o
  CXX    Migrator.o
  CXX    MDBalancer.o
  CXX    CDentry.o
  CXX    CDir.o
  CXX    CInode.o
  CXX    LogEvent.o
  CXX    MDSTable.o

Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2011-11-08 21:13:07 -08:00
Sage Weil
46f330d01c Merge branch 'master' into wip-freebsd 2011-10-25 14:54:16 -07:00
Sage Weil
a6f3bbb744 v0.37 2011-10-17 08:35:57 -07:00
Sage Weil
468c7dce79 rgw: find fcgi headers in /usr/include or /usr/include/fastcgi
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
2011-10-10 19:11:45 -07:00
Stanislav Sedov
d4340bacfa On FreeBSD, libedit should be linked in explicitly, because this library
is present in the system, but it is not in the pkg-config database.

Signed-off-by:	Stanislav Sedov <stas@FreeBSD.org>
2011-10-04 19:03:55 -07:00
Stanislav Sedov
9fde4d946f First cut of FreeBSD support. This patch allowes ceph to compile successfully
under FreeBSD.

Signed-off-by:	Stanislav Sedov <stas@FreeBSD.org>
2011-10-04 17:34:41 -07:00
Sage Weil
877cacbbdb v0.36 2011-09-30 15:48:28 -07:00
Sage Weil
0afda37812 v0.35 2011-09-21 09:47:36 -07:00
Sage Weil
2f039eeeb7 v0.34 2011-08-26 21:48:47 -07:00
Sage Weil
340b4348bf v0.33 2011-08-17 09:16:27 -07:00
Sage Weil
c08d08baa6 v0.32 2011-07-29 21:44:23 -07:00
Colin Patrick McCabe
143e2dd5fe Don't build build tests unless requested
Build tests (that check if there are unresolved symbols in libraries)
can slow down the build a lot. We should only enable them when
developers need them.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
2011-07-13 16:12:40 -07:00
Sage Weil
9019c6ce64 v0.31 2011-07-08 14:17:40 -07:00
Sage Weil
64b1b2c70f v0.30 2011-06-27 22:23:56 -07:00
Sage Weil
ca4e2877af Merge branch 'stable' 2011-06-16 19:44:19 -07:00
Sage Weil
77d38e420b v0.29.1
Signed-off-by: Sage Weil <sage@newdream.net>
2011-06-16 13:10:59 -07:00
Sage Weil
954e09661f qa: do not use automake for workunit makefiles
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
2011-06-14 12:53:33 -07:00
Sage Weil
71543246d3 configure: check for boost statechart header
Partially fixes: #1124
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
2011-06-13 21:56:47 -07:00