| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Signed-off-by: Kefu Chai <kchai@redhat.com>
|
|
|
|
| |
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
|
|
|
|
|
|
|
|
|
| |
* use gcc intrinsics for byteswap
* use template to wrap them.
* add the modeline for emacs/vim
* update the caller of the mswab/swab accordingly
Signed-off-by: Kefu Chai <kchai@redhat.com>
|
|
|
|
|
|
| |
Fixes: http://tracker.ceph.com/issues/19012
Signed-off-by: liuchang0812 <liuchang0812@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
prior to this change, libcommon is a convenient library which gets
linked into librados, librbd and libcephfs and all ceph executables.
this incurs some problems:
- double dose of libcommon in memory space and HDD: waste of memory
and disk space.
- if an application links to two libraries including libcommon at the
same time. take librados and libcephfs as an example, they could
interfere with each other by changing the other guy's status.
after this change, libcommon is tuned into a shared library and
renamed to libceph-common. it will be installed into $prefix/lib/ceph,
and packaged in librados2.
ceph.spec.in,debian/librados2.install: package libceph-common in
librados2.
CMakeLists.txt:
- do not link against libboost-* if not necessary.
- s/common/ceph-common/g
- install libceph-common into $prefix/lib/ceph
- set rpath to $prefix/lib/ceph
- link against ceph-common if an executable needs access to non public
symbols in ceph.
Signed-off-by: Kefu Chai <kchai@redhat.com>
|
|
|
|
| |
Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
|
|
|
|
|
|
|
| |
As a transition for g_ceph_context removal, make all dout macros depends
on a local macro.
Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
prior to this change, global_init() could create a new CephContext
and assign it to g_ceph_context. it's our responsibilty to release
the CephContext explicitly using cct->put() before the application
quits. but sometimes, we fail to do so.
in this change, global_init() will return an intrusive_ptr<CephContext>,
which calls `g_ceph_context->put()` in its dtor. this ensures that
the CephContext is always destroyed before main() returns. so the
log is flushed before _log_exp_length is destroyed.
there are two cases where global_pre_init() is called directly.
- ceph_conf.cc: g_ceph_context->put() will be called by an intrusive_ptr<>
deleter.
- rgw_main.cc: global_init() is called later on on the success code
path, so it will be taken care of.
Fixes: http://tracker.ceph.com/issues/17762
Signed-off-by: Kefu Chai <kchai@redhat.com>
|
|
|
|
| |
Signed-off-by: Sage Weil <sage@redhat.com>
|
|
|
|
| |
Signed-off-by: Kefu Chai <kchai@redhat.com>
|
|
|
|
| |
Signed-off-by: Kefu Chai <kchai@redhat.com>
|
|
|
|
|
| |
Fixes: http://tracker.ceph.com/issues/16707
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
|
|
|
|
|
|
|
| |
rbd_replay and rbd_replay_ios are convenience libraries, and they are
not supposed to be used by user.
Signed-off-by: Kefu Chai <kchai@redhat.com>
|
|
|
|
| |
Signed-off-by: Michal Jarzabek <stiopa@gmail.com>
|
|
|
|
| |
Signed-off-by: Sage Weil <sage@redhat.com>
|
|\
| |
| |
| |
| | |
CMake: For CMake version <= 2.8.11, use LINK_PRIVATE and LINK_PUBLIC
Reviewed-by: Kefu Chai <kchai@redhat.com>
|
| |
| |
| |
| |
| |
| | |
PRIVATE,PUBLIC for backward compatibility
Signed-off-by: Tao Chang <changtao@hihuron.com>
|
| |
| |
| |
| |
| |
| |
| | |
Use explicit keyword for constructors with one argument to
prevent implicit usage as conversion functions.
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
|
|/
|
|
| |
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
|
|
|
|
|
|
| |
It still uses sync open/close in replay, which can be improved later.
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
|
|
|
|
|
| |
Fixes: #14452
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
|
|
|
|
|
|
|
|
|
| |
moved rbd_replay targets into it's directory,
rbd-replay-prep added, removed "lib" in front of
all rbd_replay libraries, linked rbd_replay into
ceph-dencoder.
Signed-off-by: Ali Maredia <amaredia@redhat.com>
|
|
|
|
| |
Signed-off-by: Michal Jarzabek <stiopa@gmail.com>
|
|
|
|
| |
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
|
|
|
|
|
|
|
| |
This new command-line will dump all the processed events as they
are extracted from the trace file.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
|
|
|
|
|
|
|
| |
Avoid building the entire prep event history in memory before
attempting to write the prepped trace file.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Only track read-after-write and write-after-write IO dependencies
via the associated write completions. All IO events after a write
completion are considered to be dependent and can be pruned down
to at most the number of concurrent IOs. This reduces the prep
time from a simple 'rbd bench-write' from over 4 hrs down to seconds.
Fixes: #13378, #13384
Backport: hammer
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
|
|
|
|
|
|
| |
Fixes: #13221
Backport: hammer
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
|
|
|
|
|
|
|
|
| |
Added support for read2, write2, aio_read2, and aio_write2 APIs.
Fixes: 13325
Backport: hammer
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
|
|
|
|
|
|
| |
Fixes: #13220
Backport: hammer
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
|
|
|
|
| |
Signed-off-by: Yan, Zheng <zyan@redhat.com>
|
|
|
|
| |
Signed-off-by: Dennis Schafroth <dennis@schafroth.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fix for:
CID 1232607 (#1 of 1): Uninitialized pointer field (UNINIT_CTOR)
uninit_member: Non-static class member m_dump_perf_counters is not
initialized in this constructor nor in any functions that it calls.
uninit_member: Non-static class member m_rbd is not initialized in
this constructor nor in any functions that it calls.
uninit_member: Non-static class member m_ioctx is not initialized in
this constructor nor in any functions that it calls.
uninit_member: Non-static class member m_latency_multiplier is not
initialized in this constructor nor in any functions that it calls.
uninit_member: Non-static class member m_readonly is not initialized
in this constructor nor in any functions that it calls.
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
|
|
|
|
|
|
| |
It is always supposed to be a valid pointer here.
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
|
|
|
|
|
|
|
| |
Remove code duplication by generalizing ceph_argparse_with{int,float,longlong}
routines - make one template function for those cases.
Signed-off-by: Dmitry Yatsushkevich <dyatsushkevich@mirantis.com>
|
|
|
|
| |
refinement
|
|
|
|
| |
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
|
|
|
|
| |
Signed-off-by: Adam Crume <adamcrume@gmail.com>
|
|
|
|
| |
Signed-off-by: Adam Crume <adamcrume@gmail.com>
|
|
|
|
| |
Signed-off-by: Adam Crume <adamcrume@gmail.com>
|
|
|
|
| |
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
|
|
|
|
| |
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
|
|
|
|
|
|
|
| |
This requires a fair amount of code reorganization, since the types in
the function signature were previously not in a header file.
Signed-off-by: Adam Crume <adamcrume@gmail.com>
|
|
|
|
| |
Signed-off-by: Adam Crume <adamcrume@gmail.com>
|
|
|
|
| |
Signed-off-by: Adam Crume <adamcrume@gmail.com>
|
|
|
|
| |
Signed-off-by: Adam Crume <adamcrume@gmail.com>
|
|
|
|
| |
Signed-off-by: Adam Crume <adamcrume@gmail.com>
|
|
|
|
| |
Signed-off-by: Adam Crume <adamcrume@gmail.com>
|
|
|
|
| |
Signed-off-by: Adam Crume <adamcrume@gmail.com>
|
|
|
|
| |
Signed-off-by: Adam Crume <adamcrume@gmail.com>
|