Received: by 2002:a05:7412:3290:b0:fa:6e18:a558 with SMTP id ev16csp215220rdb; Thu, 25 Jan 2024 12:54:11 -0800 (PST) X-Google-Smtp-Source: AGHT+IFSPFk36OJ6NdCqjtq0BzNRniKft1w1P8slfdHkicf3m7aNQrYmwtRJAdWYoNFoBJa5D8BZ X-Received: by 2002:a05:6214:19c9:b0:686:a1a5:f03d with SMTP id j9-20020a05621419c900b00686a1a5f03dmr317387qvc.47.1706216051459; Thu, 25 Jan 2024 12:54:11 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1706216051; cv=pass; d=google.com; s=arc-20160816; b=mEkgNDK3VpJBFEGVzaN9FjTwk94UR5lYiAs9uYSJAysEqcGrpedqnS0YcZeefDBs4a bSXhK6KykE+Nnsi9KN424jEkVyO890ZjNtAwM1YMoHJWBonxXXiWszpyb0dEFycVT63t XDqnVlOaEfVjimNXbBn9QAHiNQdFXz/9OKpOQD8TXXpqVhB+fEb8oyPojdQ+4mcP5HoD uoUtc86m0itlGp7SqplQDM9jpyy0+y9DoOkJltfUzzt2gyC25CHeVNBMgDkoT8wc7t2F iDkIxlskkh0Eb6Lt/nsOD6yUVcwtmL+9sWc7J6Hp7uXKifH0STsv6/7tbVTgJysxWun4 fKaw== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:message-id:date:subject:cc:to :from:dkim-signature; bh=lvIwTLoL5N7rudKIDRrhH6OrqM05O1qNoqG8wNNdO00=; fh=BgfxqwTUzGkbtUEi4viM0qE2t9I24fx0gVGLtIAyTEw=; b=TJ7+UDvlL3RerjPEnqItAEY+GcEJ5uoIiVWHYB+YsCsAXX56F8nv4yNdUt09BQjL62 0nfO36Olwma1rnt6WEd8H/kZz9Cmp7L1VU+6qXNug6OewrXuZAAo5cTF43ULbvJ06x+r Ng6WwWAfEQWzhVZY3CCA9N0/3GAStawRDbvdXe7q2MLtB5R140gpBnjnxvPIH/m4j1fM F5PZQnY5qHOIS115qcavLDgSkZTD35aXIHCf9IOuSc7S59Yh9D+ksKiLWcIjg6wNrTVa ln//f1v9HaVQEYN2vmR1k1hRFdezeku+jy0ciyeMDhAwjzFseVorl89TSTnSCchGJvTW /m9g== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@baylibre-com.20230601.gappssmtp.com header.s=20230601 header.b=bCdgPMNE; arc=pass (i=1 spf=pass spfdomain=baylibre.com dkim=pass dkdomain=baylibre-com.20230601.gappssmtp.com); spf=pass (google.com: domain of linux-kernel+bounces-39267-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-39267-linux.lists.archive=gmail.com@vger.kernel.org" Return-Path: Received: from ny.mirrors.kernel.org (ny.mirrors.kernel.org. [2604:1380:45d1:ec00::1]) by mx.google.com with ESMTPS id r5-20020a0cb285000000b0068171ee32basi13913454qve.213.2024.01.25.12.54.11 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 25 Jan 2024 12:54:11 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-39267-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) client-ip=2604:1380:45d1:ec00::1; Authentication-Results: mx.google.com; dkim=pass header.i=@baylibre-com.20230601.gappssmtp.com header.s=20230601 header.b=bCdgPMNE; arc=pass (i=1 spf=pass spfdomain=baylibre.com dkim=pass dkdomain=baylibre-com.20230601.gappssmtp.com); spf=pass (google.com: domain of linux-kernel+bounces-39267-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-39267-linux.lists.archive=gmail.com@vger.kernel.org" Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ny.mirrors.kernel.org (Postfix) with ESMTPS id 025BC1C25411 for ; Thu, 25 Jan 2024 20:54:11 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 0AF131386B5; Thu, 25 Jan 2024 20:54:04 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=baylibre-com.20230601.gappssmtp.com header.i=@baylibre-com.20230601.gappssmtp.com header.b="bCdgPMNE" Received: from mail-ot1-f48.google.com (mail-ot1-f48.google.com [209.85.210.48]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 055CC135A5E for ; Thu, 25 Jan 2024 20:53:59 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.48 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1706216043; cv=none; b=W50sHat1BoEsujn6cCgN5fVzvYGF9mqfYprm36tAZDY81d2M9aG+Cv48ha1EhP0gmFlGzherNipJms7pVZTG82PdJFfhdqumL7nGztF6+KJJnK2SlowuSvQY/cLH1Y7BGPAjFlQO/dehbVodNdbOJNf3Y1wKNwqadLcGWkny8Pw= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1706216043; c=relaxed/simple; bh=qN97QgxcNwazBwy4m/qPZYRkk3uOCPeLawJl4nD8TjE=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=ts7xIi9NTAHlkG76iM+cObjVnm9ROAjz0fWAS0JS7pI/GK25c+hYqdQiXu1YmMH+wDr+ujYP+/azCJOyc5Ipzikqnalp1PxD3pUO5Ap/TZJtH4LI9QUvvfb7FZFMtydTnw8XJR0Q4xoHhlg3yVRrYtY2tDdtpsZ/e0AhGl/+G9w= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=baylibre.com; spf=pass smtp.mailfrom=baylibre.com; dkim=pass (2048-bit key) header.d=baylibre-com.20230601.gappssmtp.com header.i=@baylibre-com.20230601.gappssmtp.com header.b=bCdgPMNE; arc=none smtp.client-ip=209.85.210.48 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=baylibre.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=baylibre.com Received: by mail-ot1-f48.google.com with SMTP id 46e09a7af769-6dc20b4595bso8105a34.0 for ; Thu, 25 Jan 2024 12:53:59 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre-com.20230601.gappssmtp.com; s=20230601; t=1706216039; x=1706820839; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=lvIwTLoL5N7rudKIDRrhH6OrqM05O1qNoqG8wNNdO00=; b=bCdgPMNE+ZHihgKF5O8VhumWqQvzjCGvuqO5u4AfDY8b8cS4x3pNxiu+xelgwvBTBC ma7QWs59zYrb07bLkJBk1g/UPeQQpzW1vfJPTkOlAcAy7DnPVl5+fQOdQNXicfDecraK Zmk8WPih+dGPulkUY0Lcat/8xQQyJDxtEt46WLTkeulud2rEV6z4j/y5w9knC/frrLgc Y0UJY01WtPouGl7cO/U+aEf0F8cc6ve46KXHJB2pHzMwh2y7LWUQWMuLpIA7IrI1d6wD YkoCVfCyF3Tew2h2p0Gr3PrfLIab6pzfgvJWQ89L4pIKcls2j56yugFAyTz6EPCzhxLa FNLw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706216039; x=1706820839; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=lvIwTLoL5N7rudKIDRrhH6OrqM05O1qNoqG8wNNdO00=; b=MyV3NdNkIFnq9Zwsgke7tukAJ4gui7y8Ei0rlyztq7pAj8+kmThJ58ioFrUVCemFEK 9RLKx1lMXh1bDfeRi+IdFiARw807/h6fOJuT1zNb36P2BmOswfSnH7cTADA/hL2WtWUM yz4k/Kp0WwFSMvTyt7VEE0Mr88kujTzp/LO+NadItrQVIVTosLrhvy7+cd4zzu8188V4 +rJLCPPaSXqP7nHmgRPtN8A+mzCLSJLAFh1GcBJtFnTLD+VIr0s/8ZZclpowxO73X0NK 6f/RdQWLMmaraGz2Ypyc2E/LUxO7DrP93RZl7qnltBklzI3LFBDe92n+c8kQo6V8AqVU +pPQ== X-Gm-Message-State: AOJu0Yywix+2e8EBmFpLp1sPuP70ygmXaDWfJvu7j9pbKa/IkpSgg+pP QkFHN7XmYHpD+dwvpLqHS3FIyS94qYNDYwGzzY9j48qfRWG78q7eorFT8fbzRqlCpv/RuxszVjN o X-Received: by 2002:a9d:7494:0:b0:6d9:d815:f399 with SMTP id t20-20020a9d7494000000b006d9d815f399mr446661otk.66.1706216039071; Thu, 25 Jan 2024 12:53:59 -0800 (PST) Received: from freyr.lechnology.com (ip98-183-112-25.ok.ok.cox.net. [98.183.112.25]) by smtp.gmail.com with ESMTPSA id v2-20020a056830140200b006e0c65ba0b4sm3108968otp.13.2024.01.25.12.53.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 25 Jan 2024 12:53:58 -0800 (PST) From: David Lechner To: Mark Brown Cc: David Lechner , David Jander , linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH] spi: fix finalize message on error return Date: Thu, 25 Jan 2024 14:53:09 -0600 Message-ID: <20240125205312.3458541-2-dlechner@baylibre.com> X-Mailer: git-send-email 2.43.0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit In __spi_pump_transfer_message(), the message was not finalized in the first error return as it is in the other error return paths. Not finalizing the message could cause anything waiting on the message to complete to hang forever. This adds the missing call to spi_finalize_current_message(). Fixes: ae7d2346dc89 ("spi: Don't use the message queue if possible in spi_sync") Signed-off-by: David Lechner --- Context: I just noticed that this was missing while looking at the code, so I didn't actually hit the error path here. Also, technically the bug probably existed before the Fixes commit but that change did some refactoring and moved that particular chunk of code, so that is the oldest commit where this patch will apply cleanly. drivers/spi/spi.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/spi/spi.c b/drivers/spi/spi.c index 7a70ef47cdf6..4dea33ca50b9 100644 --- a/drivers/spi/spi.c +++ b/drivers/spi/spi.c @@ -1717,6 +1717,10 @@ static int __spi_pump_transfer_message(struct spi_controller *ctlr, pm_runtime_put_noidle(ctlr->dev.parent); dev_err(&ctlr->dev, "Failed to power device: %d\n", ret); + + msg->status = ret; + spi_finalize_current_message(ctlr); + return ret; } } -- 2.43.0