dm: add missing empty lines
Signed-off-by: Heinz Mauelshagen <heinzm@redhat.com> Signed-off-by: Mike Snitzer <snitzer@kernel.org>
This commit is contained in:
committed by
Mike Snitzer
parent
02f10ba178
commit
0ef0b4717a
@@ -83,16 +83,13 @@ struct wc_entry {
|
||||
struct rb_node rb_node;
|
||||
struct list_head lru;
|
||||
unsigned short wc_list_contiguous;
|
||||
bool write_in_progress
|
||||
#if BITS_PER_LONG == 64
|
||||
: 1
|
||||
bool write_in_progress : 1;
|
||||
unsigned long index : 47;
|
||||
#else
|
||||
bool write_in_progress;
|
||||
unsigned long index;
|
||||
#endif
|
||||
;
|
||||
unsigned long index
|
||||
#if BITS_PER_LONG == 64
|
||||
: 47
|
||||
#endif
|
||||
;
|
||||
unsigned long age;
|
||||
#ifdef DM_WRITECACHE_HANDLE_HARDWARE_ERRORS
|
||||
uint64_t original_sector;
|
||||
@@ -300,6 +297,7 @@ static int persistent_memory_claim(struct dm_writecache *wc)
|
||||
}
|
||||
if (da != p) {
|
||||
long i;
|
||||
|
||||
wc->memory_map = NULL;
|
||||
pages = kvmalloc_array(p, sizeof(struct page *), GFP_KERNEL);
|
||||
if (!pages) {
|
||||
@@ -309,6 +307,7 @@ static int persistent_memory_claim(struct dm_writecache *wc)
|
||||
i = 0;
|
||||
do {
|
||||
long daa;
|
||||
|
||||
daa = dax_direct_access(wc->ssd_dev->dax_dev, offset + i,
|
||||
p - i, DAX_ACCESS, NULL, &pfn);
|
||||
if (daa <= 0) {
|
||||
@@ -507,6 +506,7 @@ static void ssd_commit_flushed(struct dm_writecache *wc, bool wait_for_ios)
|
||||
|
||||
while (1) {
|
||||
unsigned int j;
|
||||
|
||||
i = find_next_bit(wc->dirty_bitmap, bitmap_bits, i);
|
||||
if (unlikely(i == bitmap_bits))
|
||||
break;
|
||||
@@ -637,6 +637,7 @@ static struct wc_entry *writecache_find_entry(struct dm_writecache *wc,
|
||||
|
||||
while (1) {
|
||||
struct wc_entry *e2;
|
||||
|
||||
if (flags & WFE_LOWEST_SEQ)
|
||||
node = rb_prev(&e->rb_node);
|
||||
else
|
||||
@@ -679,6 +680,7 @@ static void writecache_add_to_freelist(struct dm_writecache *wc, struct wc_entry
|
||||
{
|
||||
if (WC_MODE_SORT_FREELIST(wc)) {
|
||||
struct rb_node **node = &wc->freetree.rb_node, *parent = NULL;
|
||||
|
||||
if (unlikely(!*node))
|
||||
wc->current_free = e;
|
||||
while (*node) {
|
||||
@@ -718,6 +720,7 @@ static struct wc_entry *writecache_pop_from_freelist(struct dm_writecache *wc, s
|
||||
|
||||
if (WC_MODE_SORT_FREELIST(wc)) {
|
||||
struct rb_node *next;
|
||||
|
||||
if (unlikely(!wc->current_free))
|
||||
return NULL;
|
||||
e = wc->current_free;
|
||||
@@ -864,6 +867,7 @@ static void writecache_flush_work(struct work_struct *work)
|
||||
static void writecache_autocommit_timer(struct timer_list *t)
|
||||
{
|
||||
struct dm_writecache *wc = from_timer(wc, t, autocommit_timer);
|
||||
|
||||
if (!writecache_has_error(wc))
|
||||
queue_work(wc->writeback_wq, &wc->flush_work);
|
||||
}
|
||||
@@ -963,6 +967,7 @@ static int writecache_alloc_entries(struct dm_writecache *wc)
|
||||
return -ENOMEM;
|
||||
for (b = 0; b < wc->n_blocks; b++) {
|
||||
struct wc_entry *e = &wc->entries[b];
|
||||
|
||||
e->index = b;
|
||||
e->write_in_progress = false;
|
||||
cond_resched();
|
||||
@@ -1006,6 +1011,7 @@ static void writecache_resume(struct dm_target *ti)
|
||||
r = writecache_read_metadata(wc, wc->metadata_sectors);
|
||||
if (r) {
|
||||
size_t sb_entries_offset;
|
||||
|
||||
writecache_error(wc, r, "unable to read metadata: %d", r);
|
||||
sb_entries_offset = offsetof(struct wc_memory_superblock, entries);
|
||||
memset((char *)wc->memory_map + sb_entries_offset, -1,
|
||||
@@ -1035,6 +1041,7 @@ static void writecache_resume(struct dm_target *ti)
|
||||
for (b = 0; b < wc->n_blocks; b++) {
|
||||
struct wc_entry *e = &wc->entries[b];
|
||||
struct wc_memory_entry wme;
|
||||
|
||||
if (writecache_has_error(wc)) {
|
||||
e->original_sector = -1;
|
||||
e->seq_count = -1;
|
||||
@@ -1056,6 +1063,7 @@ static void writecache_resume(struct dm_target *ti)
|
||||
#endif
|
||||
for (b = 0; b < wc->n_blocks; b++) {
|
||||
struct wc_entry *e = &wc->entries[b];
|
||||
|
||||
if (!writecache_entry_is_committed(wc, e)) {
|
||||
if (read_seq_count(wc, e) != -1) {
|
||||
erase_this:
|
||||
@@ -1245,6 +1253,7 @@ static void bio_copy_block(struct dm_writecache *wc, struct bio *bio, void *data
|
||||
|
||||
do {
|
||||
struct bio_vec bv = bio_iter_iovec(bio, bio->bi_iter);
|
||||
|
||||
buf = bvec_kmap_local(&bv);
|
||||
size = bv.bv_len;
|
||||
if (unlikely(size > remaining_size))
|
||||
@@ -1252,6 +1261,7 @@ static void bio_copy_block(struct dm_writecache *wc, struct bio *bio, void *data
|
||||
|
||||
if (rw == READ) {
|
||||
int r;
|
||||
|
||||
r = copy_mc_to_kernel(buf, data, size);
|
||||
flush_dcache_page(bio_page(bio));
|
||||
if (unlikely(r)) {
|
||||
@@ -1379,6 +1389,7 @@ static void writecache_bio_copy_ssd(struct dm_writecache *wc, struct bio *bio,
|
||||
while (bio_size < bio->bi_iter.bi_size) {
|
||||
if (!search_used) {
|
||||
struct wc_entry *f = writecache_pop_from_freelist(wc, current_cache_sec);
|
||||
|
||||
if (!f)
|
||||
break;
|
||||
write_original_sector_seq_count(wc, f, bio->bi_iter.bi_sector +
|
||||
@@ -1388,6 +1399,7 @@ static void writecache_bio_copy_ssd(struct dm_writecache *wc, struct bio *bio,
|
||||
} else {
|
||||
struct wc_entry *f;
|
||||
struct rb_node *next = rb_next(&e->rb_node);
|
||||
|
||||
if (!next)
|
||||
break;
|
||||
f = container_of(next, struct wc_entry, rb_node);
|
||||
@@ -1428,6 +1440,7 @@ static enum wc_map_op writecache_map_write(struct dm_writecache *wc, struct bio
|
||||
do {
|
||||
bool found_entry = false;
|
||||
bool search_used = false;
|
||||
|
||||
if (writecache_has_error(wc)) {
|
||||
wc->stats.writes += bio->bi_iter.bi_size >> wc->block_size_bits;
|
||||
return WC_MAP_ERROR;
|
||||
@@ -1606,6 +1619,7 @@ static int writecache_end_io(struct dm_target *ti, struct bio *bio, blk_status_t
|
||||
|
||||
if (bio->bi_private == (void *)1) {
|
||||
int dir = bio_data_dir(bio);
|
||||
|
||||
if (atomic_dec_and_test(&wc->bio_in_progress[dir]))
|
||||
if (unlikely(waitqueue_active(&wc->bio_in_progress_wait[dir])))
|
||||
wake_up(&wc->bio_in_progress_wait[dir]);
|
||||
@@ -1944,6 +1958,7 @@ static void writecache_writeback(struct work_struct *work)
|
||||
if (likely(wc->pause != 0)) {
|
||||
while (1) {
|
||||
unsigned long idle;
|
||||
|
||||
if (unlikely(wc->cleaner) || unlikely(wc->writeback_all) ||
|
||||
unlikely(dm_suspended(wc->ti)))
|
||||
break;
|
||||
@@ -2389,6 +2404,7 @@ static int writecache_ctr(struct dm_target *ti, unsigned int argc, char **argv)
|
||||
string = dm_shift_arg(&as), opt_params--;
|
||||
if (!strcasecmp(string, "start_sector") && opt_params >= 1) {
|
||||
unsigned long long start_sector;
|
||||
|
||||
string = dm_shift_arg(&as), opt_params--;
|
||||
if (sscanf(string, "%llu%c", &start_sector, &dummy) != 1)
|
||||
goto invalid_optional;
|
||||
@@ -2425,6 +2441,7 @@ static int writecache_ctr(struct dm_target *ti, unsigned int argc, char **argv)
|
||||
wc->autocommit_blocks_set = true;
|
||||
} else if (!strcasecmp(string, "autocommit_time") && opt_params >= 1) {
|
||||
unsigned int autocommit_msecs;
|
||||
|
||||
string = dm_shift_arg(&as), opt_params--;
|
||||
if (sscanf(string, "%u%c", &autocommit_msecs, &dummy) != 1)
|
||||
goto invalid_optional;
|
||||
@@ -2435,6 +2452,7 @@ static int writecache_ctr(struct dm_target *ti, unsigned int argc, char **argv)
|
||||
wc->autocommit_time_set = true;
|
||||
} else if (!strcasecmp(string, "max_age") && opt_params >= 1) {
|
||||
unsigned int max_age_msecs;
|
||||
|
||||
string = dm_shift_arg(&as), opt_params--;
|
||||
if (sscanf(string, "%u%c", &max_age_msecs, &dummy) != 1)
|
||||
goto invalid_optional;
|
||||
@@ -2462,6 +2480,7 @@ static int writecache_ctr(struct dm_target *ti, unsigned int argc, char **argv)
|
||||
wc->metadata_only = true;
|
||||
} else if (!strcasecmp(string, "pause_writeback") && opt_params >= 1) {
|
||||
unsigned int pause_msecs;
|
||||
|
||||
if (WC_MODE_PMEM(wc))
|
||||
goto invalid_optional;
|
||||
string = dm_shift_arg(&as), opt_params--;
|
||||
|
||||
Reference in New Issue
Block a user