[CRIU] [Announce] CRIU 3.5 "Clay Jay" is out

Adrian Reber adrian at lisas.de
Tue Oct 17 15:37:08 MSK 2017


On Thu, Sep 28, 2017 at 03:47:20PM +0200, Adrian Reber wrote:
> > > And one more failure on aarch64:
> > > 
> > > In file included from compel/include/uapi/compel/infect.h:6:0,
> > >                  from compel/include/uapi/compel/compel.h:12,
> > >                  from compel/include/log.h:4,
> > >                  from compel/arch/aarch64/src/lib/infect.c:8:
> > > compel/arch/aarch64/src/lib/infect.c: In function 'sigreturn_prep_regs_plain':
> > > compel/include/uapi/compel/asm/sigframe.h:47:99: error: 'mcontext_t {aka struct <anonymous>}' has no member named '__reserved'; did you mean '__glibc_reserved1'?
> > >  #define RT_SIGFRAME_AUX_CONTEXT(rt_sigframe) ((struct aux_context*)&(rt_sigframe)->uc.uc_mcontext.__reserved)
> > >                                                                                                    ^
> > > compel/include/uapi/compel/asm/sigframe.h:48:41: note: in expansion of macro 'RT_SIGFRAME_AUX_CONTEXT'
> > >  #define RT_SIGFRAME_FPU(rt_sigframe)  (&RT_SIGFRAME_AUX_CONTEXT(rt_sigframe)->fpsimd)
> > >                                          ^~~~~~~~~~~~~~~~~~~~~~~
> > > compel/arch/aarch64/src/lib/infect.c:34:34: note: in expansion of macro 'RT_SIGFRAME_FPU'
> > >   struct fpsimd_context *fpsimd = RT_SIGFRAME_FPU(sigframe);
> > >                                   ^~~~~~~~~~~~~~~
> > > make[1]: *** [/builddir/build/BUILD/criu-3.5/scripts/nmk/scripts/build.mk:209: compel/arch/aarch64/src/lib/infect.o] Error 1
> > > make: *** [Makefile.compel:36: compel/libcompel.a] Error 2
> > > error: Bad exit status from /var/tmp/rpm-tmp.IExY9K (%build)
> > > 
> > > This seems to be related to the following glibc changes:
> > > 
> > > https://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=4fa9b3bfe6759c82beb4b043a54a3598ca467289
> > 
> > 
> > >From the changelog:
> >    Use __glibc_reserved1 instead of __reserved.
> > 
> > And it's not a macro, so we cannot check it with #ifdef :\ IIRC we've seen smth like that
> > before, again with uc_mcontext.

Has this been fixed? I see that you are preparing for the next release
and have not seen and follow-up discussion on this.

		Adrian

> Yes, see my commit:
> 
> commit f2899a728cf2baf79655b5b2559f826af7c8452d
> Author: Adrian Reber <areber at redhat.com>
> Date:   Thu Jul 20 12:08:34 2017 -0400
> 
>     compel/aarch64: glibc renamed ucontext to ucontext_t
>     
>     The upcoming glibc release renamed 'struct ucontext' to
>     'struct ucontext_t':
>     
>     https://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=251287734e89a52da3db682a8241eb6bccc050c9;hp=c86ed71d633c22d6f638576f7660c52a5f783d66
>     
>     Instead of using 'struct ucontext' this patch changes it
>     to the typedef ucontext_t which already exists in older and
>     new versions of glibc.
>     
>     Signed-off-by: Adrian Reber <areber at redhat.com>
>     Reviewed-by: Dmitry Safonov <dsafonov at virtuozzo.com>
>     Signed-off-by: Andrei Vagin <avagin at virtuozzo.com>
> 
> That was possible to fix to work with the old and new glibc at the same time.
> 
> This change might require a feature test.
> 
> 		Adrian
> _______________________________________________
> CRIU mailing list
> CRIU at openvz.org
> https://lists.openvz.org/mailman/listinfo/criu

		Adrian

-- 
Adrian Reber <adrian at lisas.de>            http://lisas.de/~adrian/
   "If good things lasted forever, would we appreciate how precious they are?"
-Hobbes


More information about the CRIU mailing list