1. 03 Sep, 2014 5 commits
    • Andrey Vagin's avatar
      fsnotify: merge fanotify mark image into fanotify image (v3) · c4a8dd17
      Andrey Vagin authored
      All marks are collected in a list and then they are written in
      the fanotify image as a repeated field.
      
      This images merge reduces the amount of image files criu
      generates and may simplify the fix of mentioned above issue
      
      v2: don't leak fe.mark_entry
      v3: save the original order of marks
      Signed-off-by: 's avatarAndrey Vagin <avagin@openvz.org>
      Signed-off-by: 's avatarPavel Emelyanov <xemul@parallels.com>
      c4a8dd17
    • Andrey Vagin's avatar
      fsnotify: merge inotify wd image into inotify image (v4) · a10907a1
      Andrey Vagin authored
      All watch descriptors are collected in a list and then
      they are written in inotify image as a repeated field.
      
      This images merge reduces the amount of image files criu
      generates and may simplify the fix of mentioned above issue.
      
      v2: use free_inotify_wd_entry() instead of xfree in dump_one_inotify()
      v3: don't leak ie.wd_entry
      v4: save the original order of watchers
      Signed-off-by: 's avatarAndrey Vagin <avagin@openvz.org>
      Signed-off-by: 's avatarPavel Emelyanov <xemul@parallels.com>
      a10907a1
    • Pavel Emelyanov's avatar
      service: Add ability to inherit page server socket · 7058714f
      Pavel Emelyanov authored
      The swrk action is turning out to be a cool thing. We can
      spawn criu with swrk action with some FD being open, then
      ask for dump/pre-dump/page-server telling it that some
      descriptor it needs is "out there".
      
      This patch lets us specify that the page server communication
      channel is already in criu's fdtable.
      
      TODO: teach regular service to accept fd via service socket.
      Signed-off-by: 's avatarPavel Emelyanov <xemul@parallels.com>
      7058714f
    • Cyrill Gorcunov's avatar
      plugin: Rework plugins API, v2 · 3146f583
      Cyrill Gorcunov authored
      Here we define new api to be used in plugins.
      
       - Plugin should provide a descriptor with help of
         CR_PLUGIN_REGISTER macro, or in case if plugin require
         no init/exit functions -- with CR_PLUGIN_REGISTER_DUMMY.
      
       - Plugin should define a plugin hook with help of
         CR_PLUGIN_REGISTER_HOOK macro.
      
       - Now init/exit functions of plugins takes @stage
         argument which tells plugin which stage of criu
         it's been called on dump/restore. For exit it
         also takes @ret which allows plugin to know if
         something went wrong and it needs to cleanup
         own resources.
      
      The idea behind is to not limit plugins authors with names
      of functions they might need to use for particular hook.
      
      Such new API deprecates olds plugins structure but to keep
      backward compatibility we will provide a tiny layer of
      additional code to support old plugins for at least a couple
      of release cycles.
      
      For example a trivial plugin might look like
      
       | #include <sys/types.h>
       | #include <sys/stat.h>
       | #include <fcntl.h>
       | #include <libgen.h>
       | #include <errno.h>
       |
       | #include <sys/socket.h>
       | #include <linux/un.h>
       |
       | #include <stdio.h>
       | #include <stdlib.h>
       | #include <string.h>
       | #include <unistd.h>
       |
       | #include "criu-plugin.h"
       | #include "criu-log.h"
       |
       | static int dump_ext_file(int fd, int id)
       | {
       |	pr_info("dump_ext_file: fd %d id %d\n", fd, id);
       |	return 0;
       | }
       |
       | CR_PLUGIN_REGISTER_DUMMY("trivial")
       | CR_PLUGIN_REGISTER_HOOK(CR_PLUGIN_HOOK__DUMP_EXT_FILE, dump_ext_file)
      Signed-off-by: 's avatarCyrill Gorcunov <gorcunov@openvz.org>
      Acked-by: 's avatarAndrew Vagin <avagin@parallels.com>
      Signed-off-by: 's avatarPavel Emelyanov <xemul@parallels.com>
      3146f583
    • Cyrill Gorcunov's avatar
      plugin: Beautify criu-plugin.h · b8587117
      Cyrill Gorcunov authored
       - use custom multiline comments style
       - ending #endif comment
      Signed-off-by: 's avatarCyrill Gorcunov <gorcunov@openvz.org>
      Acked-by: 's avatarAndrew Vagin <avagin@parallels.com>
      Signed-off-by: 's avatarPavel Emelyanov <xemul@parallels.com>
      b8587117
  2. 02 Sep, 2014 28 commits
  3. 01 Sep, 2014 1 commit
    • Pavel Emelyanov's avatar
      criu: Version 1.3 · c716f6b8
      Pavel Emelyanov authored
      It's been a long delay since 1.2, but we did it :)
      
      The greatest new acheivement is finally support for Docker
      and LXC on CRIU side. Some work is still to be don on the
      other, but here in CRIU everything is ready.
      
      Another notable things are AArch64 support and, of course,
      a lot of bugfixes.
      
      Further plan is to make releases be not so rare :)
      Signed-off-by: 's avatarPavel Emelyanov <xemul@parallels.com>
      c716f6b8
  4. 29 Aug, 2014 2 commits
  5. 28 Aug, 2014 2 commits
  6. 27 Aug, 2014 2 commits