Merge tag 'ext4_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4
Pull ext4 updates from Ted Ts'o: "This merge window, we've added some performance improvements in how we handle inode locking in the read/write paths, and improving the performance of Direct I/O overwrites. We also now record the error code which caused the first and most recent ext4_error() report in the superblock, to make it easier to root cause problems in production systems. There are also many of the usual cleanups and miscellaneous bug fixes" * tag 'ext4_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: (49 commits) jbd2: clean __jbd2_journal_abort_hard() and __journal_abort_soft() jbd2: make sure ESHUTDOWN to be recorded in the journal superblock ext4, jbd2: ensure panic when aborting with zero errno jbd2: switch to use jbd2_journal_abort() when failed to submit the commit record jbd2_seq_info_next should increase position index jbd2: remove pointless assertion in __journal_remove_journal_head ext4,jbd2: fix comment and code style jbd2: delete the duplicated words in the comments ext4: fix extent_status trace points ext4: fix symbolic enum printing in trace output ext4: choose hardlimit when softlimit is larger than hardlimit in ext4_statfs_project() ext4: fix race conditions in ->d_compare() and ->d_hash() ext4: make dioread_nolock the default ext4: fix extent_status fragmentation for plain files jbd2: clear JBD2_ABORT flag before journal_reset to update log tail info when load journal ext4: drop ext4_kvmalloc() ext4: Add EXT4_IOC_FSGETXATTR/EXT4_IOC_FSSETXATTR to compat_ioctl ext4: remove unused macro MPAGE_DA_EXTENT_TAIL ext4: add missing braces in ext4_ext_drop_refs() ext4: fix some nonstandard indentation in extents.c ...
This commit is contained in:
@@ -48,6 +48,16 @@ struct partial_cluster;
|
||||
{ EXT4_GET_BLOCKS_KEEP_SIZE, "KEEP_SIZE" }, \
|
||||
{ EXT4_GET_BLOCKS_ZERO, "ZERO" })
|
||||
|
||||
/*
|
||||
* __print_flags() requires that all enum values be wrapped in the
|
||||
* TRACE_DEFINE_ENUM macro so that the enum value can be encoded in the ftrace
|
||||
* ring buffer.
|
||||
*/
|
||||
TRACE_DEFINE_ENUM(BH_New);
|
||||
TRACE_DEFINE_ENUM(BH_Mapped);
|
||||
TRACE_DEFINE_ENUM(BH_Unwritten);
|
||||
TRACE_DEFINE_ENUM(BH_Boundary);
|
||||
|
||||
#define show_mflags(flags) __print_flags(flags, "", \
|
||||
{ EXT4_MAP_NEW, "N" }, \
|
||||
{ EXT4_MAP_MAPPED, "M" }, \
|
||||
@@ -62,11 +72,18 @@ struct partial_cluster;
|
||||
{ EXT4_FREE_BLOCKS_NOFREE_FIRST_CLUSTER,"1ST_CLUSTER" },\
|
||||
{ EXT4_FREE_BLOCKS_NOFREE_LAST_CLUSTER, "LAST_CLUSTER" })
|
||||
|
||||
TRACE_DEFINE_ENUM(ES_WRITTEN_B);
|
||||
TRACE_DEFINE_ENUM(ES_UNWRITTEN_B);
|
||||
TRACE_DEFINE_ENUM(ES_DELAYED_B);
|
||||
TRACE_DEFINE_ENUM(ES_HOLE_B);
|
||||
TRACE_DEFINE_ENUM(ES_REFERENCED_B);
|
||||
|
||||
#define show_extent_status(status) __print_flags(status, "", \
|
||||
{ EXTENT_STATUS_WRITTEN, "W" }, \
|
||||
{ EXTENT_STATUS_UNWRITTEN, "U" }, \
|
||||
{ EXTENT_STATUS_DELAYED, "D" }, \
|
||||
{ EXTENT_STATUS_HOLE, "H" })
|
||||
{ EXTENT_STATUS_HOLE, "H" }, \
|
||||
{ EXTENT_STATUS_REFERENCED, "R" })
|
||||
|
||||
#define show_falloc_mode(mode) __print_flags(mode, "|", \
|
||||
{ FALLOC_FL_KEEP_SIZE, "KEEP_SIZE"}, \
|
||||
@@ -2265,7 +2282,7 @@ DECLARE_EVENT_CLASS(ext4__es_extent,
|
||||
__entry->ino = inode->i_ino;
|
||||
__entry->lblk = es->es_lblk;
|
||||
__entry->len = es->es_len;
|
||||
__entry->pblk = ext4_es_pblock(es);
|
||||
__entry->pblk = ext4_es_show_pblock(es);
|
||||
__entry->status = ext4_es_status(es);
|
||||
),
|
||||
|
||||
@@ -2354,7 +2371,7 @@ TRACE_EVENT(ext4_es_find_extent_range_exit,
|
||||
__entry->ino = inode->i_ino;
|
||||
__entry->lblk = es->es_lblk;
|
||||
__entry->len = es->es_len;
|
||||
__entry->pblk = ext4_es_pblock(es);
|
||||
__entry->pblk = ext4_es_show_pblock(es);
|
||||
__entry->status = ext4_es_status(es);
|
||||
),
|
||||
|
||||
@@ -2408,7 +2425,7 @@ TRACE_EVENT(ext4_es_lookup_extent_exit,
|
||||
__entry->ino = inode->i_ino;
|
||||
__entry->lblk = es->es_lblk;
|
||||
__entry->len = es->es_len;
|
||||
__entry->pblk = ext4_es_pblock(es);
|
||||
__entry->pblk = ext4_es_show_pblock(es);
|
||||
__entry->status = ext4_es_status(es);
|
||||
__entry->found = found;
|
||||
),
|
||||
@@ -2576,7 +2593,7 @@ TRACE_EVENT(ext4_es_insert_delayed_block,
|
||||
__entry->ino = inode->i_ino;
|
||||
__entry->lblk = es->es_lblk;
|
||||
__entry->len = es->es_len;
|
||||
__entry->pblk = ext4_es_pblock(es);
|
||||
__entry->pblk = ext4_es_show_pblock(es);
|
||||
__entry->status = ext4_es_status(es);
|
||||
__entry->allocated = allocated;
|
||||
),
|
||||
|
Reference in New Issue
Block a user