From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id ED0651F3FFE; Tue, 21 Jan 2025 18:10:28 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1737483029; cv=none; b=ux0nUY8TgmjO6v2196NacKtO/cpZolMcd56JXTGJgawq3dz8uXwfJ+3Lu/4R/VFzafKG6HUp9yr76m4RIzFgmAqhvua1TYNnjeBO++W+tKmvJUE8VE46dY2Wuzj1vGjf5KNv6ovkW1Mzjh9ZhDw9y+hU0p+ZQ8l78T9/tQr979M= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1737483029; c=relaxed/simple; bh=AyBp9P6vhFsDV7Acj/syNgEffbGJIWi0pgIh1frgm1E=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=JGjXW7p7bM+D2wb31Y6ARg1aErkzRJiEbfhqAhssC6f/dzNjKlcO0OslTD/HboUb3MC61tav6va6oxZeUMV0pnaNNDBAZO2jk1ZHgmulPfaMBbjzdGC3o2FbNL8s+yN/sI7wXxvLS7/+1ras/rkr/Qkk+XlSSODq0QMO3uTgiHM= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linuxfoundation.org header.i=@linuxfoundation.org header.b=i6czOxE/; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linuxfoundation.org header.i=@linuxfoundation.org header.b="i6czOxE/" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 711EBC4CEDF; Tue, 21 Jan 2025 18:10:28 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1737483028; bh=AyBp9P6vhFsDV7Acj/syNgEffbGJIWi0pgIh1frgm1E=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=i6czOxE/VJ/lU3F3koMyOq2N8TXNRN2oE6RG0gNhuFvoPObMUsvTFy970WaTSYRic QnJS8A1hRO+dO4fbY2o3S+L1/sHXRbvDWsdqVu6/CEv4tFUQjEbGZQl9geuyGldAm8 0/K21gWstowKSjcx+9d+xzLYToIGe/xEOsVfIysM= From: Greg Kroah-Hartman To: stable@vger.kernel.org Cc: Greg Kroah-Hartman , patches@lists.linux.dev, =?UTF-8?q?Ma=C3=ADra=20Canal?= , Jose Maria Casanova Crespo , Sasha Levin Subject: [PATCH 5.15 091/127] drm/v3d: Ensure job pointer is set to NULL after job completion Date: Tue, 21 Jan 2025 18:52:43 +0100 Message-ID: <20250121174533.156374038@linuxfoundation.org> X-Mailer: git-send-email 2.48.1 In-Reply-To: <20250121174529.674452028@linuxfoundation.org> References: <20250121174529.674452028@linuxfoundation.org> User-Agent: quilt/0.68 X-stable: review X-Patchwork-Hint: ignore Precedence: bulk X-Mailing-List: stable@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 5.15-stable review patch. If anyone has any objections, please let me know. ------------------ From: Maíra Canal [ Upstream commit e4b5ccd392b92300a2b341705cc4805681094e49 ] After a job completes, the corresponding pointer in the device must be set to NULL. Failing to do so triggers a warning when unloading the driver, as it appears the job is still active. To prevent this, assign the job pointer to NULL after completing the job, indicating the job has finished. Fixes: 14d1d1908696 ("drm/v3d: Remove the bad signaled() implementation.") Signed-off-by: Maíra Canal Reviewed-by: Jose Maria Casanova Crespo Link: https://patchwork.freedesktop.org/patch/msgid/20250113154741.67520-1-mcanal@igalia.com Signed-off-by: Sasha Levin --- drivers/gpu/drm/v3d/v3d_irq.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/gpu/drm/v3d/v3d_irq.c b/drivers/gpu/drm/v3d/v3d_irq.c index e714d5318f309..76806039691a2 100644 --- a/drivers/gpu/drm/v3d/v3d_irq.c +++ b/drivers/gpu/drm/v3d/v3d_irq.c @@ -103,6 +103,7 @@ v3d_irq(int irq, void *arg) trace_v3d_bcl_irq(&v3d->drm, fence->seqno); dma_fence_signal(&fence->base); + v3d->bin_job = NULL; status = IRQ_HANDLED; } @@ -112,6 +113,7 @@ v3d_irq(int irq, void *arg) trace_v3d_rcl_irq(&v3d->drm, fence->seqno); dma_fence_signal(&fence->base); + v3d->render_job = NULL; status = IRQ_HANDLED; } @@ -121,6 +123,7 @@ v3d_irq(int irq, void *arg) trace_v3d_csd_irq(&v3d->drm, fence->seqno); dma_fence_signal(&fence->base); + v3d->csd_job = NULL; status = IRQ_HANDLED; } @@ -157,6 +160,7 @@ v3d_hub_irq(int irq, void *arg) trace_v3d_tfu_irq(&v3d->drm, fence->seqno); dma_fence_signal(&fence->base); + v3d->tfu_job = NULL; status = IRQ_HANDLED; } -- 2.39.5