From nobody Fri Jan 24 15:08:26 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Yfh5k74Jtz5lWwN; Fri, 24 Jan 2025 15:08:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Yfh5k64Fzz3jQq; Fri, 24 Jan 2025 15:08:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1737731306; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=XixfAY2qMZAAYVhrZlHX4z69t67DR+jsuW5UGZrL6Ys=; b=uqQsvLvRtPBW+sCqO9XT5d46hc9625DHtZDjmEAkvYncgaJ1JCcw9Z8I9mqpRWlfkZ7YKQ M4Tydjn2mn6FV2kyM+761vvib+cZwtX2ZaQ1fBy+9mtiLk/L3NxA+PtH0Hu+e+AjUUmtBz FgkfLhCTHRdERB6bmeVy/V0q265PzVanV4so7R1assWZNM8us+FsleF830nLu8hcuARQ25 Nt/yVpNma7MwA7XKllPWw2jNpBCjr6D1dtTQBa4xhVqP+an38aksAgKitlq6RitNBKtWcL gTkxe1rw2xbBZ8PHDlsU9p+IhG1YtOTYRt5GTh5gsKFGYRbZBVUKGXfRqOx4Tg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1737731306; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=XixfAY2qMZAAYVhrZlHX4z69t67DR+jsuW5UGZrL6Ys=; b=oP23pvNQ6KgJWxvuWTL44WWzl1JzhEimueLvXzS0WhEnICFcRW/4QgJEComwdiq7l13PRN 0BmtjPxBydrV9Iau+ysMtxjw1SnFcNjU/RZxayuDJXdcQs3LDUz8RFQkjxvfzfGRrYtCpn N7MpYfJkM7GdfnUUTFRZDvbkSSrkKzYyS01br0SmmWqlimFhAe+vewTbEj9T5TnMhY+MTW /jN/mwAZehTRC6cjBuKruE4f7i4r55RVVsqGKdvR6R6nxo4LCd4JtMEbm2hdbSTBWm1QHK aabGelbKh2skhUlueWE/k+yszxzg7k4yMKDbfEgoKd/P1K06XgTMTnG9tGIK8A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1737731306; a=rsa-sha256; cv=none; b=uhsEaZsFtJi/TCm8BF/uHipOaVFMPzI+2VKVAv8yJc4UR6s0WrErq5k3ZyXq3g0VkpRkZE aXs3Vs1W2wQ6MqnskcUeyw7j/C1V5J5NJelffaiFddrMNnw0gmLK0yEePmUyGHeW+vwelA Ufog8SOXwgHamwmWNJ2dHsk8T0LyRSu2s7/sNHRagST8wubXVwOKkW+eDRAxq8WtT/HJ/d cB21NlK9HF7kZBjJXhvgmxO2VTmX4g33XYPWVAd1izqTZXPMTks8t+9kK13hiO3r5ndTpy n51y4TrrhUbss4GQwCmpImyMIUAfmL9SLfvAFH0B5yBxbhRNddmwCwHeWno//A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Yfh5k5fp3zVT8; Fri, 24 Jan 2025 15:08:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 50OF8QBW064606; Fri, 24 Jan 2025 15:08:26 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 50OF8QL6064603; Fri, 24 Jan 2025 15:08:26 GMT (envelope-from git) Date: Fri, 24 Jan 2025 15:08:26 GMT Message-Id: <202501241508.50OF8QL6064603@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: dbedcc169f70 - main - acpi: Mark the GED ithread as sleepable List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: dbedcc169f70c924a680e02bc86d7419682a70ac Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=dbedcc169f70c924a680e02bc86d7419682a70ac commit dbedcc169f70c924a680e02bc86d7419682a70ac Author: Andrew Turner AuthorDate: 2025-01-13 05:37:52 +0000 Commit: Andrew Turner CommitDate: 2025-01-24 15:08:09 +0000 acpi: Mark the GED ithread as sleepable We need to complete calling the ACPI method before marking the interrupt as complete. If two threads are inspecting the ACPI tables at the same time they may both try to lock the ACPI mutex causing one to sleep. If this is the ithread it will panic the kernel as this is not allowed. Update the ged ithread to allow sleeping as it is expected this lock will be uncommon enough any sleep will be short. PR: 283103 Reviewed by: markj (earlier version) Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D48284 --- sys/dev/acpica/acpi_ged.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/sys/dev/acpica/acpi_ged.c b/sys/dev/acpica/acpi_ged.c index 23e125f277c5..caf911758ed2 100644 --- a/sys/dev/acpica/acpi_ged.c +++ b/sys/dev/acpica/acpi_ged.c @@ -244,8 +244,9 @@ acpi_ged_attach(device_t dev) } if (bus_setup_intr(dev, sc->evts[i].r, - INTR_TYPE_MISC | INTR_MPSAFE, NULL, acpi_ged_intr, - &sc->evts[i], &sc->evts[i].cookie) != 0) { + INTR_TYPE_MISC | INTR_MPSAFE | INTR_SLEEPABLE | + INTR_EXCL, NULL, acpi_ged_intr, &sc->evts[i], + &sc->evts[i].cookie) != 0) { device_printf(dev, "Failed to setup intr %d\n", i); } }