Commit d84c9eb
ext4: Mark pages with journalled data dirty
Currently pages with journalled data written by write(2) or modified by
block zeroing during truncate(2) are not marked as dirty. They are
dirtied only once the transaction commits. This however makes writeback
code think inode has no pages to write and so ext4_writepages() is not
called to make pages with journalled data persistent. Mark pages with
journalled data dirty (similarly as it happens for writes through mmap)
so that writeback code knows about them and ext4_writepages() can do
what it needs to to the inode.
Signed-off-by: Jan Kara <jack@suse.cz>
Link: https://lore.kernel.org/r/20230329154950.19720-2-jack@suse.cz
Signed-off-by: Theodore Ts'o <tytso@mit.edu>1 parent bd15939 commit d84c9eb
1 file changed
Lines changed: 16 additions & 4 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1003 | 1003 | | |
1004 | 1004 | | |
1005 | 1005 | | |
| 1006 | + | |
| 1007 | + | |
| 1008 | + | |
| 1009 | + | |
| 1010 | + | |
| 1011 | + | |
| 1012 | + | |
| 1013 | + | |
| 1014 | + | |
| 1015 | + | |
| 1016 | + | |
| 1017 | + | |
1006 | 1018 | | |
1007 | 1019 | | |
1008 | 1020 | | |
| |||
1025 | 1037 | | |
1026 | 1038 | | |
1027 | 1039 | | |
1028 | | - | |
| 1040 | + | |
1029 | 1041 | | |
1030 | 1042 | | |
1031 | 1043 | | |
| |||
1272 | 1284 | | |
1273 | 1285 | | |
1274 | 1286 | | |
1275 | | - | |
| 1287 | + | |
1276 | 1288 | | |
1277 | 1289 | | |
1278 | 1290 | | |
| |||
1356 | 1368 | | |
1357 | 1369 | | |
1358 | 1370 | | |
1359 | | - | |
| 1371 | + | |
1360 | 1372 | | |
1361 | 1373 | | |
1362 | 1374 | | |
| |||
3740 | 3752 | | |
3741 | 3753 | | |
3742 | 3754 | | |
3743 | | - | |
| 3755 | + | |
3744 | 3756 | | |
3745 | 3757 | | |
3746 | 3758 | | |
| |||
0 commit comments