From nobody Wed Aug 06 05:12:09 2025 X-Original-To: dev-commits-src-main@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 4bxdhG0k8vz64Bm0; Wed, 06 Aug 2025 05:12:14 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from smtp.freebsd.org (smtp.freebsd.org [IPv6:2610:1c1:1:606c::24b:4]) (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 "smtp.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4bxdhF4Nj6z3pZZ; Wed, 06 Aug 2025 05:12:13 +0000 (UTC) (envelope-from avg@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1754457133; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:autocrypt:autocrypt; bh=8tv0zMSMiRaSthyvbEVev0O2TVEwByHZmds/Us+ZT5Y=; b=AabeAlBHZEwOE/BGQQTAJEo57O662CMwWAyzsTDs0HyWatm1L2HqRbFcQGdc2FyKrbszsd Hk3bI9atob75XT6zXANyEMog17FT+ipIjjy4I5qoGmpqZXXetrNXYEtkHfQUsPn/xaqEuk ma8dxed4+FThpI08tAKNX/VvmVJBsriEZ52ODje3ap8+QRnXJx2nOUMTKLGdaya4ye0BY1 IEonJFj89gkel9S0yQUJGwvnbIFldPFrvYl41obgOuCYIWo9b0FTidxoIp3U0Wdl0ZrkPz NfinzuD7PJGpIAL9a5TjnHk44SKf9Sb8mwgrak5FUWB036gBlvKnjeuDiV5wiA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1754457133; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:autocrypt:autocrypt; bh=8tv0zMSMiRaSthyvbEVev0O2TVEwByHZmds/Us+ZT5Y=; b=LmbwV2lLxDeBuz6VumLfpZNxeVnGSlhumMOQLzld65UWmHaWIyANShUhnaDjc3OfFrptjo SUK78nfctWzITMb4Rc2XuHwZ16XbyQ2RVewXdYMsVY6q6gxY7j6wbhyFgxlZyqYJ7+i77b iZANV31DSxUOs1Siezkj7vEVpt154QvLC3Q1Luemh1gCsrEb+364NeNCfIpQVNUl5ezFD1 qGarpdEdL6adVjt5B983jvFoIXuh6Q1ldSPNUqoANMhvt4ABQFKeUwox48sZutL5GJ/ukR HaaVrT8PL+14firWjvIqWeYiyCmKLjqKRvNKcg4WAa09v4GAgs2ruVs4TUZ4dw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1754457133; a=rsa-sha256; cv=none; b=syVkvJbsSl4wDyxcUW8c1jsNynEC4Ozs5qFqXZvtiuqNkWQZftJ0PeWiGaVX3n9WTSgxel xL89ciqnTh0wuzRl3/nl27oHuN2PXoGD7UKvn9n7BxdjiruVxXsd6rqDWpx5KZdkCiE5qs Vj5yudKK+diIc0EG753JWnj6KUbVip2MIKr17iaJN7o0G6ruhiFWBJTfASDEmBFEBro8Us XGhzevfKMXgL8YhhNLVIao6/WWFBwzngsMOBzAW2SKKm8ZD/otkmDWiCxNesQvKxJtiake ZXxO45whxCR7kD7Uu75ZXIoXgKAGV9kPD8nDq2/H5hr57NP0mPpwlne9Pvz1lg== Received: from [192.168.0.88] (unknown [93.188.39.137]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) (Authenticated sender: avg/mail) by smtp.freebsd.org (Postfix) with ESMTPSA id 4bxdhD50s8z3LT; Wed, 06 Aug 2025 05:12:12 +0000 (UTC) (envelope-from avg@FreeBSD.org) Message-ID: <504491b6-932a-4e68-a324-2f7fc2637f63@FreeBSD.org> Date: Wed, 6 Aug 2025 08:12:09 +0300 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 User-Agent: Mozilla Thunderbird From: Andriy Gapon Subject: Re: git: 6eb503116e88 - main - sdio: don't use CAM_PRIORITY_NONE for queued CCB-s To: "Bjoern A. Zeeb" Cc: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org References: <202508051629.575GTBYK035918@gitrepo.freebsd.org> <030509rq-32n5-3rn0-98nq-o154pqo676s9@SerrOFQ.bet> Content-Language: en-US Autocrypt: addr=avg@FreeBSD.org; keydata= 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 gpPTjT15L8xGftEjQXF6 In-Reply-To: <030509rq-32n5-3rn0-98nq-o154pqo676s9@SerrOFQ.bet> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 05/08/2025 23:32, Bjoern A. Zeeb wrote: > On Tue, 5 Aug 2025, Andriy Gapon wrote: > >> The branch main has been updated by avg: >> >> URL: https://cgit.FreeBSD.org/src/commit/? >> id=6eb503116e88cc430c2c9f01f48aa979fb0a7e1b >> >> commit 6eb503116e88cc430c2c9f01f48aa979fb0a7e1b >> Author:     Andriy Gapon >> AuthorDate: 2025-08-05 14:40:21 +0000 >> Commit:     Andriy Gapon >> CommitDate: 2025-08-05 16:27:12 +0000 >> >>    sdio: don't use CAM_PRIORITY_NONE for queued CCB-s >> >>    This is similar to changes done in other CAM drivers and fixes a panic >>    because of a sanity check added in b4b166b8c46b. >> >>    While here, remove unneeded ccb setup in sdiobdiscover. >>    It's possible that ccb allocation in that function is not needed as >>    well, but I wasn't sure about that. > > I have a lot more changes to sdio here;  I would appreciate if they go > through review if you have more. Sorry about that. No, this was a one-off change to fix a panic on boot after an upgrade. I didn't see any recent non-trivial activity in the file, so I skipped a review. > Are you testing this with any device? Not really testing but I have an old Orange Pi PC Plus which got broken (panic on boot) after an update to the latest main (+INVARIANTS). I think that it has a WiFi device on SDIO. sdiob0: on aw_mmc1 sdiob0 at aw_mmc_sim1 bus 0 scbus1 target 0 lun 0 sdiob0: Relative addr: 00000001 Card features: Card IO OCR: 00fc0000 >>    MFC after:      1 week >> --- >> sys/dev/sdio/sdiob.c | 7 ++----- >> 1 file changed, 2 insertions(+), 5 deletions(-) >> >> diff --git a/sys/dev/sdio/sdiob.c b/sys/dev/sdio/sdiob.c >> index 4ec2058fa2e4..cb2cc0da6b77 100644 >> --- a/sys/dev/sdio/sdiob.c >> +++ b/sys/dev/sdio/sdiob.c >> @@ -150,7 +150,7 @@ sdiob_rw_direct_sc(struct sdiob_softc *sc, uint8_t fn, >> uint32_t addr, bool wr, >>         sc->ccb = xpt_alloc_ccb(); >>     else >>         memset(sc->ccb, 0, sizeof(*sc->ccb)); >> -    xpt_setup_ccb(&sc->ccb->ccb_h, sc->periph->path, CAM_PRIORITY_NONE); >> +    xpt_setup_ccb(&sc->ccb->ccb_h, sc->periph->path, CAM_PRIORITY_NORMAL); >>     CAM_DEBUG(sc->ccb->ccb_h.path, CAM_DEBUG_TRACE, >>         ("%s(fn=%d, addr=%#02x, wr=%d, *val=%#02x)\n", __func__, >>         fn, addr, wr, *val)); >> @@ -250,7 +250,7 @@ sdiob_rw_extended_cam(struct sdiob_softc *sc, uint8_t fn, >> uint32_t addr, >>         sc->ccb = xpt_alloc_ccb(); >>     else >>         memset(sc->ccb, 0, sizeof(*sc->ccb)); >> -    xpt_setup_ccb(&sc->ccb->ccb_h, sc->periph->path, CAM_PRIORITY_NONE); >> +    xpt_setup_ccb(&sc->ccb->ccb_h, sc->periph->path, CAM_PRIORITY_NORMAL); >>     CAM_DEBUG(sc->ccb->ccb_h.path, CAM_DEBUG_TRACE, >>         ("%s(fn=%d addr=%#0x wr=%d b_count=%u blksz=%u buf=%p incr=%d)\n", >>         __func__, fn, addr, wr, b_count, blksz, buffer, incaddr)); >> @@ -977,9 +977,6 @@ sdiobdiscover(void *context, int pending) >> >>     if (sc->ccb == NULL) >>         sc->ccb = xpt_alloc_ccb(); >> -    else >> -        memset(sc->ccb, 0, sizeof(*sc->ccb)); >> -    xpt_setup_ccb(&sc->ccb->ccb_h, periph->path, CAM_PRIORITY_NONE); > > This likely just made a problem worse of ccb re-use.  I have locally > changed them to be allocated/freed per transaction now. From my examination of the code, the sc->ccb is always re-initialized before actual use. I mean memset + xpt_setup_ccb in sdiob_rw_direct_sc and sdiob_rw_extended_cam. -- Andriy Gapon