https://gcc.gnu.org/bugzilla/show_bug.cgi?id=121432

--- Comment #26 from Neal Frager <neal.frager at amd dot com> ---
(In reply to Gopi Kumar Bulusu from comment #25)
> 
> (In reply to Thomas Petazzoni from comment #11)
> > So I've been able to narrow down the issue to arch/microblaze/kernel/irq.o.
> > I can't say it's the only file impacted, but as soon as I have this object
> > file from GCC 15.x in my build, it fails
> >
> 
> Tried independent fixes for irq.c (make do_IRQ call another do_IRQ_real
> marked as noinline) and entry.S ( changes to allocate ARGS_SIZE on both
> paths to do_IRQ call) before passing on control to do_IRQ
> 
> Execution continues and fails with this message
> 
> Run /init as init process
>   with arguments:
>     /init
>   with environment:
>     HOME=/
>     TERM=linux
> 
> Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b
> ---[ end Kernel panic - not syncing: Attempted to kill init!
> exitcode=0x0000000b ]---
> 
> Understandably - there appear to be other places in arch/microblaze/kernel
> that need to be fixed as well (example signal.c:do_notify_resume)
> 
> Any suggestions ?

Are you absolutely sure that there is an issue in the assembly code used by the
Linux kernel?  This code has been working without problems for a few years now.

Are you sure that simply implementing a proper microblaze_callee_save_cost
function in gcc is not the right solution?

Best regards,
Neal Frager
AMD

Reply via email to