From 71898205bdd9b4e69b6e4317a41cd64ea25376aa367559cf6dd84ccc0a86919b Mon Sep 17 00:00:00 2001 From: Takashi Iwai Date: Fri, 15 Oct 2021 16:18:45 +0000 Subject: [PATCH 1/2] Accepting request 925414 from home:tiwai:branches:devel:tools - Update to criu 3.16.1: see details at https://criu.org/Download/criu/3.16.1 Bugfixes: * Switch criu-ns helper script from unversioned 'python' to 'python3' for easier distribution packaging Improvements: * Add '--join-ns' interface to libcriu to allow joining namespaces via libcriu like CLI and RPC already allow - Change Source URL to github - Update to criu 3.16: see details at https://criu.org/Download/criu/3.16 New features: * criu-ns helper script * support checkpoint/restore of stacked apparmor profiles * add nftables based network locking/unlocking * allow restoring of precreated veth devices Improvements: * better support for restoring containers into existing pods * pidfd based pid reuse detection for RPC clients * license change for all files in the images/ directory to MIT * use clang-format for automatic code indentation - Drop 0002-Fix-build-with-nftables-installed-in-different-direc.patch as obsoleted OBS-URL: https://build.opensuse.org/request/show/925414 OBS-URL: https://build.opensuse.org/package/show/devel:tools/criu?expand=0&rev=105 --- ...ftables-installed-in-different-direc.patch | 11 +- criu-3.15.tar.bz2 | 3 - criu-3.16.1.tar.gz | 3 + criu-protobuf-c-1.4-underscore-fix.patch | 147 ------------------ criu.changes | 31 ++++ criu.spec | 10 +- 6 files changed, 41 insertions(+), 164 deletions(-) delete mode 100644 criu-3.15.tar.bz2 create mode 100644 criu-3.16.1.tar.gz delete mode 100644 criu-protobuf-c-1.4-underscore-fix.patch diff --git a/0002-Fix-build-with-nftables-installed-in-different-direc.patch b/0002-Fix-build-with-nftables-installed-in-different-direc.patch index 3c9a274..8fdd5f4 100644 --- a/0002-Fix-build-with-nftables-installed-in-different-direc.patch +++ b/0002-Fix-build-with-nftables-installed-in-different-direc.patch @@ -7,19 +7,17 @@ The cflags needs to be passed to the build test. Signed-off-by: Takashi Iwai --- - Makefile.config | 9 ++++++--- + Makefile.config | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) -diff --git a/Makefile.config b/Makefile.config -index 3d99e680be7f..720df0b11c9e 100644 --- a/Makefile.config +++ b/Makefile.config @@ -30,13 +30,16 @@ else endif ifeq ($(call pkg-config-check,libnftables),y) -+ CFLAGS_NFTABLES := $(shell pkg-config --cflags libnftables) - LIB_NFTABLES := $(shell pkg-config --libs libnftables) ++ CFLAGS_NFTABLES := $(shell $(PKG_CONFIG) --cflags libnftables) + LIB_NFTABLES := $(shell $(PKG_CONFIG) --libs libnftables) - ifeq ($(call try-cc,$(FEATURE_TEST_NFTABLES_LIB_API_0),$(LIB_NFTABLES)),true) + ifeq ($(call try-cc,$(FEATURE_TEST_NFTABLES_LIB_API_0),$(CFLAGS_NFTABLES) $(LIB_NFTABLES)),true) LIBS_FEATURES += $(LIB_NFTABLES) @@ -42,6 +40,3 @@ index 3d99e680be7f..720df0b11c9e 100644 FEATURES_LIST := TCP_REPAIR STRLCPY STRLCAT PTRACE_PEEKSIGINFO \ SETPROCTITLE_INIT MEMFD TCP_REPAIR_WINDOW FSCONFIG MEMFD_CREATE --- -2.26.2 - diff --git a/criu-3.15.tar.bz2 b/criu-3.15.tar.bz2 deleted file mode 100644 index 4087cb7..0000000 --- a/criu-3.15.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:447cc1f350da94d190bcfda753695bf34ce91eee969df8263fcc33d08990a025 -size 913904 diff --git a/criu-3.16.1.tar.gz b/criu-3.16.1.tar.gz new file mode 100644 index 0000000..4d4584d --- /dev/null +++ b/criu-3.16.1.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:13d6e2f99a34abf83ec2b9777af5bd069e739bf38582857c7f4c19a355a2b0b5 +size 1228535 diff --git a/criu-protobuf-c-1.4-underscore-fix.patch b/criu-protobuf-c-1.4-underscore-fix.patch deleted file mode 100644 index 2dc148e..0000000 --- a/criu-protobuf-c-1.4-underscore-fix.patch +++ /dev/null @@ -1,147 +0,0 @@ -From fec1925a7ed89ce85c991ed27aa82b22bf5a8a8c Mon Sep 17 00:00:00 2001 -From: Takashi Iwai -Date: Wed, 26 May 2021 18:22:24 +0200 -Subject: [PATCH] Fix struct name incompatibilities with protobuf-c 1.4 - -Since protobuf-c 1.4, the generated struct names have no longer the -leading underscore. - -Signed-off-by: Takashi Iwai ---- - criu/include/irmap.h | 6 +++--- - criu/include/parasite-syscall.h | 10 +++++----- - criu/include/pstree.h | 2 +- - criu/include/rst_info.h | 4 ++-- - criu/include/shmem.h | 2 +- - criu/mem.c | 2 +- - lib/c/criu.h | 2 +- - 7 files changed, 14 insertions(+), 14 deletions(-) - -diff --git a/criu/include/irmap.h b/criu/include/irmap.h -index 033f71e3722a..53479e8b506a 100644 ---- a/criu/include/irmap.h -+++ b/criu/include/irmap.h -@@ -1,13 +1,13 @@ - #ifndef __CR_IRMAP__H__ - #define __CR_IRMAP__H__ - char *irmap_lookup(unsigned int s_dev, unsigned long i_ino); --struct _FhEntry; -+struct FhEntry; - int irmap_queue_cache(unsigned int dev, unsigned long ino, -- struct _FhEntry *fh); -+ struct FhEntry *fh); - int irmap_predump_prep(void); - int irmap_predump_run(void); - int check_open_handle(unsigned int s_dev, unsigned long i_ino, -- struct _FhEntry *f_handle); -+ struct FhEntry *f_handle); - int irmap_load_cache(void); - int irmap_scan_path_add(char *path); - #endif -diff --git a/criu/include/parasite-syscall.h b/criu/include/parasite-syscall.h -index c86a724fd163..38c7675ff7b9 100644 ---- a/criu/include/parasite-syscall.h -+++ b/criu/include/parasite-syscall.h -@@ -11,8 +11,8 @@ struct parasite_dump_misc; - struct parasite_drain_fd; - struct vm_area_list; - struct pstree_item; --struct _CredsEntry; --struct _CoreEntry; -+struct CredsEntry; -+struct CoreEntry; - struct list_head; - struct cr_imgset; - struct fd_opts; -@@ -31,11 +31,11 @@ extern int parasite_dump_posix_timers_seized(struct proc_posix_timers_stat *proc - struct parasite_ctl *ctl, struct pstree_item *); - - extern int parasite_dump_misc_seized(struct parasite_ctl *ctl, struct parasite_dump_misc *misc); --extern int parasite_dump_creds(struct parasite_ctl *ctl, struct _CredsEntry *ce); --extern int parasite_dump_thread_leader_seized(struct parasite_ctl *ctl, int pid, struct _CoreEntry *core); -+extern int parasite_dump_creds(struct parasite_ctl *ctl, struct CredsEntry *ce); -+extern int parasite_dump_thread_leader_seized(struct parasite_ctl *ctl, int pid, struct CoreEntry *core); - extern int parasite_dump_thread_seized(struct parasite_thread_ctl *tctl, - struct parasite_ctl *ctl, int id, -- struct pid *tid, struct _CoreEntry *core); -+ struct pid *tid, struct CoreEntry *core); - extern int dump_thread_core(int pid, CoreEntry *core, - const struct parasite_dump_thread *dt); - -diff --git a/criu/include/pstree.h b/criu/include/pstree.h -index 61ab0ce0eb23..d33474998a91 100644 ---- a/criu/include/pstree.h -+++ b/criu/include/pstree.h -@@ -113,7 +113,7 @@ extern int prepare_task_entries(void); - extern int prepare_dummy_task_state(struct pstree_item *pi); - - extern int get_task_ids(struct pstree_item *); --extern struct _TaskKobjIdsEntry *root_ids; -+extern struct TaskKobjIdsEntry *root_ids; - - extern void core_entry_free(CoreEntry *core); - extern CoreEntry *core_entry_alloc(int alloc_thread_info, int alloc_tc); -diff --git a/criu/include/rst_info.h b/criu/include/rst_info.h -index 3283849e448e..735f4a632536 100644 ---- a/criu/include/rst_info.h -+++ b/criu/include/rst_info.h -@@ -25,7 +25,7 @@ struct fdt { - futex_t fdt_lock; - }; - --struct _MmEntry; -+struct MmEntry; - - struct rst_info { - struct list_head fds; -@@ -40,7 +40,7 @@ struct rst_info { - struct fdt *fdt; - - struct vm_area_list vmas; -- struct _MmEntry *mm; -+ struct MmEntry *mm; - struct list_head vma_io; - unsigned int pages_img_id; - -diff --git a/criu/include/shmem.h b/criu/include/shmem.h -index 9afdb799afcf..114eb176341a 100644 ---- a/criu/include/shmem.h -+++ b/criu/include/shmem.h -@@ -5,7 +5,7 @@ - #include "common/lock.h" - #include "images/vma.pb-c.h" - --struct _VmaEntry; -+struct VmaEntry; - struct vma_area; - - extern int collect_shmem(int pid, struct vma_area *vma); -diff --git a/criu/mem.c b/criu/mem.c -index 167838b98541..9cd827d840da 100644 ---- a/criu/mem.c -+++ b/criu/mem.c -@@ -1225,7 +1225,7 @@ err_addr: - - static int maybe_disable_thp(struct pstree_item *t, struct page_read *pr) - { -- struct _MmEntry *mm = rsti(t)->mm; -+ struct MmEntry *mm = rsti(t)->mm; - - /* - * There is no need to disable it if the page read doesn't -diff --git a/lib/c/criu.h b/lib/c/criu.h -index e9b2f1e9d3aa..77b215ccd8e9 100644 ---- a/lib/c/criu.h -+++ b/lib/c/criu.h -@@ -111,7 +111,7 @@ int criu_set_pre_dump_mode(enum criu_pre_dump_mode mode); - * some non-existing one is reported. - */ - --typedef struct _CriuNotify *criu_notify_arg_t; -+typedef struct CriuNotify *criu_notify_arg_t; - void criu_set_notify_cb(int (*cb)(char *action, criu_notify_arg_t na)); - - /* Get pid of root task. 0 if not available */ --- -2.26.2 - diff --git a/criu.changes b/criu.changes index 2f9554b..4b9f5bc 100644 --- a/criu.changes +++ b/criu.changes @@ -1,3 +1,34 @@ +------------------------------------------------------------------- +Fri Oct 15 10:09:52 CEST 2021 - tiwai@suse.de + +- Update to criu 3.16.1: + see details at https://criu.org/Download/criu/3.16.1 + Bugfixes: + * Switch criu-ns helper script from unversioned 'python' to + 'python3' for easier distribution packaging + Improvements: + * Add '--join-ns' interface to libcriu to allow joining namespaces + via libcriu like CLI and RPC already allow +- Change Source URL to github + +------------------------------------------------------------------- +Tue Oct 12 11:23:19 CEST 2021 - tiwai@suse.de + +- Update to criu 3.16: + see details at https://criu.org/Download/criu/3.16 + New features: + * criu-ns helper script + * support checkpoint/restore of stacked apparmor profiles + * add nftables based network locking/unlocking + * allow restoring of precreated veth devices + Improvements: + * better support for restoring containers into existing pods + * pidfd based pid reuse detection for RPC clients + * license change for all files in the images/ directory to MIT + * use clang-format for automatic code indentation +- Drop 0002-Fix-build-with-nftables-installed-in-different-direc.patch + as obsoleted + ------------------------------------------------------------------- Wed May 26 18:23:43 CEST 2021 - tiwai@suse.de diff --git a/criu.spec b/criu.spec index ef7f581..11c317e 100644 --- a/criu.spec +++ b/criu.spec @@ -28,16 +28,15 @@ %define proto_c_ver %(protoc-c --version | head -1 | awk '{print $2}') Name: criu -Version: 3.15 +Version: 3.16.1 Release: 0 Summary: Checkpoint/Restore In Userspace Tools License: GPL-2.0-only Group: System/Console URL: https://criu.org/ -Source0: https://download.openvz.org/criu/%{name}-%{version}.tar.bz2 +Source0: http://github.com/checkpoint-restore/criu/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz Patch1: criu-py-install-fix.diff Patch2: 0002-Fix-build-with-nftables-installed-in-different-direc.patch -Patch3: criu-protobuf-c-1.4-underscore-fix.patch BuildRequires: libcap-devel BuildRequires: libgnutls-devel BuildRequires: libnet-devel @@ -102,9 +101,6 @@ to develop applications with CRIU library. %setup -q %patch1 -p1 %patch2 -p1 -%if "%{rpm_vercmp %proto_c_ver 1.4.0}" >= "0" -%patch3 -p1 -%endif # default off echo "BINFMT_MISC_VIRTUALIZED" > .config @@ -141,11 +137,13 @@ ln -s criu.8 %{buildroot}%{_mandir}/man8/crtools.8 %license COPYING %doc README.md %{_sbindir}/criu +%{_sbindir}/criu-ns %{_sbindir}/crtools %{_bindir}/compel %{_bindir}/crit %{_mandir}/man1/compel.1%{?ext_man} %{_mandir}/man1/crit.1%{?ext_man} +%{_mandir}/man1/criu-ns.1%{?ext_man} %{_mandir}/man8/criu.8%{?ext_man} %{_mandir}/man8/crtools.8%{?ext_man} %{_libexecdir}/criu From f7f7fb1582c100e07bcdf289305fa37fae2dcd5c641fca953659e8289407f032 Mon Sep 17 00:00:00 2001 From: Takashi Iwai Date: Sun, 17 Oct 2021 07:23:59 +0000 Subject: [PATCH 2/2] Accepting request 925808 from home:tiwai:branches:devel:tools - Drop criu-protobuf-c-1.4-underscore-fix.patch OBS-URL: https://build.opensuse.org/request/show/925808 OBS-URL: https://build.opensuse.org/package/show/devel:tools/criu?expand=0&rev=106 --- criu.changes | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/criu.changes b/criu.changes index 4b9f5bc..c1d8817 100644 --- a/criu.changes +++ b/criu.changes @@ -26,7 +26,7 @@ Tue Oct 12 11:23:19 CEST 2021 - tiwai@suse.de * pidfd based pid reuse detection for RPC clients * license change for all files in the images/ directory to MIT * use clang-format for automatic code indentation -- Drop 0002-Fix-build-with-nftables-installed-in-different-direc.patch +- Drop criu-protobuf-c-1.4-underscore-fix.patch as obsoleted -------------------------------------------------------------------