summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBruce Ashfield <bruce.ashfield@gmail.com>2021-04-16 11:53:37 -0400
committerBruce Ashfield <bruce.ashfield@gmail.com>2021-04-16 11:53:37 -0400
commit747ce5366684a730577c3fed2fdfdcc1afa79291 (patch)
treeb305760e0d110aac3d81b32ccbad56561d5fc17a
parentce6815f6ce4756323736e6d2ec470dc94b7d9486 (diff)
downloadmeta-virtualization-747ce5366684a730577c3fed2fdfdcc1afa79291.tar.gz
criu: update to 3.14
Updating to 3.14+. We drop a two patches that are no longer needed, and pickup the following commits: e49ce513c net: allow restoring of precreated veth devices 901ea2b56 scripts/build: drop obsolete ENV1 variable b98bbda8e images: re-license as Expat license (so-called MIT) 38a9cbe7a ci: enable crit tests in CI 7accc4454 test: fix crit test and extend it e65a56a1e lib: also handle extra pipe data correctly 35a4761ab lib: print nice error if crit gets wrong input f9616e917 lib: correctly handle stdin/stdout (Python 3) 840dc0b4d criu: Replace faccessat with fstatat when using AT_SYMLINK_NOFOLLOW flag 9edf53128 criu: Throw error when parent path is provided but invalid 480605824 cr-service: fix CRIU_REQ_TYPE__FEATURE_CHECK RPC request 49b9cff74 lib: fix crit-recode fix for Python 2 ca032081e ci: move CentOS 8 based test to Cirrus 9b0d75279 Use a real VM instead of a privileged container d334ba38d pstree: don't change sid/gid-s if current sid/gid is the same c8beca655 lib: correctly handle padding of dump images 02b0e850d lib: fromstring() and tostring() are deprecated d49ace9d3 criu-ns: Merge comparisons with 'in' 66f5ab439 criu-ns: Add unsupported msg for restore-sibling 719c5b07e criu-ns: Handle restore-detached option 6055d0be7 criu-ns: Pass arguments to run_criu() b31d3ad92 criu-ns: Close namespace fd before raise 44a1d321b criu-ns: Extract set namespace functions ab9418d96 criu-ns: Remove unused _umount b790ce21e criu-ns: Use documentation strings 097834dad criu-ns: Extract wait for process into a function c7d76082c criu-ns: Extract mount new /proc into a function a6659c3a7 criu-ns: Remove space before/after bracket 42df84994 criu-ns: Convert indentation to spaces 628ff18fc ci: run zdtm/transition/pid_reuse with pre-dumps in ci tests b7d2c2a26 ci: remove ccache setup 9f2a69691 ci: run recode tests on more input files 8017b6a8e lib: fix recode errors seen in Jenkins cdfca8694 ci: remove '-Wl,-z,now' workaround ca2d27378 lib/cli.py: Open out file as a binary fddf3a732 docker-test: set log file path 19be9ced9 docker-test: use containerd v1.5.0-beta.0 b51fb87a4 ci: move Travis CI Docker tests to GitHub Actions 77968d43c pstree: check for pid collision before switching to new sid/gid 1c1949ab5 test: move vt test to minor 65 on s390x 447b3cf61 zdtm/fpu03: Add .desc file to omit running on !x86 6569412bb Revert "compel: add -ffreestanding to force gcc not to use builtin memcpy, memset" fc1fefd6e s390: Purge stale comment 24f57c68d fault-injection: Run fpu corruption tests e07e5eee3 compel: Provide compel_set_task_ext_regs() e9b1e0b74 compel: Store extended registers set in the thread context 8394062e4 zdtm/fpu03: Add a test to check fpu C/R in a thread 6e1cd5b6a zdtm/fpu00: Simplify ifdeffery 2fdc09499 x86/compel/fault-inject: Add a fault-injection for corrupting extended regset e4e58a8f3 namespaces: properly handle errors of snprintf 84be3047a x86: Use PTRACE_GET_THREAD_AREA instead of sys_get_thread_area() f8cf0715e ci/compat: Check if tests are 32-bit ELFs e0d4aef35 github/stale: separate labels with commas without following spaces 168668ec7 ci: fix Fedora rawhide CI failures ab395e423 plugin: check for plugin path truncation 3397ac0a7 sk-unix: check whether a socket name is NULL before printing it 950a88c74 bug: add __builtin_unreachable in BUG_ON_HANDLER 42171caba test: fix test compilation on rawhide 6110236b6 zdtm: Add javaTests output to .gitignore 7a8f426f1 test: Reduce verbosity of mvn output 89aa87484 javaTests: Add --file-locks option 2692215a5 file-lock: Add space in error message a277c8493 ci: use runc instead of crun for podman tests 42c211285 seccomp: initialize seccomp_mode in all cases 1b5dbe567 zdtm: add second fifo_upon_unix test 903b903d2 zdtm: add fifo upon unix socket test case 82f203308 sk-unix: rework unix_resolve_name a4c000e30 sk-unix: make criu respect existing files while restoring ghost unix socket fd 8d92d4694 files-reg: rework strip_deleted 9546f3919 files: Don't forget on stripping deleted postfix on linked files 042560a2f ci: move coverage run to github 3fb8cd3a4 test/zdtm: check that locks are not dumped if --file-locks isn't set 7a64074c0 dump: dump has to fail if there is locks and --file-locks isn't set 81c3c9748 ci: move compat tests to Github Actions 4c3f3245e README.md: remove unused badges; add a few new badges 10cb8521d README.md: remove trailing whitespaces 5792612d3 ci: move asan and image streamer test to github 2cb1156e6 vdso: fix segmentation fault caused by char pointer array b62707bc1 Tell podman to use vfs as storage-driver 41efd592e ci: move Fedora Rawhide based tests away from Travis 442dc6515 ci: factor out Fedora Rawhide CI setup 8c89fbde3 ci: skip bpf tests on vagrant 9ec1f1a7b ci: upgrade vagrant and Fedora version d4b0f0f94 ci: fix syntax error in stale.yml 098d4cc72 zdtm: handle a case when a test vma is merged with another one 7d63ceaec util: zero the events pointer to avoid its double free 90f043dea namespaces: handle errors of snprintf 76f9ccc70 ci: also use clang for compel-host-bin 7766f12e9 ci: run aarch64 compile tests on Drone af1103ff2 zdtm: cleanup thread-bomb test error handling and printing 9807413c3 ci: move vagrant test to cirrus ci 11b3a1a75 workflows/stale: Don't close issue that has labels 'new feature' or 'enhancement' 2cf09cc4e fsnotify: rework redundant code d3b1d6e0c mount: adjust log level for mnt_is_dir 504c032af mount: adjust log level for get_clean_mnt 41b486790 dump: at exit do not call timing_stop if stats are not initialized 3dc47b22d coverity: get_service_fd() is passed to a parameter that cannot be negative 8112e7657 restore: warning: Value stored to 'ret' is never read 56853fb53 memfd: use PROC_SELF instead of getpid in __open_proc 3f047f13a util: move open_proc_self_fd to service_fd 4178beaa5 servicefd: don't move service fds in case they remain in the same place 0e7321c2f compel/test: Fix warn_unused_result cf0337c80 compel: Fix missing loff_t in Alpine 1b3274a90 ci: Enable compel testing 988b40230 compel/test: Add main makefile 61db62a87 compel/test: Resolve missing includes f5a408cdd dump/ppc64,arm,mips: sanitize the ERESTART_RESTARTBLOCK -> EINTR transition b4be97de9 github: auto-close stale issues and pull requests 43023fe75 zdtm: look up iptables in /sbin and /usr/sbin cb9c85fb6 test/zdtm_ct: Run zdtm.py in the host time namespace 5351b6efe ci: Alpine's busybox based free does not understand -h 72fc2e8e4 namespaces: don't set rst on error in switch_ns_by_fd cf8c88df6 ci: move alpine based tests to github actions 944bd0b6e ci: give an overview of the current CI environment 52bbac5a9 ci: add Circle CI definition ac9843b08 CONTRIBUTING.md: add component prefix to the subject example e403226ce .gitignore: Remove qemu-user-static bde4e8565 scripts/Docerfile.centos8: Use 'powertools' repo name e0da8b895 x86/asm: fix compile error in bitops.h a9d08735f others/ns_ext: restore a process out of PID namespaces into the host PID namespace 660e12843 cr-restore: setup external pidns only for root task c72901dcb namespaces: make root_ns_mask more consistent 5db1657ab cr-restore: make CLONE_NEWPID flag in clone_flags more consistent b27c7e9c8 compel/handle-elf: override unexpected precalculated addresses 55a8b099d docs: fix simple typo, clietn -> client 9cc1f051e vim: remove wrong 8-space tabs indent from python files 82f6518db zdtm: on fail with no error also print the tail of the log bc94f35a0 uffd: check for exited task when reading uffd_msg 87d007bcd uffd: cleanup read error handling in handle_uffd_event a667d5778 cr-restore: Properly inspect status in sigchld_process() a813f8676 ci: remove special handling for mips 430e464c7 CI: remove centos7 from Travis 3cf87ed48 ci: use graviton2 for arm64 tests on Travis 42a86db74 tls: Add logging within send/recv callbacks 0ecec9966 compel/log: Provide %u specifier parsing 56d3eab1c compel/log: Stop parsing at unknown format specifier 403741feb vdso: Let zero-terminator in vdso_symbol_length ab288c35c uffd: handle xrealloc() failure 7e1f22b78 uffd: fix 'double free detected in tcache 2' ffac3d649 ci: add CentOS 8 based CI run 407404297 ci: switch centos7 to github actions 369e17b29 travis: rename centos test to centos7 68585dec9 criu-ns: Remove unreachable statement 953e87c7b ci: fix lazy-pages test selection 8722bf012 ci: 'fix' lazy tests 50878f4f7 CI: distribute CI jobs between CI systems 0e47308d0 CI: rename 'travis' to 'ci' 2d290eeb0 namespaces: fix 'Declaring variable "path" without initializer' cec432500 coverity: img_raw_fd() returns a negative number 84df563c5 sk-unix: ignore coverity chroot() warning ef4ec3261 cr-dump: get_service_fd() is passed to a parameter that cannot be negative d95c2683b util: fix double_close false positive 5527329ba dump: Potential leak of memory pointed to by 'si' fc20d280c coverity: fix parameter_hidden: declaration hides parameter 73ed071e0 restore: Value stored to 'ret' is never read 53501e5e8 cr-dump: Potential leak of memory pointed to by 'si' 36f9700b1 vdso-compat: let coverity know that the function does not return 62ab67ed5 coverity: ignore CHECKED_RETURN 42e3e2e84 autofs: Potential leak of memory pointed to by 'token' 84ffb965c sk-unix: do not overwrite function parameter eb741528f Use 'is None' instead of '== None' 407d3fe0f bfd: remove unused line bbca79ab6 coredump: remove two unused variables 6a9bff88b lib/py: remove unused variable e13a7ecd2 infect: initialize struct to avoid CLANG_WARNING b80dd7e7c lock: disable clang_analyzer for the LOCK_BUG_ON() macro 2ec05a056 compel: don't mmap parasite as RWX 53dd29e93 cr-restore: Wait child & reap zombies if PID=1 265569a40 criu-ns: Use PID 1 on restore e18017285 flog: Missing varargs init or cleanup (VARARGS) 532944695 Add flog to CRIU bfb051a51 criu-ns: Convert c_char_p strings to bytes object 3f7189729 criu-ns: Print usage info when no args provided 226efaac9 criu-ns: Convert to python3 style print() syntax ca5c93d38 python: Replace xrange with range 1609a345a crns.py: New attempt to have --unshare option f68da4a86 criu: Version 3.15 5a655e890 travis: install gzip and redhat-rpm-config for Fedora Rawhide based tests 1062cc4fe x86/asm: update test_bit() and test_and_set_bit() c7726b7f3 zdtm: add alternative socket filter 5c4cc46fd sockets: fix incorrect malloc size 749eb33a9 compel: Calculate sh_addr if not provided by linker 867dd27c9 util: Improper use of negative value (NEGATIVE_RETURNS) 16aea4a7c mount: Explicit null dereferenced (FORWARD_NULL) 5f0674075 util: Improper use of negative value (NEGATIVE_RETURNS) ca7a832b5 page-xfer: Argument cannot be negative (NEGATIVE_RETURNS) f0e48be48 sk-netlink: Argument cannot be negative (NEGATIVE_RETURNS) 4e4227871 kerndat: Argument cannot be negative (NEGATIVE_RETURNS) 50dbcadf0 net: Argument cannot be negative (NEGATIVE_RETURNS) 4a77e0456 net: Argument cannot be negative (NEGATIVE_RETURNS) 5631e9dca action-scripts: Improper use of negative value (NEGATIVE_RETURNS) 0f4b053c1 cr-dump: Resource leak (RESOURCE_LEAK) 7e4f50e74 irmap: Double close (USE_AFTER_FREE) 2ed16451b proc_parse: Copy into fixed size buffer (STRING_OVERFLOW) 864564823 autofs: Resource leak (RESOURCE_LEAK) 90369437f cgroup-props: Resource leak (RESOURCE_LEAK) 2a4c4bf2f filesystem: Double close (USE_AFTER_FREE) 38246bf55 uffd: Resource leak (RESOURCE_LEAK) 03d66390b mount: Resource leak (RESOURCE_LEAK) c1ab1a19e pagemap: Logically dead code (DEADCODE) 4e7e26b70 files-reg: Resource leak (RESOURCE_LEAK) da5a4d6e5 cgroup: Resource leak (RESOURCE_LEAK) af569ac01 pagemap: Argument cannot be negative (NEGATIVE_RETURNS) 19365c1e6 cgroup: Resource leak (RESOURCE_LEAK) b89303433 img-streamer: Double close (USE_AFTER_FREE) 59010ad6d net: Argument cannot be negative (NEGATIVE_RETURNS) 82cd3bb0d zdtm: update and refactor tests for BPF array and hash maps 8301c7e01 criu: adding support for BPF map name, ifindex and freeze 02f7e3434 images: adding support for BPF map file name and ifindex 97ab725db zdtm: adding BPF helper functions as a new library f7bd70573 servicefd: close temporary fd on error path 3ef2c1ff8 criu: check matching the tcp-close option on restore only 9acca8df9 tcp: add a separate test for listen sockets 9ba9d6706 tcp: dump shutdown state for unconnected sockets fd7b6e73d CI: run cross compile on all branches 32b162831 CI: add Travis test script to 'lint' 025ef090d CI: switch to loop based apt-get 0def9bc1f tests: only run 'make lint' once in CI 84215e035 scripts: run shellcheck on the scripts folder e2101abf2 crtools: Fix --help output line width 4a80dfab8 doc: update documentations for the tcp-close option e42f5e032 tcp: allow to specify --tcp-close on dump 4f7c48041 test/zdtm: write in a tcp socket has to fail if tcp-close was set 5b5f4b717 socket/tcp: shutdown tcp sockets if the tcp-close option is set 3957d9533 Switch to python 3 variants of dependencies on debian-based builds a6214c360 mips64: implement vdso_redirect_calls() 80672c9f3 zdtm: Add test for SO_LINDER 5bb5890cb socket: c/r support for SO_LINGER 0aeddba7c socket: c/r support for SO_OOBINLINE 5c11b0e44 zdtm: check that unbindable mount flag does not affect restore b554eacb5 mount: replace mountpoint to mnt_id in error messages f3b18865f mount: delay setting unbindable flag where possible dbf798811 sk-netlink: Handle case of in-use netlink peer ids c0f365310 images: kindly ask not to use fields with id 18 in unix_sk_entry ed74c9e05 zdtm: add new epoll01 test 0dda60f51 eventpoll: fix toff off calculation dd082fad1 eventpoll: resort toff back by idx 596276a9a travis: use Fedora rawhide images from Fedora df0c793d5 travis: restore lazy-pages tests for uns flavor 1391f84d8 criu: don't use the deprecated security_context_t (SELinux) 20d87bbfa scripts: adding libbpf for Travis tests 372782d8a zdtm: adding tests for BPF maps 14b1cc26d criu: restoring BPF map data 4d073a75e criu: restoring BPF maps (without data) 4b8186cb6 crit: add BPF map data decoding b924394cc criu: dumping BPF map data 5ff0e7058 criu: dumping meta-data about BPF map files b85709797 criu: parse information about BPF maps from procfs aa59dfc6d Set Makefile config variables for libbpf 95b7d06cb criu: define constants for c/r of BPF maps c26cd1395 images: protobuf definitions for BPF map meta-data and data d6735616a travis: add a focal based test run ca360ce30 travis: switch travis to Python 3 8063fbb47 contrib: Add python-future to Debian packages 52eff52e6 github: disable cross-compule for mips on master branch 5b751fbaf criu: the type of a socket inode has to be "unsigned int" a6b00b1a7 actions: create file for daily rebuild 18f42b302 travis: loop over apt-get to recover from errors 3d67e8a0d Makefiles: do not re-generate magic.py every time 9ce4ed093 python: Handle byte strings when converting protobuf to dict 320c88e92 CONTRIBUTING.md: clarify placement of Fixes: tags 83be11f1f lib/c: extend receive to handle incoming FDs 20a24c11e log: Ask developers not to use print_on_level directly ebc0d205a log: Hide vprint_on_level in log.c 478072474 util: Use pr_info in vma printing 1955d4907 ipc: Use pr_info() instead of print_on_level(PR_INFO...) 99fc76d8b proc_parse: Do not feed loglevel into restore_loginuid 8564bc49e check: Use pr_foo macros 7646deed6 vagrant: Update to Fedora 32 cee36af38 criu/files-reg.c: build-id size bug fix aeeaa30a5 criu/files-reg.c: build-id from multiple headers fix 9c0b904a0 compel/infect: Don't adjust stack/args alignment 70ecbbcc8 compel: allocate the GOT table to avoid memory corruption fee517b3d compel: remove x86/prologue.S 8d8dd5a79 compel: x86 parasite_service entry point simplification b8c1d9d93 compel: rewrite parasite cmd and args manipulation from assembly to C 391da7464 compel: stop rounding up the parasite blob size and args region to PAGE_SIZE d99fc1e55 compel: remove "addr_" from offset variable names a531f9a8b compel: pass the parasite_blob_desc to compel_relocs_apply() 8ac0fa6aa compel: add error message for COMMON symbols f92948cca zdtm: make cgroup_yard to be aware of cgroup2 f96cd8c74 tests: skip cgroup04 and cgroup_ifpriomap on pure cgroup2 systems 5f160811a zdtm.py: add the cgroup2 freezer support 98e9165f0 cgroup: Add the initial support for cgroup2 a93df9eb9 pidns: fixup bb555b372 criu/config.c: added cli option for build-id 9191f8728 criu/files-reg.c: add build-id validation functionality 7b18c13c1 images/regfile.proto: adds additional fields to RegFileEntry 8354b526c restore: skip unnecessary setgroups calls 0d8d7f232 tests: criu-image-streamer change dev branch to master branch 62d70bd48 test/zdtm/autofs: use sigaction instead of the deprecated siginterrupt 539183fad Add error logging to config + crtools init 9a4b933f2 Add error logging to kerndat init 3490d997b test: test external namespace support f3ebdeebe pidns: add external pidns to man-page 9dd1ab00e pidns: support external PID namespaces f1e6b1036 pidns: write and read pidns information 4e7ec3c88 pidns: add pidns image file definition 99c848783 zdtm: add zombie_leader test f0438f47f cgroup: make prepare_task_cgroup lookup current cgset in ancestors d38046b00 mount: restore_task_mnt_ns - Lookup for mount namespace conditionally 41b535d31 test: skip vdso test on non-vdso systems ce22e0f37 uffd: uffd_open prints info, caller prints error 6815aa958 CONTRIBUTING.md: add pull request guidelines 35f8c056a CONTRIBUTING.md: add sections about patch description and splitting 2e5805878 CONTRIBUTING.md: minor formatting fixes d0fcb01d4 CONTRIBUTING.md: import "How to submit patches" from criu.org 808684c99 Add CONTRIBUTING.md 6ee4b7238 arch/x86: Fix calculation of xstate_size 1d9438aef criu swrk: fix usage, allow common options cbf099400 Travis: use Vagrant to run VMs d72428b7c Also report clone3() errors correctly 047ecd3a1 test/others/libcriu: test version library calls 55f71b866 lib/c: add criu_get_version() e57e74a18 criu: optimize find_unix_sk_by_ino() 62c03530c swrk: send notification instead of using status fd faf6dbf33 close_service_fd: rename to status_ready e34f5dd3a clang: Branch condition evaluates to a garbage value b4c51ea49 coverity: fix FORWARD_NULL in criu/proc_parse.c: 1481 64347398c coverity: fix RESOURCE_LEAK criu/timens.c: 67 f33410252 libcriu: Add space between 'if' and parenthesis 4ac9a3c90 libcriu: Use spaces around '=' ae4fd07ca libcriu: Add orphan pts master f6d1b498d cr-service: spell out an error 00a44031e cr-service: fix wording in debug messages 00b8257d9 tests: move cross compilation to github actions 8452be93c travis: use bionic almost everywhere 5bd776da3 Remove dupe of "deprecated stuff on" msg 8364b0940 soccr/test: Fix error logging in libsoccr tcp-test 277b0b69f mips: fix fail when run zdtm test pthread01.c be1394122 mips: impliment arch_shmat() d38851c9b test/jenkins: use bash to run shell scripts 40169b950 style: fix typos b5c34c74c mips:support docker-cross compile afe90627e mips:criu: Enable mips in criu d325b7b77 mips:criu/arch/mips: Add mips parts to criu 158e8f8fe mips:proto: Add mips to protocol buffer files e7d13b368 mips:compel: Enable mips in compel/ ba0d6dbac mips:compel/arch/mips: Add architecture support to compel tool and libraries 8be1d457d net: fix coverity RESOURCE_LEAK eb732bcf0 util: Remove deprecated print_data() routine 8c538ca10 page-read: Warn about async read w/o completion cb 27ab533cb tests: run tests with criu-image-streamer with --stream 7d79a58f4 img-streamer: introduction of criu-image-streamer 51c3f8a90 pipes: loop over splice() when dumping a pipe's data 0708cbd88 remote: Use tmp file buffer when restore ip dump 01cab14df util: Fix addr casting for IPv4/IPv6 in autobind be2ded15e test: fix flake8 errors d23d1fc0f travis: fix alpine builds f2edc1e19 Update certificates for failing tls based tests 95ead1487 criu: Version π 5c5e7695a get_clean_mount: demote an error to a warning c83a0aae2 proc: parse clock symbolic names in /proc/pid/timens_offsets 7dc89376b pstree: improve error handling in read_pstree_image 42b5700b7 kerndat remove duplicate call to kerndat_nsid() 2c2fdd333 parasite-msg: %u is not implemented for parasite code ef7ef9cfa kerndat: remove duplicate call to kerndat_socket_netns() 62088c721 criu: put statement continuation on the same line as the closing bracket d1fa1734e autofs: fix integer overflow in mount options parsing 6b9faabf3 mem: avoid re-opening CR_FD_PAGES when not needed 4d34f84bb img: rellocate a PATH_MAX buffer from the bss section to the stack bb0b4219e img: fix image_name() when image is empty 067a20c81 zdtm: fail if test with the crfail tag passes 698f3a4db zdtm: limit the line length for ps by 160 symbols eab1a3074 timens: restore processes in a new timens to restore clocks 73438d34b test: check that C/R of nested time namespaces fails 0d8c0562f zdtm_ct: run each test in a new time namespace f1655fd54 zdtm: add a new test to check c/r of time namespaces 3fd0fa4bd zdtm: add support for time namespaces ddba4af60 namespace: fail if ns/time_for_children isn't equal to ns/time 4127ef4ab criu: Add support for time namespaces 0e9b42acf MAINTAINERS: Add Pavel (myself) to maintainers e3fb52e37 remove header include statements duplicates 8c36865c8 memfd: split the struct memfd_inode e3a5d0975 memfd: save all memfd inodes in one image 967797a86 Add build directory to gitignore cc362b432 namespaces: fix error handling in dump_user_ns 1ad8657dd config/nftables: include string.h for strlen 5f28b692a test/fifo_loop: change sizes of all fifo-s to fit a test buffer 1ad209b9c test/pipe03: check that pipe size is restored 2b376168e pipe: restore pipe size even if a pipe is empty fa705e418 zdtm: Use safe helper function to initialize unix socket sockaddr structure 691b4a4e7 zdtm: Implemented get_current_dir_name wrapper that checks for 'x' permissions c40c09cbb test/zdtmp: add a test to C/R shared memory file descriptors 10b1d46f6 mem/vma: set VMA_FILE_{PRIVATE,SHARED} if a vma file is borrowed fb65ab2b1 mem: dump shared memory file descriptors f42ae70c7 make: use cflags/ldflags for config.h detection mechanism d0d6f1ad1 mailmap: update my email c3ad4942d travis: add ppc64-cross test on amd64 b9c8e957d crit-recode: skip (not try to parse) nftables raw image 1f74f8d77 travis: Use debian/buster as base for cross build tests 18ac1540c travis: Add aarch64-cross test on amd64 327554ee6 compel: Remove compel.h 62ad2f609 criu: Remove compel.h includes 065ff6f41 zdtm/fifo_loop: don't try to write more than pipe size 73e0ed3b8 zdtm: add a test on open symlink migration 1936608ce files: allow dumping opened symlinks 8b9c1f4c5 zdtm: add a test for files opened with O_PATH f167d1f4e fown: Don't fail on dumping files opened with O_PATH 58fd63042 zdtm/inhfd: force python to read new data from a file fce196d88 memfd: don't corrupt a state of the dumped fd ffe0896ed fs: use __open_proc instead of open("/proc/...", ... ) 4129d3262 cgroup2: add minimal cgroup2 support 10416bcbc seize: support cgroup v2 freezer 9f902e0c6 seize: factor out opening and writing the freezer state 563c5e5e7 seize: prepare for cgroupv2 freezer bb032cc3e criu(8): Convert tabs to spaces 48f3b6516 criu(8): Add documentation for --enable-fs cdd08cdff uffd: use userns_call() to execute ioctl(UFFDIO_API) 38793699e test/jenkins: remove empty line at the end of file 3eab205ba python: sort imports bc49927bb criu: Make use strlcpy() to copy into allocated strings ec1164495 criu: Use strlcpy() instead of strncpy() 2dd105b8d memfd: add tests b133c375a inhfd_test: add support for non-pair files 56d8e2455 memfd: add seals support 29a1a88bc memfd: add memory mapping support b25684e24 memfd: add --inherit-fd support 875ac4d03 files: increase path buffer size in inherited_fd() c1e72aa93 memfd: add file support 5dbc24b20 util: introduce the mount_detached_fs helper e19f4cf3b MAINTAINERS: Add Dima and Adrian to maintainers 42db2c156 MAINTAINERS: add Mike 872b795a5 Maintainers: Suggest the maintainers codex (#932) ff756cbb2 python: sort imports d68a68b8f test/zdtm/inhfd: update dump options one each iteration f5181b276 Travis: fix podman test case 3a4c33c50 zdtm: mntns_rw_ro_rw update error msg 9cb4067e1 vdso: Don't page-align vvar a96a7ed87 vdso: Repair !CONFIG_VDSO 0022c2846 vdso: Add vdso_is_present() helper 99346a282 zdtm: Make test_{doc,author} weak variables 72ff29070 criu: Make use strlcpy() to copy into allocated strings 0f438ceee typo: fix missing space in error message 9bc9366c9 vdso: use correct offsets to remap vdso and vvar mappings f1714ccce test/vdso: check the code path when here is no API to map vDSO 56258da17 criu: fix build failure against gcc-10 23374b779 criu(8): fix for asciidoctor a15426a11 criu(8): some minor rewording 8477875dc doc/Makefile: don't hide xmlto stderr c98af78c5 compel: add -ffreestanding to force gcc not to use builtin memcpy, memset f6de8d4ea travis: fix warning and errors from validation 0e291d26c arm: use clone3() if it exists f991f2350 aarch64: use clone3() if possible 3dabd38a8 clone3: handle clone3() with CLONE_PARENT f6469493d ppc64le: use clone3() if possible 55c8ec62a arm: remove stack pointer from clobber list cbadd201c s390x: use clone3() if possible 4c4f67a56 s390x: remove stack pointer from clobber list a1ea8deb4 Use clone3() with set_tid to create processes 97c03b97d Add assembler wrapper for clone3() ca02c4707 kerndat: detect if system support clone3() with set_tid 8fea2647b travis: reduce the number of podman tests 4232b270b image: core -- Reserve start_time field f1abc9aa2 ppc64le: remove register '1' from clobber list 0c218746d Switch open-j9 alpine tests to python3 1e9ff2aa0 Add Socket-based Java Functional Tests 8b5dea33f travis: switch alpine to python3 75a744238 files: Add FD_CLOEXEC test 8255caf27 files: Remove O_CLOEXEC from file flags 2ac43cd42 python: Improve decoding of file flags 7622b7a70 files: fix ghost file error path acb42456d zdtm: nft tables preservation test e1c487175 net: add nftables c/r 17c4a8b24 style: Enforce kernel style -Wstrict-prototypes 8bb3c17a0 style: Enforce kernel style -Wdeclaration-after-statement 79559bef9 Fix tests on Ubuntu 8b467dd94 zdtm: Add test for SO_KEEPALIVE d4e6fc2a0 socket: c/r support for SO_KEEPALIVE 0980617e2 sockets: Remove duplicate variable assignment 00bb06878 scripts: alpine: Install py2 packages with pip 2e656222d crit: fix python3 encoding issues 4c46cbc4d x86/cpu: cleanup and improve xfeatures_mask check 55f7a571f zdtm: sysctl net.unix.max_dgram_qlen value preservation test ebe3b5235 unix: sysctl -- Preserve max_dgram_qlen value 1d23dc4a3 mount: Order call_helper_process calls 2237666ac restorer/inotify: reorder inotify cleanup after waiting helpers and zombies af7e5f994 readme: github pull-requests is the preferred way to contribute be43c3b84 cgroup: use new mount API to open the cgroup file system 76e4d31a3 net: use new mount API to open the sysfs file system 1a2d8ad7e mount: use new mount API to open the proc file system 4997a096e util: introduce the mount_detached_fs helper b5b1c4ec4 kerndat: check whether the new mount API is supported of not 3ca09b191 travis: ignore fails of podman-test 37220b3c4 Add File-based Java Functional Tests 6ab2bdd94 zdtm/socket-tcp-fin-wait1: Use array index fro TEST_MSG 434e6b92d Documentation: Add a hint about docker build 1dbc83595 travis: Add armv7-cross as cross-compile test bffa6e0ad build/zdtm: Use pkg-config to find includes/libs 3b24574b6 build/zdtm: Makefile hack for travis aarch64/armv8l 70fae1250 build/zdtm: Support cross-build 1463c4111 build: Use SUBARCH df66aa99b build/nmk: Provide proper SUBARCH a4fa4162d build/nmk: Remove SRCARCH 25f6d4f72 build: Remove SRCARCH 60bb5c731 zdtm: Set --root path to 0700 on restore 90cbeadb6 zdtm: Replace if->continue with if->elif->else 9a50fbce7 man: Describe --root option requirements 8ab3e40e3 restore: Create temp proc in /tmp d99ee9753 mount: Bind-mount root via userns_call b50b6ea09 mount: Add error messages 75fcec0ec travis: exclude uns tests for lazy-pages on newer kernels 8f45330d1 travis: group lazy-pages options dc4677123 Checkpoint only specified controllers 1c0716924 compel/criu: Add __must_check 56bc4189e criu: Kill tasks even when the network is unlocked c21c0aea1 compel/infect: Detach but fail compel_resume_task() bd17ee858 parasite-syscall: Log if can't cure on failed infection abe48f8c3 cr-restore: Warn if restorer can't be unmapped 1038a0ae4 cr-dump: Warn if unmapping local memfd failed b5a83623b cr-dump: Try to cure remote on err-pathes 717385657 lib/infect: Check if compel succeed in executing munmap ee449e27c compel: Mark compat argument of __NR() as used c8f16bfac compel/infect: Warn if close() failed on memfd a93117ede lib/ptrace: Be more elaborate about failures ef277068d lib/ptrace: Allow PTRACE_PEEKDATA with errno != 0 ea018e9a9 travis: remove group from .travis.yml fe668075a travis: switch pcp64le and s390x to real hardware eab8cf077 travis: switch all arm related tests to real hardware 075f1beaf Makefile hack for travis aarch64/armv8l 6be414bb2 travis: Do not run privileged containers in LXD 62953d433 travis: fix copy paste error from previous commit 2b4e65336 Run java functional tests on travis f3cca97d8 mount: make mnt_resort_siblings nonrecursive and reuse friendly 35adc0859 mount: rework mount tree build step on restore 7be726026 ns/restore/image: do not read namespace images for non-namespaced case 71dff54aa ns: make rst_new_ns_id static d804f70a6 mount: remove useless check in populate_mnt_ns 9325339e6 travis: Disallow failures on ia32 389bcfef3 test/java: Add FileRead Tests c4006c003 test/static:conntracks: Support nftables a7c625938 travis: start to use aarch64 hardware 3861b334b Fix broken web-links 1a28dee52 Action scripts should be invoked with normal signal behavior 19a24df53 early-log: Print warnings only if the buffer is full 00ce121fd Add `criu` to PATH env variable in libcriu tests 321f82662 Enable libcriu testing in travis jobs f8125b8be Couple of fixes to build and run libcriu tests 477c3a4b0 service: Use space on stack for msg buffer e56401ed3 image-desc: Remove CR_FD_FILE_LOCKS_PID f65b17e97 cgroup: fix cg_yard leak on error path in prepare_cgroup_sfd 5a92f100b page-pipe: Resize up to PIPE_MAX_SIZE 71c2a9dc7 Guard against empty file lock status 3efe44382 image: avoid name conflicts in image files 6b264f591 criu: use atomic_add instead of atomic_sub 7c97cc7eb lib/c: fix a compile time error d30557699 zdtm: handle --pre-dump-mode in the rpc mode befbbd9bb Refactor time accounting macros 98608b90d read mode pre-dump implementation 4c774afc1 Adding cnt_sub for stats manipulation 29b63e9a7 Skip adding PROT_READ to non-PROT_READ mappings e0ea21ad5 Handling iov generation for non-PROT_READ regions 20d4920a8 Adding --pre-dump-mode option 576a99f49 restorer/inotify: Don't overflow PIE stack 578597299 Cleanup do_full_int80() b84f481b5 unix: print inode numbers as unsigned int 3f1c4a17a pipe: print pipe_id as unsigned to generate an external pipe name b47ef26ea cgroup: fixup nits f44939317 zdtm/cgroup_yard: create a test cgroup yard from the post-start hook db40ef5be test/cgroup_yard: always clean up a test cgroup yard 813bfbeb4 Convert pr_msg() error messages to pr_err() a9f974b49 Introduce flush_early_log_to_stderr destructor 8bdc60d50 arch/x86: fpu_state->fpu_state_ia32.xsave hast to be 64-byte aligned 4f24786b3 travis: Install missing diffutils dependency cf0080505 test: implement test for new --cgroup-yard option 2f337652a Add new command line option: --cgroup-yard ad7e82a30 scripts: Drop Fedora 28/rawhide fix 3e9dc1c7f compel/x86: Don't use pushq for a label 0d8e2477e arch/x86: push correct eip on the stack before lretq 8ea953f18 cr-dump: Remove redundant if-statement 3eed47223 files-reg: Drop clear_ghost_files() prototype 08f3b57ab py: Manual fixlets of code formatting Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
-rw-r--r--recipes-containers/criu/criu_git.bb8
-rw-r--r--recipes-containers/criu/files/0001-criu-Fix-toolchain-hardcode.patch102
-rw-r--r--recipes-containers/criu/files/0001-criu-fix-build-failure-against-gcc-10.patch87
3 files changed, 3 insertions, 194 deletions
diff --git a/recipes-containers/criu/criu_git.bb b/recipes-containers/criu/criu_git.bb
index 24aa3012..febf81ed 100644
--- a/recipes-containers/criu/criu_git.bb
+++ b/recipes-containers/criu/criu_git.bb
@@ -13,15 +13,13 @@ EXCLUDE_FROM_WORLD = "1"
13 13
14LIC_FILES_CHKSUM = "file://COPYING;md5=412de458544c1cb6a2b512cd399286e2" 14LIC_FILES_CHKSUM = "file://COPYING;md5=412de458544c1cb6a2b512cd399286e2"
15 15
16SRCREV = "c703e3fd8404e506cc6156719b953ea0580d59a4" 16SRCREV = "e49ce513c8df43e8d3b30b7acfbe7bd496d89862"
17PV = "3.13+git${SRCPV}" 17PV = "3.14+git${SRCPV}"
18 18
19SRC_URI = "git://github.com/checkpoint-restore/criu.git \ 19SRC_URI = "git://github.com/checkpoint-restore/criu.git;branch=criu-dev \
20 file://0001-criu-Fix-toolchain-hardcode.patch \
21 file://0002-criu-Skip-documentation-install.patch \ 20 file://0002-criu-Skip-documentation-install.patch \
22 file://0001-criu-Change-libraries-install-directory.patch \ 21 file://0001-criu-Change-libraries-install-directory.patch \
23 file://lib-Makefile-overwrite-install-lib-to-allow-multiarc.patch \ 22 file://lib-Makefile-overwrite-install-lib-to-allow-multiarc.patch \
24 file://0001-criu-fix-build-failure-against-gcc-10.patch \
25 " 23 "
26 24
27COMPATIBLE_HOST = "(x86_64|arm|aarch64).*-linux" 25COMPATIBLE_HOST = "(x86_64|arm|aarch64).*-linux"
diff --git a/recipes-containers/criu/files/0001-criu-Fix-toolchain-hardcode.patch b/recipes-containers/criu/files/0001-criu-Fix-toolchain-hardcode.patch
deleted file mode 100644
index bd7a6c57..00000000
--- a/recipes-containers/criu/files/0001-criu-Fix-toolchain-hardcode.patch
+++ /dev/null
@@ -1,102 +0,0 @@
1From c005b7a4874f55df687ff22bc425551775581421 Mon Sep 17 00:00:00 2001
2From: Mark Asselstine <mark.asselstine@windriver.com>
3Date: Fri, 8 Sep 2017 15:02:14 -0400
4Subject: [PATCH] criu: Fix toolchain hardcode
5
6Replace ":=" to "?=" so that the toolchain used by bitbake build system will
7be taken.
8
9Signed-off-by: Yang Shi <yang.shi@windriver.com>
10Signed-off-by: Jianchuan Wang <jianchuan.wang@windriver.com>
11Signed-off-by: Mark Asselstine <mark.asselstine@windriver.com>
12
13---
14 Makefile | 2 +-
15 scripts/nmk/scripts/include.mk | 2 +-
16 scripts/nmk/scripts/tools.mk | 40 ++++++++++++++++++++--------------------
17 3 files changed, 22 insertions(+), 22 deletions(-)
18
19diff --git a/Makefile b/Makefile
20index f2583a2..d7f51e5 100644
21--- a/Makefile
22+++ b/Makefile
23@@ -17,7 +17,7 @@ ifeq ($(origin HOSTCFLAGS), undefined)
24 HOSTCFLAGS := $(CFLAGS) $(USERCFLAGS)
25 endif
26
27-UNAME-M := $(shell uname -m)
28+UNAME-M ?= $(shell uname -m)
29
30 #
31 # Supported Architectures
32diff --git a/scripts/nmk/scripts/include.mk b/scripts/nmk/scripts/include.mk
33index 04ccb3a..0d63bc7 100644
34--- a/scripts/nmk/scripts/include.mk
35+++ b/scripts/nmk/scripts/include.mk
36@@ -22,7 +22,7 @@ SUBARCH := $(shell uname -m | sed \
37 -e s/aarch64.*/aarch64/)
38
39 ARCH ?= $(SUBARCH)
40-SRCARCH := $(ARCH)
41+SRCARCH ?= $(ARCH)
42
43 export SUBARCH ARCH SRCARCH
44
45diff --git a/scripts/nmk/scripts/tools.mk b/scripts/nmk/scripts/tools.mk
46index 56dba84..1698821 100644
47--- a/scripts/nmk/scripts/tools.mk
48+++ b/scripts/nmk/scripts/tools.mk
49@@ -2,35 +2,35 @@ ifndef ____nmk_defined__tools
50
51 #
52 # System tools shorthands
53-RM := rm -f
54+RM ?= rm -f
55 HOSTLD ?= ld
56 ifeq ($(origin LD), default)
57 LD := $(CROSS_COMPILE)$(HOSTLD)
58 endif
59 HOSTCC ?= gcc
60 ifeq ($(origin CC), default)
61 CC := $(CROSS_COMPILE)$(HOSTCC)
62 endif
63-CPP := $(CC) -E
64-AS := $(CROSS_COMPILE)as
65-AR := $(CROSS_COMPILE)ar
66-STRIP := $(CROSS_COMPILE)strip
67-OBJCOPY := $(CROSS_COMPILE)objcopy
68-OBJDUMP := $(CROSS_COMPILE)objdump
69-NM := $(CROSS_COMPILE)nm
70-MAKE := make
71-MKDIR := mkdir -p
72-AWK := awk
73-PERL := perl
74-FULL_PYTHON := $(shell which python2 2>/dev/null || which python3 2>/dev/null)
75+CPP ?= $(CC) -E
76+AS ?= $(CROSS_COMPILE)as
77+AR ?= $(CROSS_COMPILE)ar
78+STRIP ?= $(CROSS_COMPILE)strip
79+OBJCOPY ?= $(CROSS_COMPILE)objcopy
80+OBJDUMP ?= $(CROSS_COMPILE)objdump
81+NM ?= $(CROSS_COMPILE)nm
82+MAKE ?= make
83+MKDIR ?= mkdir -p
84+AWK ?= awk
85+PERL ?= perl
86+FULL_PYTHON ?= $(shell which python2 2>/dev/null || which python3 2>/dev/null)
87 PYTHON ?= $(shell basename $(FULL_PYTHON))
88-FIND := find
89-SH := $(shell if [ -x "$$BASH" ]; then echo $$BASH; \
90+FIND ?= find
91+SH ?= $(shell if [ -x "$$BASH" ]; then echo $$BASH; \
92 else if [ -x /bin/bash ]; then echo /bin/bash; \
93 else echo sh; fi ; fi)
94-CSCOPE := cscope
95-ETAGS := etags
96-CTAGS := ctags
97+CSCOPE ?= cscope
98+ETAGS ?= etags
99+CTAGS ?= ctags
100
101 export RM HOSTLD LD HOSTCC CC CPP AS AR STRIP OBJCOPY OBJDUMP
102 export NM SH MAKE MKDIR AWK PERL PYTHON SH CSCOPE
diff --git a/recipes-containers/criu/files/0001-criu-fix-build-failure-against-gcc-10.patch b/recipes-containers/criu/files/0001-criu-fix-build-failure-against-gcc-10.patch
deleted file mode 100644
index f1a2561f..00000000
--- a/recipes-containers/criu/files/0001-criu-fix-build-failure-against-gcc-10.patch
+++ /dev/null
@@ -1,87 +0,0 @@
1From c6b9c083ecbd2060c7dc77a9264ef10aafa19063 Mon Sep 17 00:00:00 2001
2From: Sergei Trofimovich <slyfox@gentoo.org>
3Date: Sun, 2 Feb 2020 18:45:59 +0000
4Subject: [PATCH] criu: fix build failure against gcc-10
5MIME-Version: 1.0
6Content-Type: text/plain; charset=UTF-8
7Content-Transfer-Encoding: 8bit
8
9On gcc-10 (and gcc-9 -fno-common) build fails as:
10
11```
12ld: criu/arch/x86/crtools.o:criu/include/cr_options.h:159:
13 multiple definition of `rpc_cfg_file'; criu/arch/x86/cpu.o:criu/include/cr_options.h:159: first defined here
14make[2]: *** [scripts/nmk/scripts/build.mk:164: criu/arch/x86/crtools.built-in.o] Error 1
15```
16
17gcc-10 will change the default from -fcommon to fno-common:
18https://gcc.gnu.org/PR85678.
19
20The error also happens if CFLAGS=-fno-common passed explicitly.
21
22Reported-by: Toralf Förster
23Bug: https://bugs.gentoo.org/707942
24Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
25
26Upstream-Status: Backport [https://github.com/checkpoint-restore/criu/pull/936]
27
28Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
29
30---
31 criu/config.c | 1 +
32 criu/include/cr_options.h | 2 +-
33 criu/include/pstree.h | 2 +-
34 criu/include/tun.h | 2 +-
35 4 files changed, 4 insertions(+), 3 deletions(-)
36
37diff --git a/criu/config.c b/criu/config.c
38index 39aa071c..009a48a6 100644
39--- a/criu/config.c
40+++ b/criu/config.c
41@@ -30,6 +30,7 @@
42 #include "common/xmalloc.h"
43
44 struct cr_options opts;
45+char *rpc_cfg_file;
46
47 static int count_elements(char **to_count)
48 {
49diff --git a/criu/include/cr_options.h b/criu/include/cr_options.h
50index 82f76ad9..9c20aaea 100644
51--- a/criu/include/cr_options.h
52+++ b/criu/include/cr_options.h
53@@ -147,7 +147,7 @@ struct cr_options {
54 };
55
56 extern struct cr_options opts;
57-char *rpc_cfg_file;
58+extern char *rpc_cfg_file;
59
60 extern int parse_options(int argc, char **argv, bool *usage_error, bool *has_exec_cmd, int state);
61 extern int check_options();
62diff --git a/criu/include/pstree.h b/criu/include/pstree.h
63index 7303c1fe..61ab0ce0 100644
64--- a/criu/include/pstree.h
65+++ b/criu/include/pstree.h
66@@ -42,7 +42,7 @@ enum {
67 };
68 #define FDS_EVENT (1 << FDS_EVENT_BIT)
69
70-struct pstree_item *current;
71+extern struct pstree_item *current;
72
73 struct rst_info;
74 /* See alloc_pstree_item() for details */
75diff --git a/criu/include/tun.h b/criu/include/tun.h
76index ce0b266a..b82c445a 100644
77--- a/criu/include/tun.h
78+++ b/criu/include/tun.h
79@@ -5,7 +5,7 @@
80 #define TUN_MINOR 200
81 #endif
82
83-struct ns_id *ns;
84+extern struct ns_id *ns;
85
86 #include <linux/netlink.h>
87