[PATCH v5 03/10] VFS hot tracking: Add a workqueue to move items between hot maps

2013-09-16 Thread zwu . kernel
From: Zhi Yong Wu Add a workqueue per superblock and a delayed_work to run periodic work to update map info on each superblock. Two arrays of map list are defined, one is for hot inode items, and the other is for hot extent items. The hot items in the RB-tree will be at first distilled into one

[PATCH v5 04/10] VFS hot tracking: Add shrinker functionality to curtail memory usage

2013-09-16 Thread zwu . kernel
From: Zhi Yong Wu Register a shrinker to control the amount of memory that is used in tracking hot regions. If we are throwing inodes out of memory due to memory pressure, we most definitely are going to need to reduce the amount of memory the tracking code is using, even if it means losing usefu

[PATCH v5 08/10] VFS hot tracking: Add documentation

2013-09-16 Thread zwu . kernel
From: Zhi Yong Wu Add Documentation for VFS hot tracking feature Signed-off-by: Chandra Seetharaman Signed-off-by: Zhi Yong Wu --- Documentation/filesystems/00-INDEX | 2 + Documentation/filesystems/hot_tracking.txt | 207 + 2 files changed, 209 insertion

[PATCH v5 02/10] VFS hot tracking: Track IO and record heat information

2013-09-16 Thread zwu . kernel
From: Zhi Yong Wu This patch adds read/write code paths: include read_pages(), do_writepages(), do_generic_file_read() and __blockdev_direct_IO() to record heat information. When real disk i/o for an inode is done, its own hot_inode_item will be created or updated in the RB tree for the filesyst

[PATCH v5 10/10] VFS hot tracking, xfs: Add hot tracking support

2013-09-16 Thread zwu . kernel
From: Dave Chinner Connect up the VFS hot tracking support so XFS filesystem can make use of it. Signed-off-by: Dave Chinner Signed-off-by: Zhi Yong Wu --- fs/xfs/xfs_mount.h | 1 + fs/xfs/xfs_super.c | 18 ++ 2 files changed, 19 insertions(+) diff --git a/fs/xfs/xfs_mount.h

[PATCH v5 05/10] VFS hot tracking: Add an ioctl to get hot tracking information

2013-09-16 Thread zwu . kernel
From: Zhi Yong Wu FS_IOC_GET_HEAT_INFO: return a struct containing the various metrics collected in hot_freq_data structs, and also return a calculated data temperature based on those metrics. Optionally, retrieve the temperature from the hot data hash list instead of recalculating it. Signed-o

[PATCH v5 09/10] VFS hot tracking, btrfs: Add hot tracking support

2013-09-16 Thread zwu . kernel
From: Zhi Yong Wu Introduce one new mount option '-o hot_track', and add its parsing support. Its usage looks like: mount -o hot_track mount -o nouser,hot_track mount -o nouser,hot_track,loop mount -o hot_track,nouser Reviewed-by: David Sterba Signed-off-by: Chandra Seetharaman Si

[PATCH v5 06/10] VFS hot tracking: Add a /proc interface to make the interval tunable

2013-09-16 Thread zwu . kernel
From: Zhi Yong Wu Add a proc interface hot-update-interval under the dir /proc/sys/fs/ in order to turn HOT_UPDATE_INTERVAL into a tunable parameter. Signed-off-by: Chandra Seetharaman Signed-off-by: Zhi Yong Wu --- fs/hot_tracking.c| 7 +-- fs/hot_tracking.h| 2 --

[PATCH v5 07/10] VFS hot tracking: Add a /proc interface to control memory usage

2013-09-16 Thread zwu . kernel
From: Zhi Yong Wu Introduce a /proc interface hot-mem-high-thresh and to cap the memory which is consumed by hot_inode_item and hot_range_item, and they will be in the unit of 1M bytes. Signed-off-by: Chandra Seetharaman Signed-off-by: Zhi Yong Wu --- fs/hot_tracking.c| 31 +++

[PATCH v5 00/10] VFS hot tracking

2013-09-16 Thread zwu . kernel
From: Zhi Yong Wu The patchset is trying to introduce hot tracking function in VFS layer, which will keep track of real disk I/O in memory. By it, you will easily know more details about disk I/O, and then detect where disk I/O hot spots are. Also, specific FS can take use of it to do accurate

[PATCH v5 01/10] VFS hot tracking: Define basic data structures and functions

2013-09-16 Thread zwu . kernel
From: Zhi Yong Wu This patch includes the basic data structure and functions needed for VFS hot tracking. It adds hot_inode_tree struct to keep track of frequently accessed files, and is keyed by {inode, offset}. Trees contain hot_inode_items representing those files and hot_range_items represen

[PATCH] rbtree: Add some necessary condition checks

2013-08-23 Thread zwu . kernel
From: Zhi Yong Wu Signed-off-by: Zhi Yong Wu --- include/linux/rbtree_augmented.h | 3 ++- lib/rbtree.c | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/include/linux/rbtree_augmented.h b/include/linux/rbtree_augmented.h index fea49b5..7d19770 100644 -

[PATCH] rbtree: Add some necessary condition checks

