From nobody Fri Jan 16 19:40:55 2026 X-Original-To: dev-commits-src-branches@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 4dt9FM59Tnz6NlS1 for ; Fri, 16 Jan 2026 19:40:55 +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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dt9FM0kWpz3x5F for ; Fri, 16 Jan 2026 19:40:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768592455; 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=NVcqctUPxzAgLSgsezAcWcI3E4+PGNTUzCxbtPyUL28=; b=mzyC8cM1Gsr702JYoQYZ1pVjn2sBP4GVdMhrcn4/LTyBgo/Rl64Sp709pQSUHIKPOGyBkj lMlC/nPnat4r7DAKhTuMXi0+oRy1GskZcNE6YfCs5RvdCMjWeSFDN4VdyYd50Y8WcCNOMO 0A8BsLTTwBQjOtVWEIZVCRH8+bjaHTlAKsy3bGV1jnJiLXJegzQwZfHie19zYgwhyM1adR HCQU0akE9sLk7F6EE3pjsf0wSI5e/dO8T36414Js8uvqCnrUs2lNjSJNgvUh+WGmM2q4p2 lRB3+FuXy6i4sVk+dXOeOnmkG879TnZJe1tRq9J7t12CjuZ4dt0Pweuc5kJhew== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768592455; 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=NVcqctUPxzAgLSgsezAcWcI3E4+PGNTUzCxbtPyUL28=; b=Djjq86CXfMEswbEiKJ7FGSW/tRiGt+QbtycyiKAwLuGNdIli9Zzkrgvy6FdcbDDbeQ9U53 BGjtrEuxdyEXmtdmoL15Z5fyCstrXZJd/f2Ug3kYx40+Xsm0RA/jeJIF7gYjL1DrD2+hWp uZ/a50VQD+bgk2t4z5Pq6eKu2NwuWzZPA2c4Xxz3ik6se4b8RjoKpqXqEpob6i7DwyY19Y jahwu5XQC94jat4KXhrqY5TrVgMB5Fh6KNXbU9rn2c6uxORn3MUho/0l0V0GWq1zFdVp6r 2Q5t0Tbfk5CUbENLMzBALy6lVth7DoWBO+86G2vigcJzwYh6LsQXPh6dWZoMyw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768592455; a=rsa-sha256; cv=none; b=k4sq+ms3XzxGdbMnAwAMekYwqflIVF31wBhdm5lphk/HAU0M7ZjyraHGheKt2FW/t5+dGK vyD+fRyJkE3mgPJ+dVtkxsPiZc71FkX/zxSUqPD/TEmrmPIcFesAZ3K4j0CkEou0vBlRpP 2xgYh2gDjVChHpJ81oUEJnkGZQKAAPgvT/Rs6PnLj/wOWmhqH34R92xJwk0a/TnF/vhewK SFlfXYGOV8kbE6bbqjz0zY4TJDifanJNVMED2mE6dyC3p3HLi+2RDUpKrLWjrnkirDqibT p+6MBBon+a3Hp+uYM7FT+Q42FIFV0b+VVuwuvNI+ukEBqAmhZ0agyUGxlGrT8Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dt9FM0FSczC4P for ; Fri, 16 Jan 2026 19:40:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id dbe3 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Fri, 16 Jan 2026 19:40:55 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Bjoern A. Zeeb Subject: git: 3c1f1bcb14d3 - stable/14 - LinuxKPI: rename from_timer() to timer_container_of() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 3c1f1bcb14d3e1f8c4f3af912fdce867cc72f3ab Auto-Submitted: auto-generated Date: Fri, 16 Jan 2026 19:40:55 +0000 Message-Id: <696a9447.dbe3.b752047@gitrepo.freebsd.org> The branch stable/14 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=3c1f1bcb14d3e1f8c4f3af912fdce867cc72f3ab commit 3c1f1bcb14d3e1f8c4f3af912fdce867cc72f3ab Author: Bjoern A. Zeeb AuthorDate: 2025-09-04 20:23:57 +0000 Commit: Bjoern A. Zeeb CommitDate: 2026-01-16 19:37:48 +0000 LinuxKPI: rename from_timer() to timer_container_of() With Linux 6.16 from_timer() got renamed to timer_container_of(); add the LINUXKPI_VERSION check with a default to the current version. Update all in-tree consumers (apart from wireless drivers managed otherwise). Sponsored by: The FreeBSD Foundation (initially) Reviewed by: dumbbell Differential Revision: https://reviews.freebsd.org/D52073 (cherry picked from commit 81cb7c4c8e7bc4951c77fe64a63a847ed6abee38) (cherry picked from commit 352be5b48ba8b3ec1e3e5dd0dbee4da8d1fa78b0) --- sys/compat/linuxkpi/common/include/linux/timer.h | 5 +++++ sys/compat/linuxkpi/common/src/linux_80211.c | 2 +- sys/dev/irdma/irdma_cm.c | 2 +- sys/dev/irdma/irdma_utils.c | 4 ++-- sys/dev/qat/qat_common/adf_gen4_timer.c | 2 +- 5 files changed, 10 insertions(+), 5 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/linux/timer.h b/sys/compat/linuxkpi/common/include/linux/timer.h index 8bea082c3e6c..fe0e084cb790 100644 --- a/sys/compat/linuxkpi/common/include/linux/timer.h +++ b/sys/compat/linuxkpi/common/include/linux/timer.h @@ -49,8 +49,13 @@ extern unsigned long linux_timer_hz_mask; #define TIMER_IRQSAFE 0x0001 +#if defined(LINUXKPI_VERSION) && (LINUXKPI_VERSION < 61600) #define from_timer(var, arg, field) \ container_of(arg, typeof(*(var)), field) +#else +#define timer_container_of(var, arg, field) \ + container_of(arg, typeof(*(var)), field) +#endif #define timer_setup(timer, func, flags) do { \ CTASSERT(((flags) & ~TIMER_IRQSAFE) == 0); \ diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index caa98f884e8b..4fbf36f8c55c 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -7330,7 +7330,7 @@ lkpi_wiphy_delayed_work_timer(struct timer_list *tl) { struct wiphy_delayed_work *wdwk; - wdwk = from_timer(wdwk, tl, timer); + wdwk = timer_container_of(wdwk, tl, timer); wiphy_work_queue(wdwk->wiphy, &wdwk->work); } diff --git a/sys/dev/irdma/irdma_cm.c b/sys/dev/irdma/irdma_cm.c index 07f84040c442..69323336442f 100644 --- a/sys/dev/irdma/irdma_cm.c +++ b/sys/dev/irdma/irdma_cm.c @@ -1316,7 +1316,7 @@ irdma_cm_timer_tick(struct timer_list *t) struct irdma_timer_entry *send_entry, *close_entry; struct list_head *list_core_temp; struct list_head *list_node; - struct irdma_cm_core *cm_core = from_timer(cm_core, t, tcp_timer); + struct irdma_cm_core *cm_core = timer_container_of(cm_core, t, tcp_timer); struct irdma_sc_vsi *vsi; u32 settimer = 0; unsigned long timetosend; diff --git a/sys/dev/irdma/irdma_utils.c b/sys/dev/irdma/irdma_utils.c index 5fc37022981f..038f1980082b 100644 --- a/sys/dev/irdma/irdma_utils.c +++ b/sys/dev/irdma/irdma_utils.c @@ -876,7 +876,7 @@ irdma_terminate_done(struct irdma_sc_qp *qp, int timeout_occurred) static void irdma_terminate_timeout(struct timer_list *t) { - struct irdma_qp *iwqp = from_timer(iwqp, t, terminate_timer); + struct irdma_qp *iwqp = timer_container_of(iwqp, t, terminate_timer); struct irdma_sc_qp *qp = &iwqp->sc_qp; irdma_terminate_done(qp, 1); @@ -1528,7 +1528,7 @@ static void irdma_hw_stats_timeout(struct timer_list *t) { struct irdma_vsi_pestat *pf_devstat = - from_timer(pf_devstat, t, stats_timer); + timer_container_of(pf_devstat, t, stats_timer); struct irdma_sc_vsi *sc_vsi = pf_devstat->vsi; if (sc_vsi->dev->hw_attrs.uk_attrs.hw_rev >= IRDMA_GEN_2) diff --git a/sys/dev/qat/qat_common/adf_gen4_timer.c b/sys/dev/qat/qat_common/adf_gen4_timer.c index 96b65cdff181..2c74d09418e5 100644 --- a/sys/dev/qat/qat_common/adf_gen4_timer.c +++ b/sys/dev/qat/qat_common/adf_gen4_timer.c @@ -57,7 +57,7 @@ end: static void timer_handler(struct timer_list *tl) { - struct adf_int_timer *int_timer = from_timer(int_timer, tl, timer); + struct adf_int_timer *int_timer = timer_container_of(int_timer, tl, timer); struct adf_accel_dev *accel_dev = int_timer->accel_dev; struct adf_hb_timer_data *hb_timer_data = NULL; u64 timeout_val = adf_get_next_timeout(int_timer->timeout_val);