Skip to content

Commit

Permalink
iomap: move iomap_read_inline_data around
Browse files Browse the repository at this point in the history
iomap_read_inline_data ended up being placed in the middle of the bio
based read I/O completion handling, which tends to confuse the heck out
of me whenever I follow the code.  Move it to a more suitable place.

Signed-off-by: Christoph Hellwig <[email protected]>
Reviewed-by: Dave Chinner <[email protected]>
Reviewed-by: Darrick J. Wong <[email protected]>
Signed-off-by: Darrick J. Wong <[email protected]>
  • Loading branch information
Christoph Hellwig authored and djwong committed May 2, 2019
1 parent df0db3e commit cbbf4c0
Showing 1 changed file with 20 additions and 20 deletions.
40 changes: 20 additions & 20 deletions fs/iomap.c
Original file line number Diff line number Diff line change
Expand Up @@ -240,26 +240,6 @@ iomap_read_page_end_io(struct bio_vec *bvec, int error)
iomap_read_finish(iop, page);
}

static void
iomap_read_inline_data(struct inode *inode, struct page *page,
struct iomap *iomap)
{
size_t size = i_size_read(inode);
void *addr;

if (PageUptodate(page))
return;

BUG_ON(page->index);
BUG_ON(size > PAGE_SIZE - offset_in_page(iomap->inline_data));

addr = kmap_atomic(page);
memcpy(addr, iomap->inline_data, size);
memset(addr + size, 0, PAGE_SIZE - size);
kunmap_atomic(addr);
SetPageUptodate(page);
}

static void
iomap_read_end_io(struct bio *bio)
{
Expand All @@ -281,6 +261,26 @@ struct iomap_readpage_ctx {
struct list_head *pages;
};

static void
iomap_read_inline_data(struct inode *inode, struct page *page,
struct iomap *iomap)
{
size_t size = i_size_read(inode);
void *addr;

if (PageUptodate(page))
return;

BUG_ON(page->index);
BUG_ON(size > PAGE_SIZE - offset_in_page(iomap->inline_data));

addr = kmap_atomic(page);
memcpy(addr, iomap->inline_data, size);
memset(addr + size, 0, PAGE_SIZE - size);
kunmap_atomic(addr);
SetPageUptodate(page);
}

static loff_t
iomap_readpage_actor(struct inode *inode, loff_t pos, loff_t length, void *data,
struct iomap *iomap)
Expand Down

0 comments on commit cbbf4c0

Please sign in to comment.