Skip to content

Commit

Permalink
Merge pull request #12148 from tchaikov/wip-scan-build-fixes
Browse files Browse the repository at this point in the history
scan build fixes

Reviewed-by: Sage Weil <sage@redhat.com>
  • Loading branch information
liewegas committed Nov 28, 2016
2 parents ccf6da4 + c3748fa commit 03e8701
Show file tree
Hide file tree
Showing 7 changed files with 24 additions and 12 deletions.
2 changes: 1 addition & 1 deletion src/common/blkdev.cc
Expand Up @@ -197,7 +197,7 @@ int get_device_by_uuid(uuid_d dev_uuid, const char* label, char* partition,
if (blkid_get_cache(&cache, NULL) >= 0)
dev = blkid_find_dev_with_tag(cache, label, (const char*)uuid_str);
else
rc = -EINVAL;
return -EINVAL;

if (dev) {
temp_partition_ptr = blkid_dev_devname(dev);
Expand Down
2 changes: 1 addition & 1 deletion src/common/hobject.cc
Expand Up @@ -45,7 +45,7 @@ set<string> hobject_t::get_prefixes(
for (set<uint32_t>::iterator j = from.begin();
j != from.end();
++j) {
to.insert(*j | (1 << i));
to.insert(*j | (1U << i));
to.insert(*j);
}
to.swap(from);
Expand Down
2 changes: 1 addition & 1 deletion src/global/signal_handler.cc
Expand Up @@ -281,7 +281,7 @@ struct SignalHandler : public Thread {
char v;

// consume byte from signal socket, if any.
r = read(pipefd[0], &v, 1);
TEMP_FAILURE_RETRY(read(pipefd[0], &v, 1));

lock.Lock();
for (unsigned signum=0; signum<32; signum++) {
Expand Down
5 changes: 3 additions & 2 deletions src/os/filestore/FileStore.cc
Expand Up @@ -3158,7 +3158,6 @@ int FileStore::_do_fiemap(int fd, uint64_t offset, size_t len,
{
uint64_t i;
struct fiemap_extent *extent = NULL;
struct fiemap_extent *last = NULL;
struct fiemap *fiemap = NULL;
int r = 0;

Expand All @@ -3182,6 +3181,7 @@ int FileStore::_do_fiemap(int fd, uint64_t offset, size_t len,

i = 0;

struct fiemap_extent *last = nullptr;
while (i < fiemap->fm_mapped_extents) {
struct fiemap_extent *next = extent + 1;

Expand All @@ -3204,8 +3204,9 @@ int FileStore::_do_fiemap(int fd, uint64_t offset, size_t len,
i++;
last = extent++;
}
const bool is_last = last->fe_flags & FIEMAP_EXTENT_LAST;
free(fiemap);
if (!(last->fe_flags & FIEMAP_EXTENT_LAST)) {
if (!is_last) {
uint64_t xoffset = last->fe_logical + last->fe_length - offset;
offset = last->fe_logical + last->fe_length;
len -= xoffset;
Expand Down
12 changes: 10 additions & 2 deletions src/osd/ReplicatedPG.cc
Expand Up @@ -4566,7 +4566,11 @@ int ReplicatedPG::do_osd_ops(OpContext *ctx, vector<OSDOp>& ops)
bufferlist t;
uint64_t len = miter->first - last;
r = pgbackend->objects_read_sync(soid, last, len, op.flags, &t);
if (!t.is_zero()) {
if (r < 0) {
osd->clog->error() << coll << " " << soid
<< " sparse-read failed to read: "
<< r << "\n";
} else if (!t.is_zero()) {
osd->clog->error() << coll << " " << soid << " sparse-read found data in hole "
<< last << "~" << len << "\n";
}
Expand Down Expand Up @@ -4597,7 +4601,11 @@ int ReplicatedPG::do_osd_ops(OpContext *ctx, vector<OSDOp>& ops)
bufferlist t;
uint64_t len = end - last;
r = pgbackend->objects_read_sync(soid, last, len, op.flags, &t);
if (!t.is_zero()) {
if (r < 0) {
osd->clog->error() << coll << " " << soid
<< " sparse-read failed to read: "
<< r << "\n";
} else if (!t.is_zero()) {
osd->clog->error() << coll << " " << soid << " sparse-read found data in hole "
<< last << "~" << len << "\n";
}
Expand Down
8 changes: 4 additions & 4 deletions src/osd/osd_types.cc
Expand Up @@ -476,10 +476,10 @@ bool pg_t::is_split(unsigned old_pg_num, unsigned new_pg_num, set<pg_t> *childre

bool split = false;
if (true) {
int old_bits = cbits(old_pg_num);
int old_mask = (1 << old_bits) - 1;
for (int n = 1; ; n++) {
int next_bit = (n << (old_bits-1));
unsigned old_bits = cbits(old_pg_num);
unsigned old_mask = (1 << old_bits) - 1;
for (unsigned n = 1; ; n++) {
unsigned next_bit = (n << (old_bits-1));
unsigned s = next_bit | m_seed;

if (s < old_pg_num || s == m_seed)
Expand Down
5 changes: 4 additions & 1 deletion src/tools/radosacl.cc
Expand Up @@ -155,7 +155,8 @@ int main(int argc, const char **argv)
cout << "id=" << id.id << std::endl;

r = io_ctx.exec(oid, "acl", "get", bl, bl2);
cout << "exec returned " << r << " len=" << bl2.length() << std::endl;
cout << "exec(acl get) returned " << r
<< " len=" << bl2.length() << std::endl;
ObjectACLs oa;
if (r >= 0) {
bufferlist::iterator iter = bl2.begin();
Expand All @@ -166,6 +167,8 @@ int main(int argc, const char **argv)
bl.clear();
oa.encode(bl);
r = io_ctx.exec(oid, "acl", "set", bl, bl2);
cout << "exec(acl set) returned " << r
<< " len=" << bl2.length() << std::endl;

const unsigned char *md5 = (const unsigned char *)bl2.c_str();
char md5_str[bl2.length()*2 + 1];
Expand Down

0 comments on commit 03e8701

Please sign in to comment.