Compare commits
No commits in common. "f18a74932420a02b1138eecfdec3721085f4714f" and "99adbb9483633d8aa7a73f5aea574cdb3c4314b1" have entirely different histories.
f18a749324
...
99adbb9483
|
@ -337,7 +337,7 @@ std::vector<osd_chain_read_t> osd_t::collect_chained_read_requests(osd_op_t *cur
|
||||||
{
|
{
|
||||||
uint8_t *part_bitmap = ((uint8_t*)op_data->snapshot_bitmaps) + chain_pos*stripe_count*clean_entry_bitmap_size;
|
uint8_t *part_bitmap = ((uint8_t*)op_data->snapshot_bitmaps) + chain_pos*stripe_count*clean_entry_bitmap_size;
|
||||||
int start = !cur_op->req.rw.len ? 0 : (cur_op->req.rw.offset - op_data->oid.stripe)/bs_bitmap_granularity;
|
int start = !cur_op->req.rw.len ? 0 : (cur_op->req.rw.offset - op_data->oid.stripe)/bs_bitmap_granularity;
|
||||||
int end = !cur_op->req.rw.len ? op_data->pg_data_size*clean_entry_bitmap_size*8 : start + cur_op->req.rw.len/bs_bitmap_granularity;
|
int end = !cur_op->req.rw.len ? op_data->pg_data_size*clean_entry_bitmap_size : start + cur_op->req.rw.len/bs_bitmap_granularity;
|
||||||
// Skip unneeded part in the beginning
|
// Skip unneeded part in the beginning
|
||||||
while (start < end && (
|
while (start < end && (
|
||||||
((global_bitmap[start>>3] >> (start&7)) & 1) ||
|
((global_bitmap[start>>3] >> (start&7)) & 1) ||
|
||||||
|
|
|
@ -489,7 +489,7 @@ std::string format_datetime(uint64_t unixtime)
|
||||||
bool is_zero(void *buf, size_t size)
|
bool is_zero(void *buf, size_t size)
|
||||||
{
|
{
|
||||||
size_t i = 0;
|
size_t i = 0;
|
||||||
while (i+8 <= size)
|
while (i <= size-8)
|
||||||
{
|
{
|
||||||
if (*(uint64_t*)((uint8_t*)buf + i))
|
if (*(uint64_t*)((uint8_t*)buf + i))
|
||||||
return false;
|
return false;
|
||||||
|
|
Loading…
Reference in New Issue