New Defects reported by Coverity Scan for ceph

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

Please find the latest report on new defect(s) introduced to ceph found with Coverity Scan.

4 new defect(s) introduced to ceph found with Coverity Scan.
7 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 4 of 4 defect(s)


** CID 1251575:  Dereference after null check  (FORWARD_NULL)
/test/librados/c_read_operations.cc: 106 in CReadOpsTest::compare_xattrs(const char *const *, const char *const *, const unsigned long *, unsigned long, void *)()

** CID 1251577:  Resource leak  (RESOURCE_LEAK)
/tools/cephfs/Dumper.cc: 116 in Dumper::dump(const char *)()

** CID 1251576:  Resource leak  (RESOURCE_LEAK)
/test/librbd/test_librbd.cc: 1994 in TestLibRBD_LargeCacheRead_Test::TestBody()()

** CID 717084:  Resource leak  (RESOURCE_LEAK)
/tools/cephfs/Dumper.cc: 192 in Dumper::undump(const char *)()
/tools/cephfs/Dumper.cc: 198 in Dumper::undump(const char *)()


________________________________________________________________________________________________________
*** CID 1251575:  Dereference after null check  (FORWARD_NULL)
/test/librados/c_read_operations.cc: 106 in CReadOpsTest::compare_xattrs(const char *const *, const char *const *, const unsigned long *, unsigned long, void *)()
100         size_t val_len = 0;
101         while (i < len) {
102           ASSERT_EQ(0, rados_getxattrs_next(iter, (const char**) &key,
103     					(const char**) &val, &val_len));
104           if (val_len == 0 && key == NULL && val == NULL)
105     	break;
>>>     CID 1251575:  Dereference after null check  (FORWARD_NULL)
>>>     Passing null pointer "key" to "basic_string", which dereferences it.
106           EXPECT_EQ(std::string(keys[i]), std::string(key));
107           EXPECT_EQ(0, memcmp(vals[i], val, val_len));
108           EXPECT_EQ(lens[i], val_len);
109           ++i;
110         }
111         ASSERT_EQ(i, len);

________________________________________________________________________________________________________
*** CID 1251577:  Resource leak  (RESOURCE_LEAK)
/tools/cephfs/Dumper.cc: 116 in Dumper::dump(const char *)()
110     	    (unsigned long long)journaler.last_committed.stream_format,
111     	    (unsigned long long)journaler.last_committed.trimmed_pos, (unsigned long long)journaler.last_committed.trimmed_pos,
112     	    4);
113         r = safe_write(fd, buf, sizeof(buf));
114         if (r) {
115           derr << "Error " << r << " (" << cpp_strerror(r) << ") writing journal file header" << dendl;
>>>     CID 1251577:  Resource leak  (RESOURCE_LEAK)
>>>     Handle variable "fd" going out of scope leaks the handle.
116           return r;
117         }
118     
119         // write the data
120         off64_t seeked = ::lseek64(fd, start, SEEK_SET);
121         if (seeked == (off64_t)-1) {

________________________________________________________________________________________________________
*** CID 1251576:  Resource leak  (RESOURCE_LEAK)
/test/librbd/test_librbd.cc: 1994 in TestLibRBD_LargeCacheRead_Test::TestBody()()
1988     
1989       uint64_t orig_cache_size = g_conf->rbd_cache_size;
1990       g_conf->set_val("rbd_cache_size", "16777216");
1991       BOOST_SCOPE_EXIT( (orig_cache_size) ) {
1992         g_conf->set_val("rbd_cache_size", stringify(orig_cache_size).c_str());
1993       } BOOST_SCOPE_EXIT_END;
>>>     CID 1251576:  Resource leak  (RESOURCE_LEAK)
>>>     Variable "ioctx" going out of scope leaks the storage it points to.
1994       ASSERT_EQ(16777216, g_conf->rbd_cache_size);
1995     
1996       rbd_image_t image;
1997       int order = 0;
1998       const char *name = "testimg";
1999       uint64_t size = g_conf->rbd_cache_size + 1;

________________________________________________________________________________________________________
*** CID 717084:  Resource leak  (RESOURCE_LEAK)
/tools/cephfs/Dumper.cc: 192 in Dumper::undump(const char *)()
186         trimmed_pos = start - (start % g_default_file_layout.fl_object_size);
187       }
188     
189       if (trimmed_pos > start) {
190         derr << std::hex << "Invalid header (trimmed 0x" << trimmed_pos
191           << " > expire 0x" << start << std::dec << dendl;
>>>     CID 717084:  Resource leak  (RESOURCE_LEAK)
>>>     Handle variable "fd" going out of scope leaks the handle.
192         return -EINVAL;
193       }
194     
195       if (start > write_pos) {
196         derr << std::hex << "Invalid header (expire 0x" << start
197           << " > write 0x" << write_pos << std::dec << dendl;
/tools/cephfs/Dumper.cc: 198 in Dumper::undump(const char *)()
192         return -EINVAL;
193       }
194     
195       if (start > write_pos) {
196         derr << std::hex << "Invalid header (expire 0x" << start
197           << " > write 0x" << write_pos << std::dec << dendl;
>>>     CID 717084:  Resource leak  (RESOURCE_LEAK)
>>>     Handle variable "fd" going out of scope leaks the handle.
198         return -EINVAL;
199       }
200     
201       cout << "start " << start <<
202         " len " << len <<
203         " write_pos " << write_pos <<


________________________________________________________________________________________________________
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@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [CEPH Users]     [Ceph Large]     [Information on CEPH]     [Linux BTRFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux