@@ -54,6 +54,7 @@ extern int __cifs_readpages_from_fscache(struct inode *,
struct address_space *,
struct list_head *,
unsigned *);
+extern void __cifs_fscache_readpage_cancel(struct inode *, struct page *);
extern void __cifs_fscache_readpages_cancel(struct inode *, struct list_head *);
extern void __cifs_readpage_to_fscache(struct inode *, struct page *);
@@ -92,6 +93,13 @@ static inline void cifs_readpage_to_fscache(struct inode *inode,
__cifs_readpage_to_fscache(inode, page);
}
+static inline void cifs_fscache_readpage_cancel(struct inode *inode,
+ struct page *page)
+{
+ if (CIFS_I(inode)->fscache)
+ return __cifs_fscache_readpage_cancel(inode, page);
+}
+
static inline void cifs_fscache_readpages_cancel(struct inode *inode,
struct list_head *pages)
{
@@ -139,6 +147,11 @@ static inline int cifs_readpages_from_fscache(struct inode *inode,
static inline void cifs_readpage_to_fscache(struct inode *inode,
struct page *page) {}
+static inline void cifs_fscache_readpage_cancel(struct inode *inode,
+ struct page *page)
+{
+}
+
static inline void cifs_fscache_readpages_cancel(struct inode *inode,
struct list_head *pages)
{
Introduce a routine for uncaching single no-data page, typically in readpage(). Signed-off-by: Li Wang <liwang@ubuntukylin.com> --- fs/cifs/fscache.h | 13 +++++++++++++ 1 file changed, 13 insertions(+)