2013-08-23 Thread zwu . kernel
From: Zhi Yong Wu Signed-off-by: Zhi Yong Wu --- include/linux/rbtree_augmented.h | 3 ++- lib/rbtree.c | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/include/linux/rbtree_augmented.h b/include/linux/rbtree_augmented.h index fea49b5..7d19770 100644 -

[PATCH] rbtree: Add some necessary condition checks

2013-08-23 Thread zwu . kernel
From: Zhi Yong Wu Signed-off-by: Zhi Yong Wu --- include/linux/rbtree_augmented.h | 3 ++- lib/rbtree.c | 5 +++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/include/linux/rbtree_augmented.h b/include/linux/rbtree_augmented.h index fea49b5..7d19770 100644

[PATCH] scsi: fix the build warning

2013-08-21 Thread zwu . kernel
From: Zhi Yong Wu Initialize csum variable to fix the build warning. drivers/scsi/scsi_debug.c: In function ‘dif_verify’: drivers/scsi/scsi_debug.c:1755:3: warning: ‘csum’ may be used uninitialized in this function [-Wmaybe-uninitialized] LD drivers/built-in.o CHK include/generat

[PATCH v4] xfs: introduce object readahead to log recovery

2013-08-14 Thread zwu . kernel
From: Zhi Yong Wu It can take a long time to run log recovery operation because it is single threaded and is bound by read latency. We can find that it took most of the time to wait for the read IO to occur, so if one object readahead is introduced to log recovery, it will obviously reduce the

[PATCH v3] xfs: introduce object readahead to log recovery

2013-07-31 Thread zwu . kernel
From: Zhi Yong Wu It can take a long time to run log recovery operation because it is single threaded and is bound by read latency. We can find that it took most of the time to wait for the read IO to occur, so if one object readahead is introduced to log recovery, it will obviously reduce the

[PATCH v2] xfs: introduce object readahead to log recovery

2013-07-30 Thread zwu . kernel
From: Zhi Yong Wu It can take a long time to run log recovery operation because it is single threaded and is bound by read latency. We can find that it took most of the time to wait for the read IO to occur, so if one object readahead is introduced to log recovery, it will obviously reduce the

[PATCH] xfs: fix an assertion failure

2013-07-25 Thread zwu . kernel
From: Zhi Yong Wu When running the compilebench, one assertion failure was found. This related line of code was introduced by commit 5f6bed76c0. commit 5f6bed76c0c85cb4d04885a5de00b629deee550b Author: Dave Chinner Date: Thu Jun 27 16:04:52 2013 +1000 xfs: Introduce an ordered buffer it

[PATCH] xfs: introduce object readahead to log recovery

2013-07-25 Thread zwu . kernel
From: Zhi Yong Wu It can take a long time to run log recovery operation because it is single threaded and is bound by read latency. We can find that it took most of the time to wait for the read IO to occur, so if one object readahead is introduced to log recovery, it will obviously reduce the

[RFC PATCH v1 3/5] BTRFS hot reloc: add one hot reloc thread

2013-05-20 Thread zwu . kernel
From: Zhi Yong Wu Add one private thread for hot relocation. It will check if there're some extents which is hotter than the threshold and queue them at first, if no, it will return and wait for its next turn; otherwise, it will check if nonrotating disk ratio is beyond its usage threshold, if

[RFC PATCH v1 0/5] BTRFS hot relocation support

2013-05-20 Thread zwu . kernel
From: Zhi Yong Wu The patchset as RFC is sent out mainly to see if its design goes in the correct development direction. When working on this feature, i am trying to change as less the existing btrfs code as possible. After V0 was sent out, i carefully checked the patchset for speed profile,

[RFC PATCH v1 4/5] BTRFS hot reloc, procfs: add three proc interfaces

2013-05-20 Thread zwu . kernel
From: Zhi Yong Wu Add three proc interfaces hot-reloc-interval, hot-reloc-threshold, and hot-reloc-max-items under the dir /proc/sys/fs/ in order to turn HOT_RELOC_INTERVAL, HOT_RELOC_THRESHOLD, and HOT_RELOC_MAX_ITEMS into be tunable. Signed-off-by: Zhi Yong Wu --- fs/btrfs/hot_relocate.c |

[RFC PATCH v1 2/5] BTRFS hot reloc: add one new block group

2013-05-20 Thread zwu . kernel
From: Zhi Yong Wu Introduce one new block group BTRFS_BLOCK_GROUP_DATA_NONROT, which is used to differentiate if the block space is reserved and allocated from one rotating disk or nonrotating disk. Signed-off-by: Zhi Yong Wu --- fs/btrfs/ctree.h| 33 --- fs/btrfs/ext

[RFC PATCH v1 1/5] BTRFS hot reloc, vfs: add one list_head field

2013-05-20 Thread zwu . kernel
From: Zhi Yong Wu Add one list_head field 'reloc_list' to accommodate hot relocation support. Signed-off-by: Zhi Yong Wu --- fs/hot_tracking.c| 1 + include/linux/hot_tracking.h | 1 + 2 files changed, 2 insertions(+) diff --git a/fs/hot_tracking.c b/fs/hot_tracking.c index 46d2

[RFC PATCH v1 5/5] BTRFS hot reloc: add hot relocation support

