diff options
author | Gavin Shan <gshan@redhat.com> | 2020-09-22 15:04:20 +0200 |
---|---|---|
committer | Will Deacon <will@kernel.org> | 2020-09-28 22:52:23 +0200 |
commit | a27c04e1de876297b78a6b812049e6fecc6e4d9a (patch) | |
tree | d788c4a7e13acd01c273edd5c049bd6c30a5ec88 | |
parent | firmware: arm_sdei: Remove while loop in sdei_event_unregister() (diff) | |
download | linux-a27c04e1de876297b78a6b812049e6fecc6e4d9a.tar.xz linux-a27c04e1de876297b78a6b812049e6fecc6e4d9a.zip |
firmware: arm_sdei: Cleanup on cross call function
This applies cleanup on the cross call functions, no functional
changes are introduced:
* Wrap the code block of CROSSCALL_INIT inside "do { } while (0)"
as linux kernel usually does. Otherwise, scripts/checkpatch.pl
reports warning regarding this.
* Use smp_call_func_t for @fn argument in sdei_do_cross_call()
as the function is called on target CPU(s).
* Remove unnecessary space before @event in sdei_do_cross_call()
Signed-off-by: Gavin Shan <gshan@redhat.com>
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: James Morse <james.morse@arm.com>
Link: https://lore.kernel.org/r/20200922130423.10173-11-gshan@redhat.com
Signed-off-by: Will Deacon <will@kernel.org>
-rw-r--r-- | drivers/firmware/arm_sdei.c | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/drivers/firmware/arm_sdei.c b/drivers/firmware/arm_sdei.c index 790bff70d169..786c1b6d4af3 100644 --- a/drivers/firmware/arm_sdei.c +++ b/drivers/firmware/arm_sdei.c @@ -78,11 +78,15 @@ struct sdei_crosscall_args { int first_error; }; -#define CROSSCALL_INIT(arg, event) (arg.event = event, \ - arg.first_error = 0, \ - atomic_set(&arg.errors, 0)) - -static inline int sdei_do_cross_call(void *fn, struct sdei_event * event) +#define CROSSCALL_INIT(arg, event) \ + do { \ + arg.event = event; \ + arg.first_error = 0; \ + atomic_set(&arg.errors, 0); \ + } while (0) + +static inline int sdei_do_cross_call(smp_call_func_t fn, + struct sdei_event *event) { struct sdei_crosscall_args arg; |