Matthew Wilcox
01a33b4ace
ext4: start transaction before calling into DAX
...
Jan Kara pointed out that in the case where we are writing to a hole, we
can end up with a lock inversion between the page lock and the journal
lock. We can avoid this by starting the transaction in ext4 before
calling into DAX. The journal lock nests inside the superblock
pagefault lock, so we have to duplicate that code from dax_fault, like
XFS does.
Signed-off-by: Matthew Wilcox <willy@linux.intel.com>
Cc: Jan Kara <jack@suse.cz>
Cc: Theodore Ts'o <tytso@mit.edu>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2015-09-08 15:35:28 -07:00
..
acl.c
ext4: remove unused header files
2015-04-02 23:47:42 -04:00
acl.h
balloc.c
ext4: verify block bitmap even after fresh initialization
2015-06-08 11:18:52 -04:00
bitmap.c
ext4: remove unused header files
2015-04-02 23:47:42 -04:00
block_validity.c
ext4: remove unused header files
2015-04-02 23:47:42 -04:00
crypto.c
ext4 crypto: fix ext4_get_crypto_ctx()'s calling convention in ext4_decrypt_one
2015-06-08 11:54:56 -04:00
crypto_fname.c
ext4 crypto: remove duplicate header file
2015-07-28 15:12:18 -04:00
crypto_key.c
ext4 crypto: fix spelling typo in comment
2015-07-22 00:09:45 -04:00
crypto_policy.c
ext4 crypto: use a jbd2 transaction when adding a crypto policy
2015-07-17 11:16:47 -04:00
dir.c
ext4 crypto: make sure the encryption info is initialized on opendir(2)
2015-05-31 13:34:57 -04:00
ext4.h
ext4: add ext4_get_block_dax()
2015-09-08 15:35:28 -07:00
ext4_crypto.h
ext4 crypto: allocate bounce pages using GFP_NOWAIT
2015-06-03 09:32:39 -04:00
ext4_extents.h
ext4_jbd2.c
ext4: fix NULL pointer dereference when journal restart fails
2015-05-14 18:55:18 -04:00
ext4_jbd2.h
extents.c
Bug fixes (all for stable kernels) for ext4:
2015-07-05 16:24:54 -07:00
extents_status.c
ext4: fix data corruption caused by unwritten and delayed extents
2015-05-02 21:36:55 -04:00
extents_status.h
file.c
ext4: start transaction before calling into DAX
2015-09-08 15:35:28 -07:00
fsync.c
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
2015-04-26 17:22:07 -07:00
hash.c
ext4: remove unused header files
2015-04-02 23:47:42 -04:00
ialloc.c
ext4: Handle error from dquot_initialize()
2015-07-23 20:59:37 +02:00
indirect.c
dax: move DAX-related functions to a new header
2015-09-08 15:35:28 -07:00
inline.c
ext4 crypto: optimize filename encryption
2015-05-18 13:14:47 -04:00
inode.c
ext4: add ext4_get_block_dax()
2015-09-08 15:35:28 -07:00
ioctl.c
ioctl_compat: handle FITRIM
2015-07-09 11:42:21 -07:00
Kconfig
ext4: Improve ext4 Kconfig test
2015-07-23 20:59:40 +02:00
Makefile
ext4 crypto: filename encryption facilities
2015-04-12 00:56:17 -04:00
mballoc.c
Bug fixes (all for stable kernels) for ext4:
2015-07-05 16:24:54 -07:00
mballoc.h
migrate.c
ext4: correctly migrate a file with a hole at the beginning
2015-07-04 00:03:44 -04:00
mmp.c
ext4: silence a format string false positive
2015-08-15 11:38:13 -04:00
move_extent.c
ext4: make online defrag error reporting consistent
2015-06-21 21:38:03 -04:00
namei.c
ext4: memory leak on error in ext4_symlink()
2015-07-27 14:30:45 +02:00
page-io.c
Pretty much all bug fixes and clean ups for 4.3, after a lot of
2015-09-03 12:52:19 -07:00
readpage.c
block: remove bio_get_nr_vecs()
2015-08-13 12:32:04 -06:00
resize.c
ext4: fix growing of tiny filesystems
2015-05-02 23:58:32 -04:00
super.c
fs: create and use seq_show_option for escaping
2015-09-04 16:54:41 -07:00
symlink.c
A very large number of cleanups and bug fixes --- in particular for
2015-06-25 14:06:55 -07:00
truncate.h
xattr.c
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
2015-04-26 17:22:07 -07:00
xattr.h
ext4 crypto: add encryption xattr support
2015-04-11 07:47:00 -04:00
xattr_security.c
VFS: normal filesystems (and lustre): d_inode() annotations
2015-04-15 15:06:57 -04:00
xattr_trusted.c
VFS: normal filesystems (and lustre): d_inode() annotations
2015-04-15 15:06:57 -04:00
xattr_user.c
VFS: normal filesystems (and lustre): d_inode() annotations
2015-04-15 15:06:57 -04:00