All of lore.kernel.org
 help / color / mirror / Atom feed
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
> 


  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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.