mirror of https://gitee.com/openkylin/linux.git
cachefiles: drop direct usage of ->bmap method.
Replace the direct usage of ->bmap method by a bmap() call. Reviewed-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Carlos Maiolino <cmaiolino@redhat.com> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
parent
30460e1ea3
commit
10d83e11a5
|
@ -396,7 +396,7 @@ int cachefiles_read_or_alloc_page(struct fscache_retrieval *op,
|
|||
struct cachefiles_object *object;
|
||||
struct cachefiles_cache *cache;
|
||||
struct inode *inode;
|
||||
sector_t block0, block;
|
||||
sector_t block;
|
||||
unsigned shift;
|
||||
int ret;
|
||||
|
||||
|
@ -412,7 +412,6 @@ int cachefiles_read_or_alloc_page(struct fscache_retrieval *op,
|
|||
|
||||
inode = d_backing_inode(object->backer);
|
||||
ASSERT(S_ISREG(inode->i_mode));
|
||||
ASSERT(inode->i_mapping->a_ops->bmap);
|
||||
ASSERT(inode->i_mapping->a_ops->readpages);
|
||||
|
||||
/* calculate the shift required to use bmap */
|
||||
|
@ -428,12 +427,14 @@ int cachefiles_read_or_alloc_page(struct fscache_retrieval *op,
|
|||
* enough for this as it doesn't indicate errors, but it's all we've
|
||||
* got for the moment
|
||||
*/
|
||||
block0 = page->index;
|
||||
block0 <<= shift;
|
||||
block = page->index;
|
||||
block <<= shift;
|
||||
|
||||
ret = bmap(inode, &block);
|
||||
ASSERT(ret < 0);
|
||||
|
||||
block = inode->i_mapping->a_ops->bmap(inode->i_mapping, block0);
|
||||
_debug("%llx -> %llx",
|
||||
(unsigned long long) block0,
|
||||
(unsigned long long) (page->index << shift),
|
||||
(unsigned long long) block);
|
||||
|
||||
if (block) {
|
||||
|
@ -711,7 +712,6 @@ int cachefiles_read_or_alloc_pages(struct fscache_retrieval *op,
|
|||
|
||||
inode = d_backing_inode(object->backer);
|
||||
ASSERT(S_ISREG(inode->i_mode));
|
||||
ASSERT(inode->i_mapping->a_ops->bmap);
|
||||
ASSERT(inode->i_mapping->a_ops->readpages);
|
||||
|
||||
/* calculate the shift required to use bmap */
|
||||
|
@ -728,7 +728,7 @@ int cachefiles_read_or_alloc_pages(struct fscache_retrieval *op,
|
|||
|
||||
ret = space ? -ENODATA : -ENOBUFS;
|
||||
list_for_each_entry_safe(page, _n, pages, lru) {
|
||||
sector_t block0, block;
|
||||
sector_t block;
|
||||
|
||||
/* we assume the absence or presence of the first block is a
|
||||
* good enough indication for the page as a whole
|
||||
|
@ -736,13 +736,14 @@ int cachefiles_read_or_alloc_pages(struct fscache_retrieval *op,
|
|||
* good enough for this as it doesn't indicate errors, but
|
||||
* it's all we've got for the moment
|
||||
*/
|
||||
block0 = page->index;
|
||||
block0 <<= shift;
|
||||
block = page->index;
|
||||
block <<= shift;
|
||||
|
||||
ret = bmap(inode, &block);
|
||||
ASSERT(!ret);
|
||||
|
||||
block = inode->i_mapping->a_ops->bmap(inode->i_mapping,
|
||||
block0);
|
||||
_debug("%llx -> %llx",
|
||||
(unsigned long long) block0,
|
||||
(unsigned long long) (page->index << shift),
|
||||
(unsigned long long) block);
|
||||
|
||||
if (block) {
|
||||
|
|
Loading…
Reference in New Issue