git: HAMMER VFS - Limit queued I/O during flush

看板DFBSD_commit作者時間15年前 (2010/08/16 05:01), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
commit ba298df11258371e19c97d2843e37e503b9459c3 Author: Matthew Dillon <dillon@apollo.backplane.com> Date: Sun Aug 15 13:19:00 2010 -0700 HAMMER VFS - Limit queued I/O during flush * Add sysctl vfs.hammer.limit_running_io and preset to a reasonable value. * The flusher was queueing all dirty buffers all at once, sometimes leading to 80MB+ worth of I/O. This blew away dm_crypto (caused it to exceed its malloc limit), and also results in generally poor kernel memory behavior. Limit the amount of in-flight I/O allowed during a flush to ~10MB or so, which should be plenty. Summary of changes: sys/vfs/hammer/hammer.h | 5 ++++- sys/vfs/hammer/hammer_flusher.c | 2 ++ sys/vfs/hammer/hammer_io.c | 28 +++++++++++++++++++++++----- sys/vfs/hammer/hammer_vfsops.c | 16 ++++++++++++++++ 4 files changed, 45 insertions(+), 6 deletions(-) http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/ba298df11258371e19c97d2843e37e503b9459c3 -- DragonFly BSD source repository
文章代碼(AID): #1CQ5MH1y (DFBSD_commit)