On Tue, Jan 18, 2022 at 05:56:45PM +0100, Jakub Jelinek wrote:
> On Tue, Jan 18, 2022 at 05:40:31PM +0100, Adrian Reber wrote:
> > > If there are bugs on the compiler side, please let me know immediately,
> > > so that those bugs can be fixed before the mass rebuild next week.
> > 
> > Not sure if it is a bug, CRIU no longer works with GCC 12.
> > 
> > CRIU creates something called 'parasite code' which is injected into
> > running processes for checkpointing and that part is built with
> > '-nostdlib'. Starting with GCC 12 we see 'strlen()' being pulled into
> > the parasite code which it wasn't with GCC 11.
> 
> strlen is a standard C function, so I don't see any bug in that being used
> unless you do a freestanding compilation (-nostdlib isn't that).
> If you mail me preprocessed source of handle-elf-host.c + gcc
> command line used to compile it, I can have a look what exactly changed.

Thanks for mentioning freestanding compilations. That seems to have been
the problem.

On aarch64 I actually got a slightly different error message:

     ld: criu/pie/restorer.o: in function `lsm_set_label':
     /drone/src/criu/pie/restorer.c:174: undefined reference to `strlen'
    
    Line 174 is: "for (len = 0; label[len]; len++)"

Although there is no direct use of strlen(), it seems GCC 12 uses
strlen() for that line which did not happen with GCC 11. Using
'-ffreestanding' makes the compilation work with GCC 12 and CI still
looks happy. Thanks.

                Adrian
_______________________________________________
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org
Do not reply to spam on the list, report it: 
https://pagure.io/fedora-infrastructure

Reply via email to