Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
aops.h
Go to the documentation of this file.
1 
24 #ifndef _LINUX_NTFS_AOPS_H
25 #define _LINUX_NTFS_AOPS_H
26 
27 #include <linux/mm.h>
28 #include <linux/highmem.h>
29 #include <linux/pagemap.h>
30 #include <linux/fs.h>
31 
32 #include "inode.h"
33 
40 static inline void ntfs_unmap_page(struct page *page)
41 {
42  kunmap(page);
43  page_cache_release(page);
44 }
45 
86 static inline struct page *ntfs_map_page(struct address_space *mapping,
87  unsigned long index)
88 {
89  struct page *page = read_mapping_page(mapping, index, NULL);
90 
91  if (!IS_ERR(page)) {
92  kmap(page);
93  if (!PageError(page))
94  return page;
95  ntfs_unmap_page(page);
96  return ERR_PTR(-EIO);
97  }
98  return page;
99 }
100 
101 #ifdef NTFS_RW
102 
103 extern void mark_ntfs_record_dirty(struct page *page, const unsigned int ofs);
104 
105 #endif /* NTFS_RW */
106 
107 #endif /* _LINUX_NTFS_AOPS_H */