RE: [PATCH v2] staging: unisys: visorbus: visorchannel: Refactor locking code to be statically deterministic.
From: Kershner, David A
Date: Wed Oct 19 2016 - 22:38:58 EST
> -----Original Message-----
> From: Cathal Mullaney [mailto:chuckleberryfinn@xxxxxxxxx]
> Subject: [PATCH v2] staging: unisys: visorbus: visorchannel: Refactor locking
> code to be statically deterministic.
>
> This patch makes locking in visorchannel_signalempty statically
> deterministic.
> As a result this patch fixes the sparse warning:
> Context imbalance in 'visorchannel_signalempty' - different lock
> contexts for basic block.
>
> The logic of the locking code doesn't change but the layout of the
> original code is "frowned upon"
> according to mails on sparse context checking.
> Refactoring removes the warning and makes the code more readable.
>
> Signed-off-by: Cathal Mullaney <chuckleberryfinn@xxxxxxxxx>
Tested-by: David Kershner <david.kershner@xxxxxxxxxx>
> ---
> V2: Removed unnecessary variable initialization, as suggested by Tim Sell
> <Timothy.Sell@xxxxxxxxxx>.
>
> drivers/staging/unisys/visorbus/visorchannel.c | 30 ++++++++++++++++----
> ------