Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 27 Feb 2021 08:23:16 GMT
From:      Warner Losh <imp@FreeBSD.org>
To:        src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org
Subject:   git: c01da939b099 - main - cardbus: Be sure to acquire Giant when calling into newbus
Message-ID:  <202102270823.11R8NG8b093852@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch main has been updated by imp:

URL: https://cgit.FreeBSD.org/src/commit/?id=c01da939b0998f8de068a23c9016c377e761255e

commit c01da939b0998f8de068a23c9016c377e761255e
Author:     Warner Losh <imp@FreeBSD.org>
AuthorDate: 2021-02-27 07:00:52 +0000
Commit:     Warner Losh <imp@FreeBSD.org>
CommitDate: 2021-02-27 08:23:09 +0000

    cardbus: Be sure to acquire Giant when calling into newbus
    
    Acquire Giant in cardbus_detach_card. This used to be done above us, but no
    more.
    
    Tested by: kargl@
    MFC After: 3 days
---
 sys/dev/cardbus/cardbus.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/sys/dev/cardbus/cardbus.c b/sys/dev/cardbus/cardbus.c
index 391267944ec4..50a21dfc0b82 100644
--- a/sys/dev/cardbus/cardbus.c
+++ b/sys/dev/cardbus/cardbus.c
@@ -256,10 +256,11 @@ cardbus_detach_card(device_t cbdev)
 {
 	int err = 0;
 
+	mtx_lock(&Giant);
 	err = bus_generic_detach(cbdev);
-	if (err)
-		return (err);
-	err = device_delete_children(cbdev);
+	if (err == 0)
+		err = device_delete_children(cbdev);
+	mtx_unlock(&Giant);
 	if (err)
 		return (err);
 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202102270823.11R8NG8b093852>