[sheepdog] [PATCH 0/2] avoid heavy disk I/O in the main thread

Hitoshi Mitake mitake.hitoshi at lab.ntt.co.jp
Thu Oct 9 08:16:24 CEST 2014


Recently, Philip and Tsuji-san reported a problem of critical request
block caused by recovery process. I found a problematic behavior
purge_directory() of libsheepdog which can cause long stop of the main
thread. It would be a root cause of the problem. This patchset solves
it.

Hitoshi Mitake (2):
  lib: add an interface for registering workqueue for libsheepdog
  lib: call rmdir(2) and unlink(2) in worker threads during purging
    directory

 include/util.h |  3 +++
 lib/util.c     | 80 +++++++++++++++++++++++++++++++++++++++++++++++++++-------
 sheep/sheep.c  |  2 ++
 3 files changed, 76 insertions(+), 9 deletions(-)

-- 
1.9.1




More information about the sheepdog mailing list