[CRIU] [PATCH 00/11] Add support for flock&posix file locks' dump/restore
Gu Zheng
guz.fnst at cn.fujitsu.com
Thu Jan 17 20:48:33 EST 2013
Hi Huang,
Very nice work, I(Zheng Gu) have departed from Huawei, and join in
FNST(cn.fujitsu.com), my new email is <guz.fnst at cn.fujitsu.com>.
Thanks,
Zheng Gu
On 01/17/2013 04:09 PM, Qiang Huang wrote:
> It's hard to do it perfect, because we can not guarantee that once we
> terminated the processes we've dumped and the locks would be dropped too.
> We can't deal issues like tasks beyond pstree would use flocks hold by
> dumped tasks yet.
>
> Right now we assume that all flock users are all taken into dump, so we
> only did simple check:
> If we didn't set handle file locks option, then any file locks hold by
> tasks in our pstree is not allowed.
>
> We might have to do the check that file locks dump/restore would only be
> used by container dumping in the future.
>
> Anyway, thanks to the ptrace-seize machanism, the kernel will unblock
> task from flock and will stop it in another place when we ptrace-seize
> it. So we can aviod the blocked file lock problems, makes the work
> simpler.
>
> This work is based on Zheng Gu's first attempt on:
> http://lists.openvz.org/pipermail/criu/2012-November/005646.html
>
> Changelog since the initial version:
> a. Collect all file lock info before dump.
> b. Parse /proc/locks in proc_parse.c.
> c. Check the file lock option when some tasks hold file locks.
> d. Add zdtm test cases for file lock.
> e. Code organization optimization.
> f. Some bugfix, pr_info and comments.
>
> Qiang Huang (11):
> crtools: Add --file-locks option
> protobuf: add a new description for saving file-lock
> crtools: add a callback to show filelocks-%d.img
> crtools: add image contents for filelocks
> pstree: add a function to check if a task is in pstree
> crtools: collect and check file locks
> crtools: dump flock&posix file locks
> crtools: restore flock&posix file locks
> doc: update the manpage document for file lock c/r
> zdtm: add posix file lock's test case
> zdtm: add flock file lock's test case
>
> Documentation/crtools.txt | 5 +
> Makefile | 1 +
> cr-dump.c | 177 +++++++++++++++++++++++++++++++++
> cr-restore.c | 4 +
> cr-show.c | 5 +
> crtools.c | 7 +-
> file-lock.c | 141 ++++++++++++++++++++++++++
> image.c | 1 +
> include/crtools.h | 3 +
> include/file-lock.h | 53 ++++++++++
> include/image.h | 1 +
> include/proc_parse.h | 1 +
> include/protobuf.h | 1 +
> include/pstree.h | 1 +
> proc_parse.c | 95 ++++++++++++++++++
> protobuf.c | 2 +
> protobuf/Makefile | 1 +
> protobuf/file-lock.proto | 8 ++
> pstree.c | 12 +++
> test/zdtm.sh | 12 ++-
> test/zdtm/live/static/Makefile | 2 +
> test/zdtm/live/static/file_locks00.c | 179 ++++++++++++++++++++++++++++++++++
> test/zdtm/live/static/file_locks01.c | 141 ++++++++++++++++++++++++++
> 23 files changed, 851 insertions(+), 2 deletions(-)
> create mode 100644 file-lock.c
> create mode 100644 include/file-lock.h
> create mode 100644 protobuf/file-lock.proto
> create mode 100644 test/zdtm/live/static/file_locks00.c
> create mode 100644 test/zdtm/live/static/file_locks01.c
>
>
> _______________________________________________
> CRIU mailing list
> CRIU at openvz.org
> http://lists.openvz.org/mailman/listinfo/criu
>
More information about the CRIU
mailing list