From: Ofir Bitton Date: Sun, 25 Oct 2020 07:36:08 +0000 (+0200) Subject: habanalabs: release signal if collective wait was dropped X-Git-Tag: howlett/maple_spf/20210104~354^2~60^2~41 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=c1d505a922fe89ff44db4de5f88f20037a571c7a;p=users%2Fjedix%2Flinux-maple.git habanalabs: release signal if collective wait was dropped As in standard wait cs, we must release a signal fence once a collective wait cs was dropped and not submitted. Signed-off-by: Ofir Bitton Reviewed-by: Oded Gabbay Signed-off-by: Oded Gabbay --- diff --git a/drivers/misc/habanalabs/common/command_submission.c b/drivers/misc/habanalabs/common/command_submission.c index 56dc18f0bc27..536e09542e22 100644 --- a/drivers/misc/habanalabs/common/command_submission.c +++ b/drivers/misc/habanalabs/common/command_submission.c @@ -300,9 +300,11 @@ static void cs_do_release(struct kref *ref) if (!cs->submitted) { /* In case the wait for signal CS was submitted, the put occurs - * in init_signal_wait_cs() right before hanging on the PQ. + * in init_signal_wait_cs() or collective_wait_init_cs() + * right before hanging on the PQ. */ - if (cs->type == CS_TYPE_WAIT) + if (cs->type == CS_TYPE_WAIT || + cs->type == CS_TYPE_COLLECTIVE_WAIT) hl_fence_put(cs->signal_fence); goto out;