git: d101156ec69d - main - intelspi(4): Add missing driver mutex unlock in NO_SLEEP mode
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Mon, 31 Jul 2023 14:30:58 UTC
The branch main has been updated by wulf:
URL: https://cgit.FreeBSD.org/src/commit/?id=d101156ec69d4c51d626034419a48634d3827f23
commit d101156ec69d4c51d626034419a48634d3827f23
Author: Vladimir Kondratyev <wulf@FreeBSD.org>
AuthorDate: 2023-07-31 14:30:24 +0000
Commit: Vladimir Kondratyev <wulf@FreeBSD.org>
CommitDate: 2023-07-31 14:30:24 +0000
intelspi(4): Add missing driver mutex unlock in NO_SLEEP mode
Fixes: 1f40866feb21 ("intelspi: add PCI attachment (Lynx/Wildcat/Sunrise Point)")
MFC after: 1 week
---
sys/dev/intel/spi.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/sys/dev/intel/spi.c b/sys/dev/intel/spi.c
index 497c2606a1c9..0ac7a3b5e9bb 100644
--- a/sys/dev/intel/spi.c
+++ b/sys/dev/intel/spi.c
@@ -317,8 +317,10 @@ intelspi_transfer(device_t dev, device_t child, struct spi_command *cmd)
/* If the controller is in use wait until it is available. */
while (sc->sc_flags & INTELSPI_BUSY) {
- if ((cmd->flags & SPI_FLAG_NO_SLEEP) == SPI_FLAG_NO_SLEEP)
+ if ((cmd->flags & SPI_FLAG_NO_SLEEP) == SPI_FLAG_NO_SLEEP) {
+ INTELSPI_UNLOCK(sc);
return (EBUSY);
+ }
err = mtx_sleep(dev, &sc->sc_mtx, 0, "intelspi", 0);
if (err == EINTR) {
INTELSPI_UNLOCK(sc);