From nobody Fri Sep 18 09:32:13 2026 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 4hmS8269Ysz6sww2; Fri, 18 Sep 2026 09:32:18 +0000 (UTC) (envelope-from kp@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 "YR2" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4hmS825c89z3JDG; Fri, 18 Sep 2026 09:32:18 +0000 (UTC) (envelope-from kp@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1789723938; 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; bh=EgdFiU5IeW3hlMPIyiCvvH/Pt61wXPxgN4y7P7olcig=; b=FQQYPYKpHicvAqSTMgoR3w50iaMFLr930DA9kvUpFRKvQnv/uenAL50olyOpaDFWiDLCwH qx5Y9V1EYJ/LQ487IUVGYHeUkHg8mbxgE4zF2vLMAyG3mVC5pstAOXODiSRKrQ1rwr3dDj aNk61y8jv8DoCQz2w4gnNNTJLvoXDJh4rOFJDAzb5EmqCcMt3wfjRP/3hNfHymIpi3uEqn Xw8kc0MEl0tIq7E5hle7ejrVBPxi5C+Sd9bWi5B/YKwFrxCzlIWi944yAMI6ubd0/zuJWF mf3JfpFL9BCh3pNCxAoPtOgFrpj17kBY8pvb/M46ErH+C9Tio+foiqLa/Vgoxg== ARC-Seal: i=1; a=rsa-sha256; d=freebsd.org; s=dkim; cv=none; t=1789723938; b=kyRfDm9PMAW+AKCuUHsxR7IFODon0ZJuEg7KDl0eCQq3YOLtyhp6B2Z2LsepwXy0GHiYDU odvtorUb3cu1/rnqGYeSpqktat8t0069+VqbayV5yT/Ba1A/qw5b3DiasXiNCTgqhfQuIs OfcjafpZEn9Jf4oUYoleq4Dq7cFGKp0ALN6BHJgvLAol4LfUUqewnSBqNamLkU22PdfH78 M4A0u+iUwuST9CVtYkL0necfZMYOAMvKt0qeGkxdsDoXSMaWFBCiFO9VYYvg0HHuD9r8ze C3PZxcNHagX4miCHb/BV4gAGAj8W/J98jedaBHLu95j8tWeA+DlNjyQX2KbE0g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1789723938; 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; bh=EgdFiU5IeW3hlMPIyiCvvH/Pt61wXPxgN4y7P7olcig=; b=uJ4cKSQELirs+6kjFitIAaZM2o+CByZoWBc1CW9la+qRU09gYrfYWxV/T05KwmFqGchMnB kqKiRwgz+UR1GXPWTn4nfCCoGjv6/gsj9+1NxTG505BB6XOixHnF+H0FOyndBNsEx7yIiV 1halhLW/beIevmU493TK1KRDGPJy6W8USj732ZYAWAC29mTYpxRxCESzIxC10OQ+aeWog1 JOqZSfjANh7yyCs/WKz/5g3XNbU5EWK4ch4JrX8ZX1jutg9nVHZHq2BBI2xVgRxEf3cS1K fvqmNid6Ccdbdee8n84tJEr+rgc84my3giZowmTbxZazuO5PfC/OO367YkQgUw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from venus.codepro.be (venus.codepro.be [5.9.86.228]) (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 (2048 bits) client-digest SHA256) (Client CN "mx1.codepro.be", Issuer "YR1" (not verified)) (Authenticated sender: kp) by smtp.freebsd.org (Postfix) with ESMTPSA id 4hmS823Q6JzcY2; Fri, 18 Sep 2026 09:32:18 +0000 (UTC) (envelope-from kp@FreeBSD.org) Received: by venus.codepro.be (Postfix, authenticated sender kp) id 4E78B46865; Fri, 18 Sep 2026 11:32:15 +0200 (CEST) From: Kristof Provost To: Michal Meloun Cc: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Subject: Re: git: 477c594d9063 - main - kobj: allow multiple inheritance with per-class softc Date: Fri, 18 Sep 2026 11:32:13 +0200 X-Mailer: MailMate (2.0r6272) Message-ID: <35AD4B98-4BE8-4A6A-99DC-89D881C9BDD5@FreeBSD.org> In-Reply-To: <5e03e401-5778-4459-a501-e9f7b5d56a0f@FreeBSD.org> References: <6aa40ba9.2672a.7c32cf3e@gitrepo.freebsd.org> <19D9A1EA-4026-407B-B1E6-23DBD16490B9@FreeBSD.org> <5e03e401-5778-4459-a501-e9f7b5d56a0f@FreeBSD.org> 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 List-Id: List-Post: List-Help: List-Subscribe: List-Unsubscribe: List-Owner: Precedence: list MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="=_MailMate_13859E20-2A6F-4777-B5BC-00D0C220029A_=" Content-Transfer-Encoding: 8bit --=_MailMate_13859E20-2A6F-4777-B5BC-00D0C220029A_= Content-Type: text/plain; charset=UTF-8; format=flowed; markup=markdown Content-Transfer-Encoding: 8bit On 18 Sep 2026, at 9:11, Michal Meloun wrote: > On 18.09.2026 0:15, Kristof Provost wrote: >> On 11 Sep 2026, at 16:09, Michal Meloun wrote: >> >> The branch main has been updated by mmel: >> >> URL: https://cgit.FreeBSD.org/src/commit/? >> id=477c594d906328e210c30cf2c21d983152f21de3 > cgit.FreeBSD.org/src/commit/? >> id=477c594d906328e210c30cf2c21d983152f21de3> >> >> commit 477c594d906328e210c30cf2c21d983152f21de3 >> Author: Michal Meloun mmel@FreeBSD.org >> AuthorDate: 2026-09-11 11:47:30 +0000 >> Commit: Michal Meloun mmel@FreeBSD.org >> CommitDate: 2026-09-11 14:09:36 +0000 >> >> |kobj: allow multiple inheritance with per-class softc Add >> support >> for hierarchical softc layout so that a leaf class and each of >> its >> base classes owns a private softc region inside a single >> allocation. >> device_get_softc_class(dev, cls) returns a pointer to the softc >> that >> belongs to the requested class. The classic device_get_softc() >> still >> returns the leaf softc and remains fully compatible with existing >> drivers. Existing drivers are unaffected; they simply obtain a >> slightly larger softc block when they inherit from base classes. >> | >> >> For some reason this commit causes my machine (Dell T640) to fail to >> boot. >> >> It doesn’t panic, but it seems to be very slow during boot, and >> seems to remain stuck around when it’d start userspace. (Freezing >> just before | Trying to mount root from >> zfs:zroot/ROOT/16.0-CURRENT-20260917.222603|) >> >> I don’t even begin to understand how that’d be related to this >> commit, but it’s very reproducible. >> >> Do you have any suggestions for how to begin to debug this? >> >> Thanks, >> Kristof >> > I also don't see how this change could have directly caused the > described failure. > Could you generate a backtrace from the hung state? Ideally, generate > more than one to see where the kernel is livelocked. > I’ve not had any luck getting a backtrace out, I’m afraid. While in the hung state the system doesn’t seem to be processing anything any more. (That is, I can get it to break to debugging when it’s working fine, but not in this state.) However, I added some debug output and spotted this: KP: device_set_driver() smartpqi 2579896 != 2579904 KP: device_set_driver() nic_uio 184 != 4294967297 And that last one does seem like it’s maybe a bit more than it ought to be. That one’s installed by net/dpdk, so could it be an ABI mismatch? (Presumably the kernel ought to be a bit more robust about 4294967297 sized allocations, or at least panic here.) > Also, can you, for test, replace > "size = kobj_total_data_size(driver);" > with > "size = driver->size;" > at > https://cgit.freebsd.org/src/tree/sys/kern/subr_bus.c#n2503 ? > That lets it boot. Best regards, Kristof --=_MailMate_13859E20-2A6F-4777-B5BC-00D0C220029A_= Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable

On 18 Sep 2026, at 9:11, Michal Meloun wrote:

On 18.09.2026 0:15, Kristof Provost wrote:

On 11 Sep 2026, at 16:09, Michal Meloun wrote:

Th=
e branch main has been updated by mmel:

URL: https://cgit.FreeBSD.org/src/commit/?
id=3D477c594d906328e210c30cf2c21d983152f21de3 <https://
cgit.FreeBSD.org/src/commit/?
id=3D477c594d906328e210c30cf2c21d983152f21de3>

commit 477c594d906328e210c30cf2c21d983152f21de3
Author: Michal Meloun mmel@FreeBSD.org <mailto:mmel@FreeBSD.org>
AuthorDate: 2026-09-11 11:47:30 +0000
Commit: Michal Meloun mmel@FreeBSD.org <mailto:mmel@FreeBSD.org>
CommitDate: 2026-09-11 14:09:36 +0000

|kobj: allow multiple inheritance with per-class softc Add support
for hierarchical softc layout so that a leaf class and each of its
base classes owns a private softc region inside a single allocation.
device_get_softc_class(dev, cls) returns a pointer to the softc that
belongs to the requested class. The classic device_get_softc() still
returns the leaf softc and remains fully compatible with existing
drivers. Existing drivers are unaffected; they simply obtain a
slightly larger softc block when they inherit from base classes. |

For some reason this commit causes my machine (Dell T640)= to fail to boot.

It doesn=E2=80=99t panic, but it seems to be very slow du= ring boot, and seems to remain stuck around when it=E2=80=99d start users= pace. (Freezing just before | Trying to mount root from zfs:zroot/ROOT/16= =2E0-CURRENT-20260917.222603|)

I don=E2=80=99t even begin to understand how that=E2=80=99= d be related to this commit, but it=E2=80=99s very reproducible.

Do you have any suggestions for how to begin to debug thi= s?

Thanks,
Kristof

I also don't see how this change could have directly caus= ed the described failure.
Could you generate a backtrace from the hung state? Ideally, generate mor= e than one to see where the kernel is livelocked.

I=E2=80=99ve not had any luck getting a backtrace out, I=E2= =80=99m afraid. While in the hung state the system doesn=E2=80=99t seem t= o be processing anything any more.
(That is, I can get it to break to debugging when it=E2=80=99s working fi= ne, but not in this state.)

However, I added some debug output and spotted this:

KP=
: device_set_driver() smartpqi 2579896 !=3D 2579904
KP: device_set_driver() nic_uio 184 !=3D 4294967297

And that last one does seem like it=E2=80=99s maybe a bit= more than it ought to be.
That one=E2=80=99s installed by net/dpdk, so could it be an ABI mismatch?=
(Presumably the kernel ought to be a bit more robust about 4294967297 siz= ed allocations, or at least panic here.)

Also, can you, for test, replace
"size =3D kobj_total_data_size(driver);"
with
"size =3D driver->size;"
at
h= ttps://cgit.freebsd.org/src/tree/sys/kern/subr_bus.c#n2503 ?

That lets it boot.

Best regards,
Kristof

--=_MailMate_13859E20-2A6F-4777-B5BC-00D0C220029A_=--