hostfs: Make hostfs_readpage more readable
...to make life easier for future readers of that code. Signed-off-by: Richard Weinberger <richard@nod.at>
This commit is contained in:
parent
2ad2dca6fd
commit
41761ddfae
1 changed files with 8 additions and 6 deletions
|
@ -439,25 +439,27 @@ static int hostfs_readpage(struct file *file, struct page *page)
|
||||||
{
|
{
|
||||||
char *buffer;
|
char *buffer;
|
||||||
long long start;
|
long long start;
|
||||||
int err = 0;
|
int bytes_read, ret;
|
||||||
|
|
||||||
start = (long long) page->index << PAGE_CACHE_SHIFT;
|
start = (long long) page->index << PAGE_CACHE_SHIFT;
|
||||||
buffer = kmap(page);
|
buffer = kmap(page);
|
||||||
err = read_file(FILE_HOSTFS_I(file)->fd, &start, buffer,
|
bytes_read = read_file(FILE_HOSTFS_I(file)->fd, &start, buffer,
|
||||||
PAGE_CACHE_SIZE);
|
PAGE_CACHE_SIZE);
|
||||||
if (err < 0)
|
if (bytes_read < 0) {
|
||||||
|
ret = bytes_read;
|
||||||
goto out;
|
goto out;
|
||||||
|
}
|
||||||
|
|
||||||
memset(&buffer[err], 0, PAGE_CACHE_SIZE - err);
|
memset(buffer + bytes_read, 0, PAGE_CACHE_SIZE - bytes_read);
|
||||||
|
|
||||||
flush_dcache_page(page);
|
flush_dcache_page(page);
|
||||||
SetPageUptodate(page);
|
SetPageUptodate(page);
|
||||||
if (PageError(page)) ClearPageError(page);
|
if (PageError(page)) ClearPageError(page);
|
||||||
err = 0;
|
ret = 0;
|
||||||
out:
|
out:
|
||||||
kunmap(page);
|
kunmap(page);
|
||||||
unlock_page(page);
|
unlock_page(page);
|
||||||
return err;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int hostfs_write_begin(struct file *file, struct address_space *mapping,
|
static int hostfs_write_begin(struct file *file, struct address_space *mapping,
|
||||||
|
|
Loading…
Add table
Reference in a new issue