]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
soc: aspeed: lpc-snoop: Cleanup resources in stack-order
authorAndrew Jeffery <andrew@codeconstruct.com.au>
Mon, 16 Jun 2025 13:13:38 +0000 (22:43 +0930)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 28 Aug 2025 14:22:27 +0000 (16:22 +0200)
commit 8481d59be606d2338dbfe14b04cdbd1a3402c150 upstream.

Free the kfifo after unregistering the miscdev in
aspeed_lpc_disable_snoop() as the kfifo is initialised before the
miscdev in aspeed_lpc_enable_snoop().

Fixes: 3772e5da4454 ("drivers/misc: Aspeed LPC snoop output using misc chardev")
Cc: stable@vger.kernel.org
Cc: Jean Delvare <jdelvare@suse.de>
Acked-by: Jean Delvare <jdelvare@suse.de>
Link: https://patch.msgid.link/20250616-aspeed-lpc-snoop-fixes-v2-1-3cdd59c934d3@codeconstruct.com.au
Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/soc/aspeed/aspeed-lpc-snoop.c

index 43e30937fc9da2a8d86fd50c91cc7f76d33f26e7..f0fc72e1e74dd4e9cbb92dadd516fef3eddfeadc 100644 (file)
@@ -265,8 +265,8 @@ static void aspeed_lpc_disable_snoop(struct aspeed_lpc_snoop *lpc_snoop,
                return;
        }
 
-       kfifo_free(&lpc_snoop->chan[channel].fifo);
        misc_deregister(&lpc_snoop->chan[channel].miscdev);
+       kfifo_free(&lpc_snoop->chan[channel].fifo);
 }
 
 static int aspeed_lpc_snoop_probe(struct platform_device *pdev)