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

From: zwu . kernel
Date: Thu Nov 08 2012 - 04:04:05 EST


From: Zhi Yong Wu <wuzhy@xxxxxxxxxxxxxxxxxx>

HI, guys,

Any comments or ideas are appreciated, thanks.

NOTE:

The patchset can be obtained via my kernel dev git on github:
git@xxxxxxxxxx:wuzhy/kernel.git hot_tracking
If you're interested, you can also review them via
https://github.com/wuzhy/kernel/commits/hot_tracking

For more info, please check hot_tracking.txt in Documentation

TODO List:

1.) Need to do scalability or performance tests. - Required
2.) Need one simpler but efficient temp calculation function
3.) How to save the file temperature among the umount to be able to
preserve the file tempreture after reboot - Optional

Changelog:

- Embed struct hot_type in struct file_system_type [Darrick J. Wong]
- Cleanup Some issues [David Sterba]
- Use a static hot debugfs root [Greg KH]
- Rewritten debugfs support based on seq_file operation. [Dave Chinner]
- Refactored workqueue support. [Dave Chinner]
- Turn some Micro into be tunable [Zhiyong, Zheng Liu]
TIME_TO_KICK, and HEAT_UPDATE_DELAY
- Introduce hot func registering framework [Zhiyong]
- Remove global variable for hot tracking [Zhiyong]
- Add xfs hot tracking support [Dave Chinner]
- Add ext4 hot tracking support [Zheng Liu]
- Cleanedup a lot of other issues [Dave Chinner]
- Converted to Radix trees, not RB-tree [Zhiyong, Dave Chinner]
- Added memory shrinker [Dave Chinner]
- Converted to one workqueue to update map info periodically [Dave Chinner]
- Cleanedup a lot of other issues [Dave Chinner]
- Reduce new files and put all in fs/hot_tracking.[ch] [Dave Chinner]
- Add btrfs hot tracking support [Zhiyong]
- The first three patches can probably just be flattened into one.
[Marco Stornelli , Dave Chinner]

Dave Chinner (1):
xfs: add hot tracking support

Zheng Liu (1):
ext4: add hot tracking support

Zhi Yong Wu (16):
vfs: introduce some data structures
vfs: add init and cleanup functions
vfs: add I/O frequency update function
vfs: add two map info arrays
vfs: add hooks to enable hot tracking
vfs: add temp calculation function
vfs: add map info update function
vfs: add aging function
vfs: add one work queue
vfs: add FS hot type support
vfs: register one shrinker
vfs: add one ioctl interface
vfs: add debugfs support
procfs: add two hot_track proc files
btrfs: add hot tracking support
vfs: add documentation

Documentation/filesystems/00-INDEX | 2 +
Documentation/filesystems/hot_tracking.txt | 263 ++++++
fs/Makefile | 2 +-
fs/btrfs/ctree.h | 1 +
fs/btrfs/super.c | 22 +-
fs/compat_ioctl.c | 5 +
fs/dcache.c | 2 +
fs/direct-io.c | 6 +
fs/ext4/ext4.h | 3 +
fs/ext4/super.c | 13 +-
fs/hot_tracking.c | 1321 ++++++++++++++++++++++++++++
fs/hot_tracking.h | 53 ++
fs/ioctl.c | 74 ++
fs/xfs/xfs_mount.h | 1 +
fs/xfs/xfs_super.c | 16 +
include/linux/fs.h | 5 +
include/linux/hot_tracking.h | 146 +++
kernel/sysctl.c | 14 +
mm/filemap.c | 6 +
mm/page-writeback.c | 12 +
mm/readahead.c | 7 +
21 files changed, 1971 insertions(+), 3 deletions(-)
create mode 100644 Documentation/filesystems/hot_tracking.txt
create mode 100644 fs/hot_tracking.c
create mode 100644 fs/hot_tracking.h
create mode 100644 include/linux/hot_tracking.h

--
1.7.6.5

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/