2013-05-20 Thread zwu . kernel
From: Zhi Yong Wu Add one new mount option '-o hot_move' for hot relocation support. When hot relocation is enabled, hot tracking will be enabled automatically. Its usage looks like: mount -o hot_move mount -o nouser,hot_move mount -o nouser,hot_move,loop mount -o hot_move,nou

[PATCH v2 04/12] VFS hot tracking: register one shrinker

2013-05-13 Thread zwu . kernel
From: Zhi Yong Wu Register a shrinker to control the amount of memory that is used in tracking hot regions. If we are throwing inodes out of memory due to memory pressure, we most definitely are going to need to reduce the amount of memory the tracking code is using, even if it means losing use

[PATCH v2 12/12] VFS hot tracking: add fs hot type support

2013-05-13 Thread zwu . kernel
From: Zhi Yong Wu Introduce one ability to enable that specific FS can register its own hot tracking functions. Signed-off-by: Chandra Seetharaman Signed-off-by: Zhi Yong Wu --- fs/hot_tracking.c| 32 ++-- fs/hot_tracking.h| 19 +++

[PATCH v2 11/12] VFS hot tracking: add documentation

2013-05-13 Thread zwu . kernel
From: Zhi Yong Wu Add Documentation for VFS hot tracking feature Signed-off-by: Chandra Seetharaman Signed-off-by: Zhi Yong Wu --- Documentation/filesystems/00-INDEX | 2 + Documentation/filesystems/hot_tracking.txt | 256 + 2 files changed, 258 ins

[PATCH v2 09/12] VFS hot tracking, procfs: add two proc interfaces

2013-05-13 Thread zwu . kernel
From: Zhi Yong Wu Add two proc interfaces hot-age-interval and hot-update-interval under the dir /proc/sys/fs/ in order to turn HOT_AGE_INTERVAL and HOT_UPDATE_INTERVAL into be tunable. Signed-off-by: Chandra Seetharaman Signed-off-by: Zhi Yong Wu --- fs/hot_tracking.c| 12 +

[PATCH v2 10/12] VFS hot tracking, btrfs: add hot tracking support

2013-05-13 Thread zwu . kernel
From: Zhi Yong Wu Introduce one new mount option '-o hot_track', and add its parsing support. Its usage looks like: mount -o hot_track mount -o nouser,hot_track mount -o nouser,hot_track,loop mount -o hot_track,nouser Reviewed-by: David Sterba Signed-off-by: Chandra Seetharama

[PATCH v2 08/12] VFS hot tracking: add one ioctl interface

2013-05-13 Thread zwu . kernel
From: Zhi Yong Wu FS_IOC_GET_HEAT_INFO: return a struct containing the various metrics collected in hot_freq_data structs, and also return a calculated data temperature based on those metrics. Optionally, retrieve the temperature from the hot data hash list instead of recalculating it. Signed-

[PATCH v2 06/12] VFS hot tracking, seq_file: introduce one set of rcu seq_list interfaces

2013-05-13 Thread zwu . kernel
From: Zhi Yong Wu The patch will introduce one set of rcu interface for seq_list. Signed-off-by: Chandra Seetharaman Signed-off-by: Zhi Yong Wu --- fs/seq_file.c| 37 + include/linux/seq_file.h | 7 +++ 2 files changed, 44 insertions(+)

[PATCH v2 07/12] VFS hot tracking: add debugfs support

2013-05-13 Thread zwu . kernel
From: Zhi Yong Wu Add a directory '' in /sys/kernel/debug/hot_track/ for each volume that contains four files which are 'inode_stat', 'extent_stat', 'inode_spot', and 'extent_spot'. Signed-off-by: Chandra Seetharaman Signed-off-by: Zhi Yong Wu --- fs/hot_tracking.c| 455

[PATCH v2 05/12] VFS hot tracking, rcu: introduce one rcu macro for list

2013-05-13 Thread zwu . kernel
From: Zhi Yong Wu This rcu macro for list will be used in seq_list rcu interfaces. Signed-off-by: Chandra Seetharaman Signed-off-by: Zhi Yong Wu --- include/linux/rculist.h | 5 + 1 file changed, 5 insertions(+) diff --git a/include/linux/rculist.h b/include/linux/rculist.h index 8089e

[PATCH v2 03/12] VFS hot tracking: add one workqueue to update hot map

2013-05-13 Thread zwu . kernel
From: Zhi Yong Wu Add a workqueue per superblock and a delayed_work to run periodic work to update map info on each superblock. Two arrays of map list are defined, one is for hot inode items, and the other is for hot extent items. The hot items in the RB-tree will be at first distilled into

[PATCH v2 02/12] VFS hot tracking: add i/o freq tracking hooks

2013-05-13 Thread zwu . kernel
From: Zhi Yong Wu Add i/o freq tracking hooks in real read/write code paths which include read_pages(), do_writepages(), do_generic_file_read(), and __blockdev_direct_IO(). Currently whole FS has one RB tree to track i/o freqs for all inodes which had real disk i/o, while every inode has its

[PATCH v2 01/12] VFS hot tracking: introduce some data structures

2013-05-13 Thread zwu . kernel
From: Zhi Yong Wu One root structure hot_info is defined, is hooked up in super_block, and will be used to hold radix tree root, hash list root and some other information, etc. Adds hot_inode_tree struct to keep track of frequently accessed files, and be keyed by {inode, offset}. Trees contai

[PATCH v2 00/12] VFS hot tracking

2013-05-13 Thread zwu . kernel
From: Zhi Yong Wu The patchset is trying to introduce hot tracking function in VFS layer, which will keep track of real disk I/O in memory. By it, you will easily know more details about disk I/O, and then detect where disk I/O hot spots are. Also, specific FS can take use of it to do accurate

[PATCH] btrfs-progs: add missing qgroup synopsis in btrfs

2013-03-21 Thread zwu . kernel
From: Zhi Yong Wu Signed-off-by: Zhi Yong Wu --- man/btrfs.8.in | 37 + 1 file changed, 37 insertions(+) diff --git a/man/btrfs.8.in b/man/btrfs.8.in index 94f4ffe..54de60e 100644 --- a/man/btrfs.8.in +++ b/man/btrfs.8.in @@ -60,6 +60,18 @@ btrfs \- control

[PATCH] btrfs-progs: fix one bracket issue in mkfs.btrfs manpage

2013-03-21 Thread zwu . kernel
From: Zhi Yong Wu In "[ \fB\-f\fP\fI ]", the "\fI" will result in the front half "["of "[ -f ]" doesn't the back half "]"; When you issue the command "man mkfs.btrfs", you will see the difference. Signed-off-by: Zhi Yong Wu --- man/mkfs.btrfs.8.in | 2 +- 1 file changed, 1 insertion(+), 1 de

[PATCH 2/2] btrfs: Cleanup some redundant codes in btrfs_log_inode()

