diff options
| author | Jchao Sun <sunjunchao2870@gmail.com> | 2022-05-24 08:05:40 -0700 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2022-06-14 18:41:47 +0200 |
| commit | 8e8c954ae2c0e2d002bfc5faad7872c725613549 (patch) | |
| tree | da60401fde442a1ef1e903e40640b6a28dd8f2df /include/uapi/linux/virtio_config.h | |
| parent | b574f8a111d3e9187b1d88ac50d9585b86709c63 (diff) | |
writeback: Fix inode->i_io_list not be protected by inode->i_lock error
commit 10e14073107dd0b6d97d9516a02845a8e501c2c9 upstream.
Commit b35250c0816c ("writeback: Protect inode->i_io_list with
inode->i_lock") made inode->i_io_list not only protected by
wb->list_lock but also inode->i_lock, but inode_io_list_move_locked()
was missed. Add lock there and also update comment describing
things protected by inode->i_lock. This also fixes a race where
__mark_inode_dirty() could move inode under flush worker's hands
and thus sync(2) could miss writing some inodes.
Fixes: b35250c0816c ("writeback: Protect inode->i_io_list with inode->i_lock")
Link: https://lore.kernel.org/r/20220524150540.12552-1-sunjunchao2870@gmail.com
CC: stable@vger.kernel.org
Signed-off-by: Jchao Sun <sunjunchao2870@gmail.com>
Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'include/uapi/linux/virtio_config.h')
0 files changed, 0 insertions, 0 deletions
