From: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
To: ceph-devel <ceph-devel@vger.kernel.org>
Subject: Re: New Defects reported by Coverity Scan for ceph
Date: Tue, 28 Oct 2014 19:26:07 +0100 [thread overview]
Message-ID: <544FDFBF.1070302@bisect.de> (raw)
In-Reply-To: <544f971cf59b_77e15cb3187793@scan.coverity.com.mail>
Hi,
these can be ignored, they are caused by the ASSERT_* handling of the
gtest framework.
Danny
Am 28.10.2014 um 14:16 schrieb scan-admin@coverity.com:
>
> Hi,
>
> Please find the latest report on new defect(s) introduced to ceph
> found with Coverity Scan.
>
> 2 new defect(s) introduced to ceph found with Coverity Scan. 5
> defect(s), reported by Coverity Scan earlier, were marked fixed in
> the recent build analyzed by Coverity Scan.
>
> New defect(s) Reported-by: Coverity Scan Showing 2 of 2 defect(s)
>
>
> ** CID 1249779: Resource leak (RESOURCE_LEAK)
> /test/libradosstriper/striping.cc: 56 in
> StriperTestRT::checkObjectFromRados(const std::basic_string<char,
> std::char_traits<char>, std::allocator<char>>&, ceph::buffer::list
> &, unsigned long, unsigned long, unsigned long, unsigned long,
> unsigned long)() /test/libradosstriper/striping.cc: 59 in
> StriperTestRT::checkObjectFromRados(const std::basic_string<char,
> std::char_traits<char>, std::allocator<char>>&, ceph::buffer::list
> &, unsigned long, unsigned long, unsigned long, unsigned long,
> unsigned long)() /test/libradosstriper/striping.cc: 52 in
> StriperTestRT::checkObjectFromRados(const std::basic_string<char,
> std::char_traits<char>, std::allocator<char>>&, ceph::buffer::list
> &, unsigned long, unsigned long, unsigned long, unsigned long,
> unsigned long)() /test/libradosstriper/striping.cc: 55 in
> StriperTestRT::checkObjectFromRados(const std::basic_string<char,
> std::char_traits<char>, std::allocator<char>>&, ceph::buffer::list
> &, unsigned long, unsigned long, unsigned long, unsigned long,
> unsigned long)() /test/libradosstriper/striping.cc: 47 in
> StriperTestRT::checkObjectFromRados(const std::basic_string<char,
> std::char_traits<char>, std::allocator<char>>&, ceph::buffer::list
> &, unsigned long, unsigned long, unsigned long, unsigned long,
> unsigned long)() /test/libradosstriper/striping.cc: 50 in
> StriperTestRT::checkObjectFromRados(const std::basic_string<char,
> std::char_traits<char>, std::allocator<char>>&, ceph::buffer::list
> &, unsigned long, unsigned long, unsigned long, unsigned long,
> unsigned long)() /test/libradosstriper/striping.cc: 51 in
> StriperTestRT::checkObjectFromRados(const std::basic_string<char,
> std::char_traits<char>, std::allocator<char>>&, ceph::buffer::list
> &, unsigned long, unsigned long, unsigned long, unsigned long,
> unsigned long)() /test/libradosstriper/striping.cc: 45 in
> StriperTestRT::checkObjectFromRados(const std::basic_string<char,
> std::char_traits<char>, std::allocator<char>>&, ceph::buffer::list
> &, unsigned long, unsigned long, unsigned long, unsigned long,
> unsigned long)() /test/libradosstriper/striping.cc: 46 in
> StriperTestRT::checkObjectFromRados(const std::basic_string<char,
> std::char_traits<char>, std::allocator<char>>&, ceph::buffer::list
> &, unsigned long, unsigned long, unsigned long, unsigned long,
> unsigned long)()
>
> ** CID 1249780: Resource leak (RESOURCE_LEAK)
> /test/libradosstriper/striping.cc: 95 in
> StriperTestRT::checkObjectFromRados(const std::basic_string<char,
> std::char_traits<char>, std::allocator<char>>&, ceph::buffer::list
> &, unsigned long, unsigned long, unsigned long, unsigned long,
> unsigned long)() /test/libradosstriper/striping.cc: 97 in
> StriperTestRT::checkObjectFromRados(const std::basic_string<char,
> std::char_traits<char>, std::allocator<char>>&, ceph::buffer::list
> &, unsigned long, unsigned long, unsigned long, unsigned long,
> unsigned long)() /test/libradosstriper/striping.cc: 100 in
> StriperTestRT::checkObjectFromRados(const std::basic_string<char,
> std::char_traits<char>, std::allocator<char>>&, ceph::buffer::list
> &, unsigned long, unsigned long, unsigned long, unsigned long,
> unsigned long)() /test/libradosstriper/striping.cc: 103 in
> StriperTestRT::checkObjectFromRados(const std::basic_string<char,
> std::char_traits<char>, std::allocator<char>>&, ceph::buffer::list
> &, unsigned long, unsigned long, unsigned long, unsigned long,
> unsigned long)() /test/libradosstriper/striping.cc: 145 in
> StriperTestRT::checkObjectFromRados(const std::basic_string<char,
> std::char_traits<char>, std::allocator<char>>&, ceph::buffer::list
> &, unsigned long, unsigned long, unsigned long, unsigned long,
> unsigned long)()
>
>
> ________________________________________________________________________________________________________
>
>
*** CID 1249779: Resource leak (RESOURCE_LEAK)
> /test/libradosstriper/striping.cc: 56 in
> StriperTestRT::checkObjectFromRados(const std::basic_string<char,
> std::char_traits<char>, std::allocator<char>>&, ceph::buffer::list
> &, unsigned long, unsigned long, unsigned long, unsigned long,
> unsigned long)() 50 ASSERT_LT(0U, stripe_count); 51
> ASSERT_EQ(stripe_count, exp_stripe_count); 52 ASSERT_LT(0,
> ioctx.getxattr(firstOid, "striper.layout.object_size", xattrbl));
> 53 s_xattr = std::string(xattrbl.c_str(),
> xattrbl.length()); // adds 0 byte at the end 54 uint64_t
> object_size = strtoll(s_xattr.c_str(), NULL, 10); 55
> ASSERT_EQ(object_size, exp_object_size);
>>>> CID 1249779: Resource leak (RESOURCE_LEAK) Variable
>>>> "firstOid" going out of scope leaks the storage it points
>>>> to.
> 56 ASSERT_LT(0, ioctx.getxattr(firstOid, "striper.size",
> xattrbl)); 57 s_xattr = std::string(xattrbl.c_str(),
> xattrbl.length()); // adds 0 byte at the end 58 uint64_t
> xa_size = strtoll(s_xattr.c_str(), NULL, 10); 59
> ASSERT_EQ(xa_size, size); 60 // checking object content
> from rados point of view 61 // we will go stripe by stripe,
> read the content of each of them and
> /test/libradosstriper/striping.cc: 59 in
> StriperTestRT::checkObjectFromRados(const std::basic_string<char,
> std::char_traits<char>, std::allocator<char>>&, ceph::buffer::list
> &, unsigned long, unsigned long, unsigned long, unsigned long,
> unsigned long)() 53 s_xattr = std::string(xattrbl.c_str(),
> xattrbl.length()); // adds 0 byte at the end 54 uint64_t
> object_size = strtoll(s_xattr.c_str(), NULL, 10); 55
> ASSERT_EQ(object_size, exp_object_size); 56 ASSERT_LT(0,
> ioctx.getxattr(firstOid, "striper.size", xattrbl)); 57
> s_xattr = std::string(xattrbl.c_str(), xattrbl.length()); // adds 0
> byte at the end 58 uint64_t xa_size =
> strtoll(s_xattr.c_str(), NULL, 10);
>>>> CID 1249779: Resource leak (RESOURCE_LEAK) Variable
>>>> "firstOid" going out of scope leaks the storage it points
>>>> to.
> 59 ASSERT_EQ(xa_size, size); 60 // checking object
> content from rados point of view 61 // we will go stripe by
> stripe, read the content of each of them and 62 // check
> with expectations 63 uint64_t stripe_per_object =
> object_size / stripe_unit; 64 uint64_t stripe_per_objectset
> = stripe_per_object * stripe_count;
> /test/libradosstriper/striping.cc: 52 in
> StriperTestRT::checkObjectFromRados(const std::basic_string<char,
> std::char_traits<char>, std::allocator<char>>&, ceph::buffer::list
> &, unsigned long, unsigned long, unsigned long, unsigned long,
> unsigned long)() 46 ASSERT_EQ(stripe_unit,
> exp_stripe_unit); 47 ASSERT_LT(0, ioctx.getxattr(firstOid,
> "striper.layout.stripe_count", xattrbl)); 48 s_xattr =
> std::string(xattrbl.c_str(), xattrbl.length()); // adds 0 byte at
> the end 49 uint64_t stripe_count = strtoll(s_xattr.c_str(),
> NULL, 10); 50 ASSERT_LT(0U, stripe_count); 51
> ASSERT_EQ(stripe_count, exp_stripe_count);
>>>> CID 1249779: Resource leak (RESOURCE_LEAK) Variable
>>>> "firstOid" going out of scope leaks the storage it points
>>>> to.
> 52 ASSERT_LT(0, ioctx.getxattr(firstOid,
> "striper.layout.object_size", xattrbl)); 53 s_xattr =
> std::string(xattrbl.c_str(), xattrbl.length()); // adds 0 byte at
> the end 54 uint64_t object_size = strtoll(s_xattr.c_str(),
> NULL, 10); 55 ASSERT_EQ(object_size, exp_object_size); 56
> ASSERT_LT(0, ioctx.getxattr(firstOid, "striper.size", xattrbl)); 57
> s_xattr = std::string(xattrbl.c_str(), xattrbl.length()); // adds 0
> byte at the end /test/libradosstriper/striping.cc: 55 in
> StriperTestRT::checkObjectFromRados(const std::basic_string<char,
> std::char_traits<char>, std::allocator<char>>&, ceph::buffer::list
> &, unsigned long, unsigned long, unsigned long, unsigned long,
> unsigned long)() 49 uint64_t stripe_count =
> strtoll(s_xattr.c_str(), NULL, 10); 50 ASSERT_LT(0U,
> stripe_count); 51 ASSERT_EQ(stripe_count,
> exp_stripe_count); 52 ASSERT_LT(0, ioctx.getxattr(firstOid,
> "striper.layout.object_size", xattrbl)); 53 s_xattr =
> std::string(xattrbl.c_str(), xattrbl.length()); // adds 0 byte at
> the end 54 uint64_t object_size = strtoll(s_xattr.c_str(),
> NULL, 10);
>>>> CID 1249779: Resource leak (RESOURCE_LEAK) Variable
>>>> "firstOid" going out of scope leaks the storage it points
>>>> to.
> 55 ASSERT_EQ(object_size, exp_object_size); 56
> ASSERT_LT(0, ioctx.getxattr(firstOid, "striper.size", xattrbl)); 57
> s_xattr = std::string(xattrbl.c_str(), xattrbl.length()); // adds 0
> byte at the end 58 uint64_t xa_size =
> strtoll(s_xattr.c_str(), NULL, 10); 59 ASSERT_EQ(xa_size,
> size); 60 // checking object content from rados point of
> view /test/libradosstriper/striping.cc: 47 in
> StriperTestRT::checkObjectFromRados(const std::basic_string<char,
> std::char_traits<char>, std::allocator<char>>&, ceph::buffer::list
> &, unsigned long, unsigned long, unsigned long, unsigned long,
> unsigned long)() 41 char* firstOid = getObjName(soid, 0);
> 42 ASSERT_LT(0, ioctx.getxattr(firstOid,
> "striper.layout.stripe_unit", xattrbl)); 43 std::string
> s_xattr(xattrbl.c_str(), xattrbl.length()); // adds 0 byte at the
> end 44 uint64_t stripe_unit = strtoll(s_xattr.c_str(),
> NULL, 10); 45 ASSERT_LT((unsigned)0, stripe_unit); 46
> ASSERT_EQ(stripe_unit, exp_stripe_unit);
>>>> CID 1249779: Resource leak (RESOURCE_LEAK) Variable
>>>> "firstOid" going out of scope leaks the storage it points
>>>> to.
> 47 ASSERT_LT(0, ioctx.getxattr(firstOid,
> "striper.layout.stripe_count", xattrbl)); 48 s_xattr =
> std::string(xattrbl.c_str(), xattrbl.length()); // adds 0 byte at
> the end 49 uint64_t stripe_count = strtoll(s_xattr.c_str(),
> NULL, 10); 50 ASSERT_LT(0U, stripe_count); 51
> ASSERT_EQ(stripe_count, exp_stripe_count); 52 ASSERT_LT(0,
> ioctx.getxattr(firstOid, "striper.layout.object_size", xattrbl));
> /test/libradosstriper/striping.cc: 50 in
> StriperTestRT::checkObjectFromRados(const std::basic_string<char,
> std::char_traits<char>, std::allocator<char>>&, ceph::buffer::list
> &, unsigned long, unsigned long, unsigned long, unsigned long,
> unsigned long)() 44 uint64_t stripe_unit =
> strtoll(s_xattr.c_str(), NULL, 10); 45
> ASSERT_LT((unsigned)0, stripe_unit); 46
> ASSERT_EQ(stripe_unit, exp_stripe_unit); 47 ASSERT_LT(0,
> ioctx.getxattr(firstOid, "striper.layout.stripe_count", xattrbl));
> 48 s_xattr = std::string(xattrbl.c_str(),
> xattrbl.length()); // adds 0 byte at the end 49 uint64_t
> stripe_count = strtoll(s_xattr.c_str(), NULL, 10);
>>>> CID 1249779: Resource leak (RESOURCE_LEAK) Variable
>>>> "firstOid" going out of scope leaks the storage it points
>>>> to.
> 50 ASSERT_LT(0U, stripe_count); 51
> ASSERT_EQ(stripe_count, exp_stripe_count); 52 ASSERT_LT(0,
> ioctx.getxattr(firstOid, "striper.layout.object_size", xattrbl));
> 53 s_xattr = std::string(xattrbl.c_str(),
> xattrbl.length()); // adds 0 byte at the end 54 uint64_t
> object_size = strtoll(s_xattr.c_str(), NULL, 10); 55
> ASSERT_EQ(object_size, exp_object_size);
> /test/libradosstriper/striping.cc: 51 in
> StriperTestRT::checkObjectFromRados(const std::basic_string<char,
> std::char_traits<char>, std::allocator<char>>&, ceph::buffer::list
> &, unsigned long, unsigned long, unsigned long, unsigned long,
> unsigned long)() 45 ASSERT_LT((unsigned)0, stripe_unit); 46
> ASSERT_EQ(stripe_unit, exp_stripe_unit); 47 ASSERT_LT(0,
> ioctx.getxattr(firstOid, "striper.layout.stripe_count", xattrbl));
> 48 s_xattr = std::string(xattrbl.c_str(),
> xattrbl.length()); // adds 0 byte at the end 49 uint64_t
> stripe_count = strtoll(s_xattr.c_str(), NULL, 10); 50
> ASSERT_LT(0U, stripe_count);
>>>> CID 1249779: Resource leak (RESOURCE_LEAK) Variable
>>>> "firstOid" going out of scope leaks the storage it points
>>>> to.
> 51 ASSERT_EQ(stripe_count, exp_stripe_count); 52
> ASSERT_LT(0, ioctx.getxattr(firstOid, "striper.layout.object_size",
> xattrbl)); 53 s_xattr = std::string(xattrbl.c_str(),
> xattrbl.length()); // adds 0 byte at the end 54 uint64_t
> object_size = strtoll(s_xattr.c_str(), NULL, 10); 55
> ASSERT_EQ(object_size, exp_object_size); 56 ASSERT_LT(0,
> ioctx.getxattr(firstOid, "striper.size", xattrbl));
> /test/libradosstriper/striping.cc: 45 in
> StriperTestRT::checkObjectFromRados(const std::basic_string<char,
> std::char_traits<char>, std::allocator<char>>&, ceph::buffer::list
> &, unsigned long, unsigned long, unsigned long, unsigned long,
> unsigned long)() 39 // checking first object's rados
> xattrs 40 bufferlist xattrbl; 41 char* firstOid =
> getObjName(soid, 0); 42 ASSERT_LT(0,
> ioctx.getxattr(firstOid, "striper.layout.stripe_unit", xattrbl));
> 43 std::string s_xattr(xattrbl.c_str(), xattrbl.length());
> // adds 0 byte at the end 44 uint64_t stripe_unit =
> strtoll(s_xattr.c_str(), NULL, 10);
>>>> CID 1249779: Resource leak (RESOURCE_LEAK) Variable
>>>> "firstOid" going out of scope leaks the storage it points
>>>> to.
> 45 ASSERT_LT((unsigned)0, stripe_unit); 46
> ASSERT_EQ(stripe_unit, exp_stripe_unit); 47 ASSERT_LT(0,
> ioctx.getxattr(firstOid, "striper.layout.stripe_count", xattrbl));
> 48 s_xattr = std::string(xattrbl.c_str(),
> xattrbl.length()); // adds 0 byte at the end 49 uint64_t
> stripe_count = strtoll(s_xattr.c_str(), NULL, 10); 50
> ASSERT_LT(0U, stripe_count); /test/libradosstriper/striping.cc: 46
> in StriperTestRT::checkObjectFromRados(const
> std::basic_string<char, std::char_traits<char>,
> std::allocator<char>>&, ceph::buffer::list &, unsigned long,
> unsigned long, unsigned long, unsigned long, unsigned long)() 40
> bufferlist xattrbl; 41 char* firstOid = getObjName(soid,
> 0); 42 ASSERT_LT(0, ioctx.getxattr(firstOid,
> "striper.layout.stripe_unit", xattrbl)); 43 std::string
> s_xattr(xattrbl.c_str(), xattrbl.length()); // adds 0 byte at the
> end 44 uint64_t stripe_unit = strtoll(s_xattr.c_str(),
> NULL, 10); 45 ASSERT_LT((unsigned)0, stripe_unit);
>>>> CID 1249779: Resource leak (RESOURCE_LEAK) Variable
>>>> "firstOid" going out of scope leaks the storage it points
>>>> to.
> 46 ASSERT_EQ(stripe_unit, exp_stripe_unit); 47
> ASSERT_LT(0, ioctx.getxattr(firstOid,
> "striper.layout.stripe_count", xattrbl)); 48 s_xattr =
> std::string(xattrbl.c_str(), xattrbl.length()); // adds 0 byte at
> the end 49 uint64_t stripe_count = strtoll(s_xattr.c_str(),
> NULL, 10); 50 ASSERT_LT(0U, stripe_count); 51
> ASSERT_EQ(stripe_count, exp_stripe_count);
>
> ________________________________________________________________________________________________________
>
>
*** CID 1249780: Resource leak (RESOURCE_LEAK)
> /test/libradosstriper/striping.cc: 95 in
> StriperTestRT::checkObjectFromRados(const std::basic_string<char,
> std::char_traits<char>, std::allocator<char>>&, ceph::buffer::list
> &, unsigned long, unsigned long, unsigned long, unsigned long,
> unsigned long)() 89 int rc = ioctx.read(oid, stripe_data,
> len, start); 90 if (actual_size_if_sparse < size and 91
> (actual_size_if_sparse+stripe_unit-1)/stripe_unit <= stripe_nb) {
> 92 // sparse object case : the stripe does not exist,
> but the rados object may 93 uint64_t object_start =
> (object_in_set + objectset*stripe_per_objectset) * stripe_unit; 94
> if (actual_size_if_sparse <= object_start) {
>>>> CID 1249780: Resource leak (RESOURCE_LEAK) Variable "oid"
>>>> going out of scope leaks the storage it points to.
> 95 ASSERT_EQ(rc, -ENOENT); 96 } else { 97
> ASSERT_EQ(rc, 0); 98 } 99 } else { 100
> ASSERT_EQ((uint64_t)rc, len); /test/libradosstriper/striping.cc: 97
> in StriperTestRT::checkObjectFromRados(const
> std::basic_string<char, std::char_traits<char>,
> std::allocator<char>>&, ceph::buffer::list &, unsigned long,
> unsigned long, unsigned long, unsigned long, unsigned long)() 91
> (actual_size_if_sparse+stripe_unit-1)/stripe_unit <= stripe_nb) {
> 92 // sparse object case : the stripe does not exist,
> but the rados object may 93 uint64_t object_start =
> (object_in_set + objectset*stripe_per_objectset) * stripe_unit; 94
> if (actual_size_if_sparse <= object_start) { 95
> ASSERT_EQ(rc, -ENOENT); 96 } else {
>>>> CID 1249780: Resource leak (RESOURCE_LEAK) Variable "oid"
>>>> going out of scope leaks the storage it points to.
> 97 ASSERT_EQ(rc, 0); 98 } 99 }
> else { 100 ASSERT_EQ((uint64_t)rc, len); 101
> bufferlist original_data; 102
> original_data.substr_of(bl, stripe_nb*stripe_unit, len);
> /test/libradosstriper/striping.cc: 100 in
> StriperTestRT::checkObjectFromRados(const std::basic_string<char,
> std::char_traits<char>, std::allocator<char>>&, ceph::buffer::list
> &, unsigned long, unsigned long, unsigned long, unsigned long,
> unsigned long)() 94 if (actual_size_if_sparse <=
> object_start) { 95 ASSERT_EQ(rc, -ENOENT); 96
> } else { 97 ASSERT_EQ(rc, 0); 98 } 99
> } else {
>>>> CID 1249780: Resource leak (RESOURCE_LEAK) Variable "oid"
>>>> going out of scope leaks the storage it points to.
> 100 ASSERT_EQ((uint64_t)rc, len); 101
> bufferlist original_data; 102
> original_data.substr_of(bl, stripe_nb*stripe_unit, len); 103
> ASSERT_EQ(0, memcmp(original_data.c_str(), stripe_data.c_str(),
> len)); 104 } 105 free(oid);
> /test/libradosstriper/striping.cc: 103 in
> StriperTestRT::checkObjectFromRados(const std::basic_string<char,
> std::char_traits<char>, std::allocator<char>>&, ceph::buffer::list
> &, unsigned long, unsigned long, unsigned long, unsigned long,
> unsigned long)() 97 ASSERT_EQ(rc, 0); 98
> } 99 } else { 100 ASSERT_EQ((uint64_t)rc,
> len); 101 bufferlist original_data; 102
> original_data.substr_of(bl, stripe_nb*stripe_unit, len);
>>>> CID 1249780: Resource leak (RESOURCE_LEAK) Variable "oid"
>>>> going out of scope leaks the storage it points to.
> 103 ASSERT_EQ(0, memcmp(original_data.c_str(),
> stripe_data.c_str(), len)); 104 } 105
> free(oid); 106 } 107 // checking rados object
> sizes; we go object by object 108 uint64_t
> nb_full_object_sets = nb_stripes_in_object / stripe_per_objectset;
> /test/libradosstriper/striping.cc: 145 in
> StriperTestRT::checkObjectFromRados(const std::basic_string<char,
> std::char_traits<char>, std::allocator<char>>&, ceph::buffer::list
> &, unsigned long, unsigned long, unsigned long, unsigned long,
> unsigned long)() 139 free(oid); 140 } 141
> // check we do not have an extra object behind 142 uint64_t
> rados_size; 143 time_t mtime; 144 char* oid =
> getObjName(soid, nb_objects);
>>>> CID 1249780: Resource leak (RESOURCE_LEAK) Variable "oid"
>>>> going out of scope leaks the storage it points to.
> 145 ASSERT_EQ(-ENOENT, ioctx.stat(oid, &rados_size,
> &mtime)); 146 free(oid); 147 free(firstOid); 148
> } 149 }; 150
>
>
> ________________________________________________________________________________________________________
>
>
To view the defects in Coverity Scan visit,
http://scan.coverity.com/projects/25?tab=overview
>
> To unsubscribe from the email notification for new defects,
> http://scan5.coverity.com/cgi-bin/unsubscribe.py
>
>
>
> -- To unsubscribe from this list: send the line "unsubscribe
> ceph-devel" in the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
next prev parent reply other threads:[~2014-10-28 18:26 UTC|newest]
Thread overview: 124+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-10-28 13:16 New Defects reported by Coverity Scan for ceph scan-admin
2014-10-28 18:26 ` Danny Al-Gaaf [this message]
-- strict thread matches above, loose matches on Subject: below --
2022-08-20 12:22 scan-admin
2022-08-20 13:17 ` Jeff Layton
2022-08-22 3:54 ` Brad Hubbard
2022-08-23 12:52 ` Jeff Layton
2018-01-04 3:32 scan-admin
2017-12-28 1:57 scan-admin
2017-12-21 1:54 scan-admin
2017-12-21 3:34 ` Jos Collin
2017-12-21 4:03 ` Brad Hubbard
2017-12-14 6:49 scan-admin
2017-12-01 2:25 scan-admin
2017-11-23 0:19 scan-admin
2017-11-16 11:35 scan-admin
2017-11-09 11:36 scan-admin
2017-11-02 2:11 scan-admin
2017-10-27 0:31 scan-admin
2017-10-19 3:54 scan-admin
2017-10-12 5:54 scan-admin
2017-10-05 5:08 scan-admin
2017-09-28 5:09 scan-admin
2017-09-21 6:44 scan-admin
2017-09-14 7:19 scan-admin
2017-09-07 5:08 scan-admin
2017-08-31 6:39 scan-admin
2017-08-24 23:32 scan-admin
2017-08-17 3:29 scan-admin
2017-08-10 3:50 scan-admin
2017-08-03 4:57 scan-admin
2017-07-27 3:50 scan-admin
2017-07-28 18:42 ` Gregory Farnum
2017-07-28 22:22 ` Brad Hubbard
2017-07-20 4:08 scan-admin
2017-07-13 5:11 scan-admin
2017-07-06 5:03 scan-admin
2017-06-29 4:08 scan-admin
2017-06-22 4:27 scan-admin
2017-06-15 9:50 scan-admin
2017-06-11 23:46 scan-admin
2017-06-01 4:33 scan-admin
2017-05-25 6:22 scan-admin
2017-05-18 1:44 scan-admin
2017-05-11 5:32 scan-admin
2017-05-04 2:45 scan-admin
2017-04-27 2:22 scan-admin
2017-04-20 5:34 scan-admin
2017-04-13 6:25 scan-admin
2017-04-06 9:40 scan-admin
2017-03-31 1:25 scan-admin
2017-03-23 7:58 scan-admin
2017-03-16 7:37 scan-admin
2017-03-09 6:12 scan-admin
2017-03-02 7:44 scan-admin
2017-02-23 9:09 scan-admin
2017-02-17 2:29 scan-admin
[not found] ` <CAJE9aOMoxWjhq=g+25hfhMhxSCnHAOwAyNhXvkxS1wwBEd3j+A@mail.gmail.com>
2017-02-17 5:19 ` kefu chai
2017-02-05 10:08 scan-admin
2017-01-27 13:22 scan-admin
2017-01-17 3:01 scan-admin
2017-01-09 10:05 scan-admin
2016-12-30 8:33 scan-admin
2016-12-23 9:16 scan-admin
2016-12-16 8:54 scan-admin
2016-12-09 11:29 scan-admin
2016-12-02 11:08 scan-admin
2016-11-25 7:55 scan-admin
2016-03-19 17:58 scan-admin
2016-03-13 17:40 scan-admin
2016-03-12 18:04 scan-admin
2016-03-05 17:55 scan-admin
2016-03-07 20:59 ` Gregory Farnum
2016-02-27 18:07 scan-admin
2016-02-20 18:26 scan-admin
2016-02-18 20:32 scan-admin
2016-02-13 17:47 scan-admin
2016-02-11 17:57 scan-admin
2016-02-11 22:01 ` Gregory Farnum
2016-02-12 16:36 ` Adam C. Emerson
2016-02-04 20:39 scan-admin
2016-02-03 20:40 scan-admin
2015-05-02 14:37 scan-admin
2015-01-21 1:41 scan-admin
2015-01-16 14:39 scan-admin
2015-01-16 15:17 ` Gregory Farnum
2015-01-16 16:00 ` John Spray
2015-01-16 16:08 ` Sage Weil
[not found] <54b528bef1f63_1b74f3532c63410@scan.coverity.com.mail>
2015-01-13 14:34 ` Sage Weil
2015-01-13 14:16 scan-admin
2015-01-10 14:36 scan-admin
2015-01-10 15:48 ` Haomai Wang
2015-01-09 14:30 scan-admin
2015-01-09 15:26 ` Sage Weil
2015-01-09 15:32 ` Danny Al-Gaaf
2015-01-04 14:14 scan-admin
2014-12-27 14:13 scan-admin
2014-12-28 6:03 ` Sage Weil
2014-12-26 14:19 scan-admin
2014-12-23 14:37 scan-admin
2014-12-21 14:13 scan-admin
2014-12-18 14:19 scan-admin
2014-12-14 14:17 scan-admin
2014-12-07 20:36 scan-admin
2014-12-05 14:11 scan-admin
2014-12-02 14:09 scan-admin
2014-11-25 14:09 scan-admin
2014-11-23 14:08 scan-admin
2014-11-20 14:20 scan-admin
2014-11-14 14:21 scan-admin
2014-11-13 14:21 scan-admin
2014-11-11 20:40 scan-admin
2014-11-09 14:12 scan-admin
2014-10-30 13:19 scan-admin
2014-10-30 16:08 ` Sage Weil
2014-10-26 13:17 scan-admin
2014-10-24 17:55 scan-admin
2014-10-24 17:59 ` Sage Weil
2014-10-17 13:27 scan-admin
2014-10-09 13:23 scan-admin
2014-10-02 13:21 scan-admin
2014-09-25 13:18 scan-admin
2014-09-16 21:40 scan-admin
2014-08-16 21:31 scan-admin
2014-08-09 15:30 scan-admin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=544FDFBF.1070302@bisect.de \
--to=danny.al-gaaf@bisect.de \
--cc=ceph-devel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox