From dbfac2807c7acfaf42f0db7cc9539e71c809c523 Mon Sep 17 00:00:00 2001 From: Min Chen Date: Mon, 31 Aug 2015 15:09:58 +0800 Subject: [PATCH] bug fix: librados segmentation fault, support RadosStriperImpl::aio_read() method Signed-off-by: Min Chen --- src/libradosstriper/RadosStriperImpl.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/libradosstriper/RadosStriperImpl.cc b/src/libradosstriper/RadosStriperImpl.cc index 0886f8b3403c..3544cac1b787 100644 --- a/src/libradosstriper/RadosStriperImpl.cc +++ b/src/libradosstriper/RadosStriperImpl.cc @@ -463,10 +463,10 @@ int libradosstriper::RadosStriperImpl::aio_read(const std::string& soid, // create a completion object and transfer ownership of extents and resultbl vector *resultbl = new vector(extents->size()); - c->is_read = true; - c->io = m_ioCtxImpl; ReadCompletionData *cdata = new ReadCompletionData(this, soid, lockCookie, c, bl, extents, resultbl); + c->is_read = true; + c->io = m_ioCtxImpl; libradosstriper::MultiAioCompletionImpl *nc = new libradosstriper::MultiAioCompletionImpl; nc->set_complete_callback(cdata, striper_read_aio_req_complete); // go through the extents -- 2.47.3