[CRIU] [Announce] CRIU v3.3 (Crystal Pelican)

Dmitry Safonov 0x7f454c46 at gmail.com
Wed Jul 19 19:36:30 MSK 2017


2017-07-19 18:58 GMT+03:00 Dmitry Safonov <0x7f454c46 at gmail.com>:
> 2017-07-19 18:26 GMT+03:00 Adrian Reber <adrian at lisas.de>:
>> On Wed, Jul 19, 2017 at 04:52:50PM +0300, Dmitry Safonov wrote:
>>> 2017-07-19 16:39 GMT+03:00 Adrian Reber <adrian at lisas.de>:
>>> > On Wed, Jul 19, 2017 at 11:54:31AM +0300, Pavel Emelyanov wrote:
>>> >> On 07/19/2017 10:26 AM, Adrian Reber wrote:
>>> >> > On Tue, Jul 18, 2017 at 10:01:35PM +0300, Pavel Emelyanov wrote:
>>> >> >> The new version is out. Most of the changes this time are preparation for future new
>>> >> >> features and optimizations, that hasn't yet been well tested and polished.
>>> >> >>
>>> >> >> However, we have several new features. The most important one is the --tcp-close
>>> >> >> option to help migration of Docker containers, that constantly change their IP address.
>>> >> >>
>>> >> >> And, as usually, a set of bugfixes.
>>> >> >>
>>> >> >> Changelog: https://criu.org/Download/criu/3.3
>>> >> >> Sources: http://download.openvz.org/criu/criu-3.3.tar.bz2
>>> >> >
>>> >> > I have a build failure on aarch64:
>>> >> >
>>> >> > In file included from compel/plugins/std/infect.c:13:0:
>>> >> > compel/include/uapi/compel/asm/sigframe.h:30:20: error: field 'uc' has incomplete type
>>> >> >   struct ucontext   uc;
>>> >> >                     ^~
>>> >>
>>> >> Ouch :( As a lame excuse we have aarch64 build passed on Travis :)
>>> >> https://travis-ci.org/xemul/criu/jobs/255093557
>>> >>
>>> >> Adrian, would you try to fix this issue, it looks like just some system header
>>> >> that was included on Travis' Ubuntu is missing on Fedora.
>>> >
>>> > This is another glibc change:
>>> >
>>> > https://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=251287734e89a52da3db682a8241eb6bccc050c9;hp=c86ed71d633c22d6f638576f7660c52a5f783d66
>>> >
>>> > 'struct ucontext' has been renamed to 'struct ucontext_t'
>>>
>>> Ugh, thanks for noticing that!
>>>
>>> >
>>> > Any recommendations how a fix should look like? Old glibc has 'struct
>>> > ucontext' and the new, upcoming release has 'struct ucontext_t'.
>>>
>>> There are scripts/feature-tests.mak - simple tests for compiler/environment.
>>> Add there a test something like UCONTEXT_T with a simple
>>> main() { struct ucontext_t tmp; return 0; }
>>>
>>> Add this also to FEATURES_LIST in Makefile.config and then define
>>
>> That works, but config.h is not included into compel. I guess that
>> compel should not include files from criu, right? So I have the
>> information in criu but not in compel. There is no feature check in
>> compel yet, as far as I see.
>
> Well, at this moment splitting isn't perfect:
> we have criu/include/config.h, but we also have
> soccr/config.h -> ../criu/include/config.h
>
> I suggest adding the same compel/include/config.h link for quick fixup.
> And afterward, we should move config.h into include/common.
> That should be quite simple by fixing $(CONFIG_HEADER).
>
> So, you can do both if you feeling to make it..

Something like this should do the trick with common config.h file:
https://github.com/0x7f454c46/criu/commit/68857c5f332592bcfe75f00b6da105eb1362875c
(travis build in progress to verify)

-- 
             Dmitry


More information about the CRIU mailing list