The callers ensures that connection->lock is taken before calling few
routines, but that isn't enough for sparse as it sees an unexpected
unlock.
greybus/connection.c:380:29: warning: context imbalance in 'gb_connection_cancel_operations' - unexpected unlock
Fix that adding __must_lock() attribute to the function declaration.
This also adds the attribute for
gb_connection_flush_incoming_operations(), which isn't showing any
sparse warnings with the current state of code, but with minor
rearrangements of the code.
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
Reviewed-by: Alex Elder <elder@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
*/
static void gb_connection_cancel_operations(struct gb_connection *connection,
int errno)
+ __must_hold(&connection->lock)
{
struct gb_operation *operation;
static void
gb_connection_flush_incoming_operations(struct gb_connection *connection,
int errno)
+ __must_hold(&connection->lock)
{
struct gb_operation *operation;
bool incoming;