| @@ -6184,13 +6184,14 @@ static int ext4_bh_unmapped(handle_t *handle, struct buffer_head *bh) · 6183 unmodified lines |
| 6184 | return !buffer_mapped(bh); | 6184 | return !buffer_mapped(bh); |
| 6185 | } | 6185 | } |
| 6186 | | 6186 | |
| 6187 | int ext4_page_mkwrite(struct vm_fault *vmf) | 6187 | vm_fault_t ext4_page_mkwrite(struct vm_fault *vmf) |
| 6188 | { | 6188 | { |
| 6189 | struct vm_area_struct *vma = vmf->vma; | 6189 | struct vm_area_struct *vma = vmf->vma; |
| 6190 | struct page *page = vmf->page; | 6190 | struct page *page = vmf->page; |
| 6191 | loff_t size; | 6191 | loff_t size; |
| 6192 | unsigned long len; | 6192 | unsigned long len; |
| 6193 | int ret; | 6193 | int err; |
| | 6194 | vm_fault_t ret; |
| 6194 | struct file *file = vma->vm_file; | 6195 | struct file *file = vma->vm_file; |
| 6195 | struct inode *inode = file_inode(file); | 6196 | struct inode *inode = file_inode(file); |
| 6196 | struct address_space *mapping = inode->i_mapping; | 6197 | struct address_space *mapping = inode->i_mapping; |
| @@ -6203,8 +6204,8 @@ int ext4_page_mkwrite(struct vm_fault *vmf) · 6 unmodified lines |
| 6203 | | 6204 | |
| 6204 | down_read(&EXT4_I(inode)->i_mmap_sem); | 6205 | down_read(&EXT4_I(inode)->i_mmap_sem); |
| 6205 | | 6206 | |
| 6206 | ret = ext4_convert_inline_data(inode); | 6207 | err = ext4_convert_inline_data(inode); |
| 6207 | if (ret) | 6208 | if (err) |
| 6208 | goto out_ret; | 6209 | goto out_ret; |
| 6209 | | 6210 | |
| 6210 | /* Delalloc case is easy... */ | 6211 | /* Delalloc case is easy... */ |
| @@ -6212,9 +6213,9 @@ int ext4_page_mkwrite(struct vm_fault *vmf) · 1 unmodified line |
| 6212 | !ext4_should_journal_data(inode) && | 6213 | !ext4_should_journal_data(inode) && |
| 6213 | !ext4_nonda_switch(inode->i_sb)) { | 6214 | !ext4_nonda_switch(inode->i_sb)) { |
| 6214 | do { | 6215 | do { |
| 6215 | ret = block_page_mkwrite(vma, vmf, | 6216 | err = block_page_mkwrite(vma, vmf, |
| 6216 | ext4_da_get_block_prep); | 6217 | ext4_da_get_block_prep); |
| 6217 | } while (ret == -ENOSPC && | 6218 | } while (err == -ENOSPC && |
| 6218 | ext4_should_retry_alloc(inode->i_sb, &retries)); | 6219 | ext4_should_retry_alloc(inode->i_sb, &retries)); |
| 6219 | goto out_ret; | 6220 | goto out_ret; |
| 6220 | } | 6221 | } |
| @@ -6259,8 +6260,8 @@ retry_alloc: · 38 unmodified lines |
| 6259 | ret = VM_FAULT_SIGBUS; | 6260 | ret = VM_FAULT_SIGBUS; |
| 6260 | goto out; | 6261 | goto out; |
| 6261 | } | 6262 | } |
| 6262 | ret = block_page_mkwrite(vma, vmf, get_block); | 6263 | err = block_page_mkwrite(vma, vmf, get_block); |
| 6263 | if (!ret && ext4_should_journal_data(inode)) { | 6264 | if (!err && ext4_should_journal_data(inode)) { |
| 6264 | if (ext4_walk_page_buffers(handle, page_buffers(page), 0, | 6265 | if (ext4_walk_page_buffers(handle, page_buffers(page), 0, |
| 6265 | PAGE_SIZE, NULL, do_journal_get_write_access)) { | 6266 | PAGE_SIZE, NULL, do_journal_get_write_access)) { |
| 6266 | unlock_page(page); | 6267 | unlock_page(page); |
| @@ -6271,24 +6272,24 @@ retry_alloc: · 4 unmodified lines |
| 6271 | ext4_set_inode_state(inode, EXT4_STATE_JDATA); | 6272 | ext4_set_inode_state(inode, EXT4_STATE_JDATA); |
| 6272 | } | 6273 | } |
| 6273 | ext4_journal_stop(handle); | 6274 | ext4_journal_stop(handle); |
| 6274 | if (ret == -ENOSPC && ext4_should_retry_alloc(inode->i_sb, &retries)) | 6275 | if (err == -ENOSPC && ext4_should_retry_alloc(inode->i_sb, &retries)) |
| 6275 | goto retry_alloc; | 6276 | goto retry_alloc; |
| 6276 | out_ret: | 6277 | out_ret: |
| 6277 | ret = block_page_mkwrite_return(ret); | 6278 | ret = block_page_mkwrite_return(err); |
| 6278 | out: | 6279 | out: |
| 6279 | up_read(&EXT4_I(inode)->i_mmap_sem); | 6280 | up_read(&EXT4_I(inode)->i_mmap_sem); |
| 6280 | sb_end_pagefault(inode->i_sb); | 6281 | sb_end_pagefault(inode->i_sb); |
| 6281 | return ret; | 6282 | return ret; |
| 6282 | } | 6283 | } |
| 6283 | | 6284 | |
| 6284 | int ext4_filemap_fault(struct vm_fault *vmf) | 6285 | vm_fault_t ext4_filemap_fault(struct vm_fault *vmf) |
| 6285 | { | 6286 | { |
| 6286 | struct inode *inode = file_inode(vmf->vma->vm_file); | 6287 | struct inode *inode = file_inode(vmf->vma->vm_file); |
| 6287 | int err; | 6288 | vm_fault_t ret; |
| 6288 | | 6289 | |
| 6289 | down_read(&EXT4_I(inode)->i_mmap_sem); | 6290 | down_read(&EXT4_I(inode)->i_mmap_sem); |
| 6290 | err = filemap_fault(vmf); | 6291 | ret = filemap_fault(vmf); |
| 6291 | up_read(&EXT4_I(inode)->i_mmap_sem); | 6292 | up_read(&EXT4_I(inode)->i_mmap_sem); |
| 6292 | | 6293 | |
| 6293 | return err; | 6294 | return ret; |
| 6294 | } | 6295 | } |