2013-03-18 Thread zwu . kernel
From: Zhi Yong Wu Signed-off-by: Zhi Yong Wu --- fs/btrfs/tree-log.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/fs/btrfs/tree-log.c b/fs/btrfs/tree-log.c index 451fad9..83d4e1d 100644 --- a/fs/btrfs/tree-log.c +++ b/fs/btrfs/tree-log.c @@ -3614,8 +3614,6 @@ static int btrfs_log_inode(

[PATCH 1/2] btrfs: Cleanup some redundant codes in btrfs_lookup_csums_range()

2013-03-18 Thread zwu . kernel
From: Zhi Yong Wu Signed-off-by: Zhi Yong Wu --- fs/btrfs/file-item.c | 7 ++- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/fs/btrfs/file-item.c b/fs/btrfs/file-item.c index ec16020..1ba85b4 100644 --- a/fs/btrfs/file-item.c +++ b/fs/btrfs/file-item.c @@ -356,11 +356,8 @@ i

[PATCH RESEND v1 08/16] vfs: add aging function

2012-12-20 Thread zwu . kernel
From: Zhi Yong Wu Signed-off-by: Zhi Yong Wu --- fs/hot_tracking.c | 49 + fs/hot_tracking.h |6 ++ 2 files changed, 55 insertions(+), 0 deletions(-) diff --git a/fs/hot_tracking.c b/fs/hot_tracking.c index 6a5ef53..45d0164 100644 --- a

[PATCH RESEND v1 04/16] vfs: add two map arrays

2012-12-20 Thread zwu . kernel
From: Zhi Yong Wu Adds two map arrays which contains a lot of list and is used to efficiently look up the data temperature of a file or its ranges. In each list of map arrays, the array node will keep track of temperature info. Signed-off-by: Zhi Yong Wu --- fs/hot_tracking.c|

[PATCH RESEND v1 10/16] vfs: add FS hot type support

2012-12-20 Thread zwu . kernel
From: Zhi Yong Wu Introduce one way to enable that specific FS can inject its own hot tracking type. Signed-off-by: Zhi Yong Wu --- fs/hot_tracking.c| 43 +++-- fs/hot_tracking.h|1 - include/linux/fs.h |1 + inc

[PATCH RESEND v1 09/16] vfs: add one work queue

2012-12-20 Thread zwu . kernel
From: Zhi Yong Wu Add a per-superblock workqueue and a delayed_work to run periodic work to update map info on each superblock. Signed-off-by: Zhi Yong Wu --- fs/hot_tracking.c| 85 ++ fs/hot_tracking.h|3 + include/linux/

[PATCH RESEND v1 16/16] vfs: add documentation

2012-12-20 Thread zwu . kernel
From: Zhi Yong Wu Add one doc for VFS hot tracking feature Signed-off-by: Zhi Yong Wu --- Documentation/filesystems/00-INDEX |2 + Documentation/filesystems/hot_tracking.txt | 255 2 files changed, 257 insertions(+), 0 deletions(-) create mode 10064

[PATCH RESEND v1 14/16] proc: add two hot_track proc files

2012-12-20 Thread zwu . kernel
From: Zhi Yong Wu Add two proc files hot-kick-time and hot-update-delay under the dir /proc/sys/fs/ in order to turn TIME_TO_KICK and HEAT_UPDATE_DELAY into be tunable. Signed-off-by: Zhi Yong Wu --- fs/hot_tracking.c| 12 +--- fs/hot_tracking.h|9 --

[PATCH RESEND v1 13/16] vfs: add debugfs support

2012-12-20 Thread zwu . kernel
From: Zhi Yong Wu Add a /sys/kernel/debug/hot_track// directory for each volume that contains two files. The first, `inode_stats', contains the heat information for inodes that have been brought into the hot data map structures. The second, `range_stats', contains similar information for subfil

[PATCH RESEND v1 06/16] vfs: add temp calculation function

2012-12-20 Thread zwu . kernel
From: Zhi Yong Wu Signed-off-by: Zhi Yong Wu --- fs/hot_tracking.c | 74 + fs/hot_tracking.h | 21 +++ 2 files changed, 95 insertions(+), 0 deletions(-) diff --git a/fs/hot_tracking.c b/fs/hot_tracking.c index 5f164c8..ba4decf

[PATCH RESEND v1 12/16] vfs: add one ioctl interface

2012-12-20 Thread zwu . kernel
From: Zhi Yong Wu FS_IOC_GET_HEAT_INFO: return a struct containing the various metrics collected in hot_freq_data structs, and also return a calculated data temperature based on those metrics. Optionally, retrieve the temperature from the hot data hash list instead of recalculating it. Signed-

[PATCH RESEND v1 15/16] btrfs: add hot tracking support

2012-12-20 Thread zwu . kernel
From: Zhi Yong Wu Introduce one new mount option '-o hot_track', and add its parsing support. Its usage looks like: mount -o hot_track mount -o nouser,hot_track mount -o nouser,hot_track,loop mount -o hot_track,nouser Reviewed-by: David Sterba Signed-off-by: Zhi Yong Wu ---

[PATCH RESEND v1 11/16] vfs: register one shrinker

2012-12-20 Thread zwu . kernel
From: Zhi Yong Wu Register a shrinker to control the amount of memory that is used in tracking hot regions - if we are throwing inodes out of memory due to memory pressure, we most definitely are going to need to reduce the amount of memory the tracking code is using, even if it means losing us

[PATCH RESEND v1 07/16] vfs: add map info update function

2012-12-20 Thread zwu . kernel
From: Zhi Yong Wu Signed-off-by: Zhi Yong Wu --- fs/hot_tracking.c | 67 + 1 files changed, 67 insertions(+), 0 deletions(-) diff --git a/fs/hot_tracking.c b/fs/hot_tracking.c index ba4decf..6a5ef53 100644 --- a/fs/hot_tracking.c +++ b/fs/h

[PATCH RESEND v1 02/16] vfs: add init and cleanup functions

2012-12-20 Thread zwu . kernel
From: Zhi Yong Wu Add initialization function to create some key data structures when hot tracking is enabled; Clean up them when hot tracking is disabled Signed-off-by: Zhi Yong Wu --- fs/hot_tracking.c| 117 ++ include/linux/fs.h

[PATCH RESEND v1 05/16] vfs: add hooks to enable hot tracking

2012-12-20 Thread zwu . kernel
From: Zhi Yong Wu Miscellaneous features that implement hot data tracking and generally make the hot data functions a bit more friendly. Signed-off-by: Zhi Yong Wu --- fs/direct-io.c |6 ++ mm/filemap.c|6 ++ mm/page-writeback.c | 12 mm/readahead.

[PATCH RESEND v1 03/16] vfs: add I/O frequency update function

2012-12-20 Thread zwu . kernel
From: Zhi Yong Wu Add some util helpers to update access frequencies for one file or its range. Signed-off-by: Zhi Yong Wu --- fs/hot_tracking.c| 178 ++ fs/hot_tracking.h|5 + include/linux/hot_tracking.h |4 + 3 files

[PATCH RESEND v1 00/16] vfs: hot data tracking

2012-12-20 Thread zwu . kernel
From: Zhi Yong Wu HI, guys, This patchset has been done scalability or performance tests by fs_mark, ffsb and compilebench. I have done the perf testing on Linux 3.7.0-rc8+ with Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz with 8 CPUs, 16G ram and 260G disk. Any comments or ideas are appreciat

[PATCH RESEND v1 01/16] vfs: introduce some data structures

2012-12-20 Thread zwu . kernel
From: Zhi Yong Wu One root structure hot_info is defined, is hooked up in super_block, and will be used to hold radix tree root, hash list root and some other information, etc. Adds hot_inode_tree struct to keep track of frequently accessed files, and be keyed by {inode, offset}. Trees contai

[PATCH] ip: add the type 'vxlan' in the output of "ip link help"

2012-12-15 Thread zwu . kernel
From: Zhi Yong Wu The new type 'vxlan' is added in the output of "ip link help" Signed-off-by: Zhi Yong Wu --- ip/iplink.c |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/ip/iplink.c b/ip/iplink.c index d73c705..5ff8f85 100644 --- a/ip/iplink.c +++ b/ip/iplink.c @@

[PATCH] ext4: remove some unused code lines

2012-12-02 Thread zwu . kernel
From: Zhi Yong Wu In ext4_ext_in_cache(), some codes are redundant, this patch will remove them. Reviewed-by: Zheng Liu Signed-off-by: Zhi Yong Wu --- fs/ext4/extents.c |2 -- 1 files changed, 0 insertions(+), 2 deletions(-) diff --git a/fs/ext4/extents.c b/fs/ext4/extents.c index 7011

[PATCH] ext4: remove some unused code lines

2012-11-29 Thread zwu . kernel
From: Zhi Yong Wu Signed-off-by: Zhi Yong Wu --- fs/ext4/extents.c |2 -- 1 files changed, 0 insertions(+), 2 deletions(-) diff --git a/fs/ext4/extents.c b/fs/ext4/extents.c index 7011ac9..43ec639 100644 --- a/fs/ext4/extents.c +++ b/fs/ext4/extents.c @@ -2156,7 +2156,6 @@ ext4_ext_in_cach

[PATCH v1 hot_track 07/16] vfs: add map info update function

2012-11-16 Thread zwu . kernel
From: Zhi Yong Wu Signed-off-by: Zhi Yong Wu --- fs/hot_tracking.c | 67 + 1 files changed, 67 insertions(+), 0 deletions(-) diff --git a/fs/hot_tracking.c b/fs/hot_tracking.c index 3cb14e2..446fbd4 100644 --- a/fs/hot_tracking.c +++ b/fs/h

[PATCH v1 hot_track 04/16] vfs: add two map arrays

2012-11-16 Thread zwu . kernel
From: Zhi Yong Wu Adds two map arrays which contains a lot of list and is used to efficiently look up the data temperature of a file or its ranges. In each list of map arrays, the array node will keep track of temperature info. Signed-off-by: Zhi Yong Wu --- fs/hot_tracking.c|

[PATCH v1 hot_track 08/16] vfs: add aging function

2012-11-16 Thread zwu . kernel
From: Zhi Yong Wu Signed-off-by: Zhi Yong Wu --- fs/hot_tracking.c | 49 + fs/hot_tracking.h |6 ++ 2 files changed, 55 insertions(+), 0 deletions(-) diff --git a/fs/hot_tracking.c b/fs/hot_tracking.c index 446fbd4..304028d 100644 --- a

[PATCH v1 hot_track 01/16] vfs: introduce some data structures

2012-11-16 Thread zwu . kernel
From: Zhi Yong Wu One root structure hot_info is defined, is hooked up in super_block, and will be used to hold radix tree root, hash list root and some other information, etc. Adds hot_inode_tree struct to keep track of frequently accessed files, and be keyed by {inode, offset}. Trees contai

[PATCH v1 hot_track 11/16] vfs: register one shrinker

2012-11-16 Thread zwu . kernel
From: Zhi Yong Wu Register a shrinker to control the amount of memory that is used in tracking hot regions - if we are throwing inodes out of memory due to memory pressure, we most definitely are going to need to reduce the amount of memory the tracking code is using, even if it means losing us

[PATCH v1 hot_track 13/16] vfs: add debugfs support

2012-11-16 Thread zwu . kernel
From: Zhi Yong Wu Add a /sys/kernel/debug/hot_track// directory for each volume that contains two files. The first, `inode_stats', contains the heat information for inodes that have been brought into the hot data map structures. The second, `range_stats', contains similar information for subfil

[PATCH v1 hot_track 16/16] vfs: add documentation

2012-11-16 Thread zwu . kernel
From: Zhi Yong Wu Add one doc for VFS hot tracking feature Signed-off-by: Zhi Yong Wu --- Documentation/filesystems/00-INDEX |2 + Documentation/filesystems/hot_tracking.txt | 263 2 files changed, 265 insertions(+), 0 deletions(-) create mode 10064

[PATCH v1 hot_track 14/16] proc: add two hot_track proc files

2012-11-16 Thread zwu . kernel
From: Zhi Yong Wu Add two proc files hot-kick-time and hot-update-delay under the dir /proc/sys/fs/ in order to turn TIME_TO_KICK and HEAT_UPDATE_DELAY into be tunable. Signed-off-by: Zhi Yong Wu --- fs/hot_tracking.c| 12 +--- fs/hot_tracking.h|9 --

[PATCH v1 hot_track 15/16] btrfs: add hot tracking support

2012-11-16 Thread zwu . kernel
From: Zhi Yong Wu Introduce one new mount option '-o hot_track', and add its parsing support. Its usage looks like: mount -o hot_track mount -o nouser,hot_track mount -o nouser,hot_track,loop mount -o hot_track,nouser Reviewed-by: David Sterba Signed-off-by: Zhi Yong Wu ---

[PATCH v1 hot_track 10/16] vfs: add FS hot type support

2012-11-16 Thread zwu . kernel
From: Zhi Yong Wu Introduce one way to enable that specific FS can inject its own hot tracking type. Signed-off-by: Zhi Yong Wu --- fs/hot_tracking.c| 43 +++-- fs/hot_tracking.h|1 - include/linux/fs.h |1 + inc

[PATCH v1 hot_track 12/16] vfs: add one ioctl interface

2012-11-16 Thread zwu . kernel
From: Zhi Yong Wu FS_IOC_GET_HEAT_INFO: return a struct containing the various metrics collected in hot_freq_data structs, and also return a calculated data temperature based on those metrics. Optionally, retrieve the temperature from the hot data hash list instead of recalculating it. Signed-

[PATCH v1 hot_track 09/16] vfs: add one work queue

2012-11-16 Thread zwu . kernel
From: Zhi Yong Wu Add a per-superblock workqueue and a delayed_work to run periodic work to update map info on each superblock. Signed-off-by: Zhi Yong Wu --- fs/hot_tracking.c| 81 ++ fs/hot_tracking.h|3 ++ include/linux

[PATCH v1 hot_track 06/16] vfs: add temp calculation function

2012-11-16 Thread zwu . kernel
From: Zhi Yong Wu Signed-off-by: Zhi Yong Wu --- fs/hot_tracking.c | 74 + fs/hot_tracking.h | 21 +++ 2 files changed, 95 insertions(+), 0 deletions(-) diff --git a/fs/hot_tracking.c b/fs/hot_tracking.c index bd2c353..3cb14e2

[PATCH v1 hot_track 05/16] vfs: add hooks to enable hot tracking

2012-11-16 Thread zwu . kernel
From: Zhi Yong Wu Miscellaneous features that implement hot data tracking and generally make the hot data functions a bit more friendly. Signed-off-by: Zhi Yong Wu --- fs/direct-io.c |6 ++ mm/filemap.c|6 ++ mm/page-writeback.c | 12 mm/readahead.

[PATCH v1 hot_track 03/16] vfs: add I/O frequency update function

2012-11-16 Thread zwu . kernel
From: Zhi Yong Wu Add some util helpers to update access frequencies for one file or its range. Signed-off-by: Zhi Yong Wu --- fs/hot_tracking.c| 178 ++ fs/hot_tracking.h|5 + include/linux/hot_tracking.h |4 + 3 files

[PATCH v1 hot_track 02/16] vfs: add init and cleanup functions

2012-11-16 Thread zwu . kernel
From: Zhi Yong Wu Add initialization function to create some key data structures when hot tracking is enabled; Clean up them when hot tracking is disabled Signed-off-by: Zhi Yong Wu --- fs/hot_tracking.c| 115 ++ include/linux/fs.h

[PATCH v1 resend hot_track 00/16] vfs: hot data tracking

2012-11-16 Thread zwu . kernel
From: Zhi Yong Wu HI, guys, Any comments or ideas are appreciated, thanks. NOTE: The patchset can be obtained via my kernel dev git on github: git://github.com/wuzhy/kernel.git hot_tracking If you're interested, you can also review them via https://github.com/wuzhy/kernel/commits/hot_tra

[PATCH v1 hot_track 01/18] vfs: introduce some data structures

2012-11-08 Thread zwu . kernel
From: Zhi Yong Wu One root structure hot_info is defined, is hooked up in super_block, and will be used to hold radix tree root, hash list root and some other information, etc. Adds hot_inode_tree struct to keep track of frequently accessed files, and be keyed by {inode, offset}. Trees contai

[PATCH v1 hot_track 05/18] vfs: add hooks to enable hot tracking

2012-11-08 Thread zwu . kernel
From: Zhi Yong Wu Miscellaneous features that implement hot data tracking and generally make the hot data functions a bit more friendly. Signed-off-by: Zhi Yong Wu --- fs/direct-io.c |6 ++ mm/filemap.c|6 ++ mm/page-writeback.c | 12 mm/readahead.

[PATCH v1 hot_track 07/18] vfs: add map info update function

2012-11-08 Thread zwu . kernel
From: Zhi Yong Wu Signed-off-by: Zhi Yong Wu --- fs/hot_tracking.c | 67 + fs/hot_tracking.h | 21 2 files changed, 88 insertions(+), 0 deletions(-) diff --git a/fs/hot_tracking.c b/fs/hot_tracking.c index 3fd6255..4b143a

[PATCH v1 hot_track 08/18] vfs: add aging function

2012-11-08 Thread zwu . kernel
From: Zhi Yong Wu Signed-off-by: Zhi Yong Wu --- fs/hot_tracking.c | 56 + fs/hot_tracking.h |6 + 2 files changed, 62 insertions(+), 0 deletions(-) diff --git a/fs/hot_tracking.c b/fs/hot_tracking.c index 4b143a4..e85eaa6 100644 --

[PATCH v1 hot_track 10/18] vfs: add FS hot type support

2012-11-08 Thread zwu . kernel
From: Zhi Yong Wu Introduce one way to enable that specific FS can inject its own hot tracking type. Signed-off-by: Zhi Yong Wu --- fs/hot_tracking.c| 43 +++-- fs/hot_tracking.h|1 - include/linux/fs.h |1 + inc

[PATCH v1 hot_track 09/18] vfs: add one work queue

2012-11-08 Thread zwu . kernel
From: Zhi Yong Wu Add a per-superblock workqueue and a delayed_work to run periodic work to update map info on each superblock. Signed-off-by: Zhi Yong Wu --- fs/hot_tracking.c| 85 ++ fs/hot_tracking.h|3 + include/linux/

[PATCH v1 hot_track 13/18] vfs: add debugfs support

2012-11-08 Thread zwu . kernel
From: Zhi Yong Wu Add a /sys/kernel/debug/hot_track// directory for each volume that contains two files. The first, `inode_stats', contains the heat information for inodes that have been brought into the hot data map structures. The second, `range_stats', contains similar information for subfil

[PATCH v1 hot_track 14/18] procfs: add two hot_track proc files

2012-11-08 Thread zwu . kernel
From: Zhi Yong Wu Add two proc files hot-kick-time and hot-update-delay under the dir /proc/sys/fs/ in order to turn TIME_TO_KICK and HEAT_UPDATE_DELAY into be tunable. Signed-off-by: Zhi Yong Wu --- fs/hot_tracking.c| 12 +--- fs/hot_tracking.h|9 --

[PATCH v1 hot_track 16/18] xfs: add hot tracking support

2012-11-08 Thread zwu . kernel
From: Dave Chinner Connect up the VFS hot tracking support so XFS filesystems can make use of it. Signed-off-by: Dave Chinner --- fs/xfs/xfs_mount.h |1 + fs/xfs/xfs_super.c | 16 2 files changed, 17 insertions(+), 0 deletions(-) diff --git a/fs/xfs/xfs_mount.h b/fs/x

[PATCH v1 hot_track 18/18] vfs: add documentation

2012-11-08 Thread zwu . kernel
From: Zhi Yong Wu Add one doc for VFS hot tracking feature Signed-off-by: Zhi Yong Wu --- Documentation/filesystems/00-INDEX |2 + Documentation/filesystems/hot_tracking.txt | 263 2 files changed, 265 insertions(+), 0 deletions(-) create mode 10064

[PATCH v1 hot_track 00/18] vfs: hot data tracking

2012-11-08 Thread zwu . kernel
From: Zhi Yong Wu HI, guys, Any comments or ideas are appreciated, thanks. NOTE: The patchset can be obtained via my kernel dev git on github: g...@github.com:wuzhy/kernel.git hot_tracking If you're interested, you can also review them via https://github.com/wuzhy/kernel/commits/hot_trac

[PATCH v1 hot_track 17/18] ext4: add hot tracking support

2012-11-08 Thread zwu . kernel
From: Zheng Liu Define a new mount option to add VFS hot tracking support in order to use it in ext4. CC: Zhi Yong Wu Signed-off-by: Zheng Liu --- fs/ext4/ext4.h |3 +++ fs/ext4/super.c | 13 - 2 files changed, 15 insertions(+), 1 deletions(-) diff --git a/fs/ext4/ext4.h

[PATCH v1 hot_track 15/18] btrfs: add hot tracking support

2012-11-08 Thread zwu . kernel
From: Zhi Yong Wu Introduce one new mount option '-o hot_track', and add its parsing support. Its usage looks like: mount -o hot_track mount -o nouser,hot_track mount -o nouser,hot_track,loop mount -o hot_track,nouser Reviewed-by: David Sterba Signed-off-by: Zhi Yong Wu ---

[PATCH v1 hot_track 11/18] vfs: register one shrinker

2012-11-08 Thread zwu . kernel
From: Zhi Yong Wu Register a shrinker to control the amount of memory that is used in tracking hot regions - if we are throwing inodes out of memory due to memory pressure, we most definitely are going to need to reduce the amount of memory the tracking code is using, even if it means losing us

[PATCH v1 hot_track 12/18] vfs: add one ioctl interface

2012-11-08 Thread zwu . kernel
From: Zhi Yong Wu FS_IOC_GET_HEAT_INFO: return a struct containing the various metrics collected in hot_freq_data structs, and also return a calculated data temperature based on those metrics. Optionally, retrieve the temperature from the hot data hash list instead of recalculating it. Signed-

[PATCH v1 hot_track 04/18] vfs: add two map info arrays

2012-11-08 Thread zwu . kernel
From: Zhi Yong Wu Adds two map arrays which contains a lot of list and is used to efficiently look up the data temperature of a file or its ranges. In each list of map arrays, the array node will keep track of temperature info. Signed-off-by: Zhi Yong Wu --- fs/hot_tracking.c|

[PATCH v1 hot_track 06/18] vfs: add temp calculation function

2012-11-08 Thread zwu . kernel
From: Zhi Yong Wu Signed-off-by: Zhi Yong Wu --- fs/hot_tracking.c | 74 + 1 files changed, 74 insertions(+), 0 deletions(-) diff --git a/fs/hot_tracking.c b/fs/hot_tracking.c index 7101b73..3fd6255 100644 --- a/fs/hot_tracking.c +++ b/fs/h

[PATCH v1 hot_track 03/18] vfs: add I/O frequency update function

2012-11-08 Thread zwu . kernel
From: Zhi Yong Wu Add some util helpers to update access frequencies for one file or its range. Signed-off-by: Zhi Yong Wu --- fs/hot_tracking.c| 174 ++ fs/hot_tracking.h|5 + include/linux/hot_tracking.h |4 + 3 files

[PATCH v1 hot_track 02/18] vfs: add init and cleanup functions

2012-11-08 Thread zwu . kernel
From: Zhi Yong Wu Add initialization function to create some key data structures when hot tracking is enabled; Clean up them when hot tracking is disabled Signed-off-by: Zhi Yong Wu --- fs/hot_tracking.c| 124 ++ include/linux/fs.h

[RFC v4+ hot_track 01/19] vfs: introduce private radix tree structures

2012-10-28 Thread zwu . kernel
From: Zhi Yong Wu One root structure hot_info is defined, is hooked up in super_block, and will be used to hold radix tree root, hash list root and some other information, etc. Adds hot_inode_tree struct to keep track of frequently accessed files, and be keyed by {inode, offset}. Trees contai

  1   2   >