[sheepdog] [PATCH v6 0/2] move sockfd to libsheepdog
Hitoshi Mitake
mitake.hitoshi at lab.ntt.co.jp
Wed Jul 31 04:43:13 CEST 2013
We will make big changes in the near future:
1. Improve some subcommands of collie for more
scalability. e.g. collie vdi list takes long time on a
sheepdog cluster which consists many VDIs.
2. Let sheep and collie handle EMFILE gracefully. We will implement
wrappers for functions which create new fd (e.g. xopen() for
open()).
Before doing them, moving sockfd cache from sheep to libsheepdog is
required. This patchset does this moving and prepares for the above
changes.
v6:
- revive revalidate_node() because it is required for handling corner
case of sheep and doesn't harm collie's behavior
- trivial cleaning
v5:
- make the workqueue for cachefd growth an internal thing in
lib/sockfd_cache.c
- remove revalidate_node(), because this relies on the assumption of
sheep
- better naming of functions
- misc cleanings
v4:
- remove the redundant function, collie_exec_req_nid()
v3:
- rebase on the latest master
v2:
- use git format-patch -C for detecting copy
Hitoshi Mitake (2):
lib: move sockfd cache from sheep to lib
collie: let collie use sockfd cache
collie/collie.c | 6 +
collie/common.c | 24 +-
include/Makefile.am | 3 +-
include/internal_proto.h | 2 +
include/sockfd_cache.h | 22 ++
lib/Makefile.am | 2 +-
{sheep => lib}/sockfd_cache.c | 125 +++++-----
sheep/gateway.c | 10 +-
sheep/group.c | 2 +-
sheep/sheep.c | 9 +-
sheep/sheep_priv.h | 12 +-
sheep/sockfd_cache.c | 509 +----------------------------------------
12 files changed, 125 insertions(+), 601 deletions(-)
create mode 100644 include/sockfd_cache.h
copy {sheep => lib}/sockfd_cache.c (89%)
--
1.7.10.4
More information about the sheepdog
mailing list