OEcore/bitbake are moving to use the clearer ":" as an overrides
separator.
This is pass one of updating the meta-virt recipes to use that
syntax.
This has only been minimally build/runtime tested, more changes
will be required for missed overrides, or incorrect conversions
Note: A recent bitbake is required:
commit 75fad23fc06c008a03414a1fc288a8614c6af9ca
Author: Richard Purdie <richard.purdie@linuxfoundation.org>
Date: Sun Jul 18 12:59:15 2021 +0100
bitbake: data_smart/parse: Allow ':' characters in variable/function names
It is becomming increasingly clear we need to find a way to show what
is/is not an override in our syntax. We need to do this in a way which
is clear to users, readable and in a way we can transition to.
The most effective way I've found to this is to use the ":" charater
to directly replace "_" where an override is being specified. This
includes "append", "prepend" and "remove" which are effectively special
override directives.
This patch simply adds the character to the parser so bitbake accepts
the value but maps it back to "_" internally so there is no behaviour
change.
This change is simple enough it could potentially be backported to older
version of bitbake meaning layers using the new syntax/markup could
work with older releases. Even if other no other changes are accepted
at this time and we don't backport, it does set us on a path where at
some point in future we could
require a more explict syntax.
I've tested this patch by converting oe-core/meta-yocto to the new
syntax for overrides (9000+ changes) and then seeing that builds
continue to work with this patch.
(Bitbake rev: 0dbbb4547cb2570d2ce607e9a53459df3c0ac284)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
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>
Remove the following patch, because the 3.11 version already contain it.
0001-kdat-Don-t-open-run-criu.kdat-if-doesn-t-exists.patch
Signed-off-by: Dengke Du <dengke.du@windriver.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Generally, our host gcc version below 8.0, but cross toolchain in yocto
above 8.0, now 8.3, the option "macro-prefix-map" coming from 8.0, so if
the host gcc below 8.0, it can't unrecognized the option "macro-prefix-map".
In criu source code, the HOSTCFLAGS coming from CFLAGS:
https://github.com/checkpoint-restore/criu/blob/criu-dev/Makefile#L17
In yocto project, the CFLAGS coming from the cross toolchain, containing
the "-fmacro-prefix-map" default, so we should use the BUILD_CFLAGS, it
contains the flags that used for host building.
Signed-off-by: Dengke Du <dengke.du@windriver.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
When CRIU is called for a first time and the /run/criu.kdat file does
not exists, the following warning is shown:
Warn (criu/kerndat.c:847): Can't load /run/criu.kdat
This patch is replacing this warning with a more appropriate debug
message.
File /run/criu.kdat does not exist
Signed-off-by: Hongzhi.Song <hongzhi.song@windriver.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
A fairly straightforward uprev requiring minimal patch refreshing
since a few hunks were failing due to conflicts with upstream updates.
Unfortunately upstream starting using the now overloaded "PYTHON"
variable in their Makefiles, this is not the path to the python
executable but rather the name 'python2' or 'python3' which is used to
determine which local directories to include. Due to this we must
explicitly assign values to 'PYTHON_FULL' and 'PYTHON'. We use
'python2' since we are using 'setuptools' and therefore are explicitly
using python v2, at some point we might want to make this recipe work
with either python v2 or v3 but for now we continue to explicitly use
v2.
Instead of using version specific filename we switch to using _git.bb
which is inline with similar 'git' recipes found in oe-core and other
repos.
Signed-off-by: Mark Asselstine <mark.asselstine@windriver.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
1) Upgrade criu from 3.4 to 3.9.
2) Delete fix-building-on-newest-glibc-and-kernel.patch for it has been merged in upstream.
3) Add CFLAGS_arm += "-D__WORDSIZE"
add this CFLAGS to solve the compile problem for arm.
The log is as following:
| ....../tmp/work/armv5e-poky-linux-gnueabi/criu/3.9+gitAUTOINC+202b7745bd-r0/recipe-sysroot/usr/include/bits/wordsize.h:36:2: error: #error "__WORDSIZE is not defined"
| #error "__WORDSIZE is not defined"
| ^
| ....../tmp/work/armv5e-poky-linux-gnueabi/criu/3.9+gitAUTOINC+202b7745bd-r0/recipe-sysroot/usr/include/bits/wordsize.h:59:2: error: #
4) Add export C_INCLUDE_PATH="${STAGING_INCDIR}/libnl3"
add C_INCLUDE_PATH to solve the compile problem for arm.
which is libnetlink.c can't find head file.
| In file included from criu/libnetlink.c:5:
| ....../tmp/work/armv5e-p
| oky-linux-gnueabi/criu/3.9+gitAUTOINC+202b7745bd-r0/recipe-sysroot/usr/include/libnl3/netlink/attr.h:15:10: fatal error: netlink/netlink.h: No such file or directory #include <netlink/netlink.h>
Signed-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
With newer glibc(>= 2.26) and kernel(>=4.14), criu would fail to build:
In file included from
/buildarea/build/tmp/work/core2-64-poky-linux/criu/3.4+gitAUTOINC+a31c1854e1-r0/recipe-sysroot/usr/include/linux/aio_abi.h:31:0,
from criu/cr-check.c:24:
/buildarea/build/tmp/work/core2-64-poky-linux/criu/3.4+gitAUTOINC+a31c1854e1-r0/recipe-sysroot/usr/include/sys/mount.h:35:3:
error: expected identifier before numeric constant
MS_RDONLY = 1, /* Mount read-only. */
^
CC criu/parasite-syscall.o
CC criu/pipes.o
CC criu/pie-util.o
CC criu/pie-util-vdso.o
CC criu/plugin.o
/buildarea/build/tmp/work/core2-64-poky-linux/criu/3.4+gitAUTOINC+a31c1854e1-r0/git/scripts/nmk/scripts/build.mk:110:
recipe for target 'criu/cr-check.o' failed
make[2]: *** [criu/cr-check.o] Error 1
Backport a patch to fix it.
Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Rebuilding criu would cause the following error.
| make: .gitid: Command not found
| make: *** [Makefile:260: clean-top] Error 127
Fix this problem by setting CLEANBROKEN to "1".
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Our current version of criu is about a year old and has some
compilation issues with the latest gcc (currently it is
unbuildable). Since the version of criu and the kernel version are
fairly tightly coupled it wouldn't be surprising of this old criu
would also be exhibiting some runtime issues with our fairly new
kernel version.
With the above in mind we uprev to criu v3.4 which was recently
released. This requires several of the patches to be updated (mostly
context). We are able to drop the selinux related change as RSS
prevents the situation this was working around from happenning.
This was validated using https://criu.org/Simple_loop (and a few
variants).
Signed-off-by: Mark Asselstine <mark.asselstine@windriver.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Fix the following QA warning:
QA Issue: /usr/libexec/criu/scripts/systemd-autofs-restart.sh contained
in package criu requires /bin/bash, but no providers found in
RDEPENDS_criu? [file-rdeps]
Signed-off-by: He Zhe <zhe.he@windriver.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Fix the following QA warning:
QA Issue: criu rdepends on libbsd, but it isn't a build dependency? [build-deps]
This had been fixed by 1fd94d8535,
but then was overwritten by b9b7ece0cd
Signed-off-by: He Zhe <zhe.he@windriver.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Historically Yocto installs python modules in ${libdir} and not the
no-arch variant. The criu install was following every other distros
use of the non-arch variant, /usr/lib, which was being picked up by
the QA check. Modify the criu Makefile to enable us to overwrite this
location by using setup.py's install-lib directive.
Signed-off-by: Mark Asselstine <mark.asselstine@windriver.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
To provide hexdump which is used as part of the build process. Resolves
| criu/pie/../../scripts/gen-offsets.sh: line 37: hexdump: command not found
| criu/pie/Makefile:96: recipe for target 'criu/pie/parasite-blob.h' failed
Signed-off-by: Mark Asselstine <mark.asselstine@windriver.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
It shows warning when build crius if libselinux has been built already:
WARNING: QA Issue: criu rdepends on libselinux, but it isn't a build dependency? [build-deps]
Add a patch to disable selinux support when 'selinux' is not in PACKAGECONF.
And update indentation at same time.
Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
This is fixing:
QA Issue: criu rdepends on libbsd, but it isn't a build dependency? [build-deps]
Signed-off-by: Yunguo Wei <yunguo.wei@windriver.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Upgrade criu from version from 1.2 to 1.4.
criu is the only user of protobuf and only supported on x86 and arm,
so limit protobuf support on x86 and arm too.
Signed-off-by: Nam Ninh <nam.ninh@windriver.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>