efi_loader: Convert runtime reset from switch to if statements
authorAlexander Graf <agraf@suse.de>
Sun, 10 Jun 2018 19:51:02 +0000 (21:51 +0200)
committerAlexander Graf <agraf@suse.de>
Thu, 14 Jun 2018 08:52:14 +0000 (10:52 +0200)
commite4679489c3fc12f87ce64347d2cebd5090ca9619
tree4343f2619c67155718eb924865e123af4e3334ad
parentde452c04c391948dbff68029e900fbb10dd5efb2
efi_loader: Convert runtime reset from switch to if statements

We currently handle the UEFI runtime reset / power off case handling via
a switch statement. Compilers (gcc in my case) may opt to handle these via
jump tables which they may conveniently put into .rodata which is not part
of the runtime section, so it will be unreachable when executed.

Fix this by just converting the switch statement into an if/else statement.
It produces smaller code that is faster and also correct because we no
longer refer .rodata from efi runtime code.

Reported-by: Andreas Färber <aferber@suse.de>
Signed-off-by: Alexander Graf <agraf@suse.de>
arch/arm/cpu/armv8/fwcall.c
arch/arm/mach-bcm283x/reset.c