@@ -69,14 +69,15 @@ static sector_t hfs_bmap(struct address_space *mapping, sector_t block)
6969 return generic_block_bmap (mapping , block , hfs_get_block );
7070}
7171
72- static int hfs_releasepage (struct page * page , gfp_t mask )
72+ static bool hfs_release_folio (struct folio * folio , gfp_t mask )
7373{
74- struct inode * inode = page -> mapping -> host ;
74+ struct inode * inode = folio -> mapping -> host ;
7575 struct super_block * sb = inode -> i_sb ;
7676 struct hfs_btree * tree ;
7777 struct hfs_bnode * node ;
7878 u32 nidx ;
79- int i , res = 1 ;
79+ int i ;
80+ bool res = true;
8081
8182 switch (inode -> i_ino ) {
8283 case HFS_EXT_CNID :
@@ -87,43 +88,43 @@ static int hfs_releasepage(struct page *page, gfp_t mask)
8788 break ;
8889 default :
8990 BUG ();
90- return 0 ;
91+ return false ;
9192 }
9293
9394 if (!tree )
94- return 0 ;
95+ return false ;
9596
9697 if (tree -> node_size >= PAGE_SIZE ) {
97- nidx = page -> index >> (tree -> node_size_shift - PAGE_SHIFT );
98+ nidx = folio -> index >> (tree -> node_size_shift - PAGE_SHIFT );
9899 spin_lock (& tree -> hash_lock );
99100 node = hfs_bnode_findhash (tree , nidx );
100101 if (!node )
101102 ;
102103 else if (atomic_read (& node -> refcnt ))
103- res = 0 ;
104+ res = false ;
104105 if (res && node ) {
105106 hfs_bnode_unhash (node );
106107 hfs_bnode_free (node );
107108 }
108109 spin_unlock (& tree -> hash_lock );
109110 } else {
110- nidx = page -> index << (PAGE_SHIFT - tree -> node_size_shift );
111+ nidx = folio -> index << (PAGE_SHIFT - tree -> node_size_shift );
111112 i = 1 << (PAGE_SHIFT - tree -> node_size_shift );
112113 spin_lock (& tree -> hash_lock );
113114 do {
114115 node = hfs_bnode_findhash (tree , nidx ++ );
115116 if (!node )
116117 continue ;
117118 if (atomic_read (& node -> refcnt )) {
118- res = 0 ;
119+ res = false ;
119120 break ;
120121 }
121122 hfs_bnode_unhash (node );
122123 hfs_bnode_free (node );
123124 } while (-- i && nidx < tree -> node_count );
124125 spin_unlock (& tree -> hash_lock );
125126 }
126- return res ? try_to_free_buffers (page ) : 0 ;
127+ return res ? try_to_free_buffers (& folio -> page ) : false ;
127128}
128129
129130static ssize_t hfs_direct_IO (struct kiocb * iocb , struct iov_iter * iter )
@@ -165,7 +166,7 @@ const struct address_space_operations hfs_btree_aops = {
165166 .write_begin = hfs_write_begin ,
166167 .write_end = generic_write_end ,
167168 .bmap = hfs_bmap ,
168- .releasepage = hfs_releasepage ,
169+ .release_folio = hfs_release_folio ,
169170};
170171
171172const struct address_space_operations hfs_aops = {
0 commit comments