@@ -399,10 +399,9 @@ int nilfs_mdt_fetch_dirty(struct inode *inode)
399
399
return test_bit (NILFS_I_DIRTY , & ii -> i_state );
400
400
}
401
401
402
- static int
403
- nilfs_mdt_write_page ( struct page * page , struct writeback_control * wbc )
402
+ static int nilfs_mdt_write_folio ( struct folio * folio ,
403
+ struct writeback_control * wbc )
404
404
{
405
- struct folio * folio = page_folio (page );
406
405
struct inode * inode = folio -> mapping -> host ;
407
406
struct super_block * sb ;
408
407
int err = 0 ;
@@ -435,11 +434,23 @@ nilfs_mdt_write_page(struct page *page, struct writeback_control *wbc)
435
434
return err ;
436
435
}
437
436
437
+ static int nilfs_mdt_writeback (struct address_space * mapping ,
438
+ struct writeback_control * wbc )
439
+ {
440
+ struct folio * folio = NULL ;
441
+ int error ;
442
+
443
+ while ((folio = writeback_iter (mapping , wbc , folio , & error )))
444
+ error = nilfs_mdt_write_folio (folio , wbc );
445
+
446
+ return error ;
447
+ }
438
448
439
449
static const struct address_space_operations def_mdt_aops = {
440
450
.dirty_folio = block_dirty_folio ,
441
451
.invalidate_folio = block_invalidate_folio ,
442
- .writepage = nilfs_mdt_write_page ,
452
+ .writepages = nilfs_mdt_writeback ,
453
+ .migrate_folio = buffer_migrate_folio_norefs ,
443
454
};
444
455
445
456
static const struct inode_operations def_mdt_iops ;
0 commit comments