[PATCH v2] powerpc/xive: Add some error handling code to 'xive_spapr_init()'
Cédric Le Goater
clg at kaod.org
Wed Feb 2 00:28:29 AEDT 2022
On 2/1/22 13:31, Christophe JAILLET wrote:
> 'xive_irq_bitmap_add()' can return -ENOMEM.
> In this case, we should free the memory already allocated and return
> 'false' to the caller.
>
> Also add an error path which undoes the 'tima = ioremap(...)'
>
> Signed-off-by: Christophe JAILLET <christophe.jaillet at wanadoo.fr>
Reviewed-by: Cédric Le Goater <clg at kaod.org>
> ---
> NOT compile tested (I don't have a cross compiler and won't install one).
> So if some correction or improvement are needed, feel free to propose and
> commit it directly.
A cross compiler takes a couple of seconds to install on any distro.
It takes a little more to compile the pseries defconfig. To test with
QEMU, grab the disk image here :
https://github.com/legoater/qemu-ppc-boot/blob/main/buildroot/qemu_ppc64le_pseries-2021.11-7-g3058e75456-20211206
run :
qemu-system-ppc64 -M pseries -cpu POWER9 -kernel vmlinux -append "console=hvc0 rootwait root=/dev/sda" -drive file=rootfs.ext2,if=scsi,index=0,format=raw -nographic -net nic -net user -serial mon:stdio
and you will have a pseries machine with network and disk using the
XIVE interrupt controller.
To get more info on the genirq layer and the XIVE driver, simply
append :
dyndbg="file arch/powerpc/sysdev/xive/* +p; file kernel/irq/* +p"
Thanks,
C.
More information about the Linuxppc-dev
mailing list