From nobody Fri Jan 31 16:03:19 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 4Yl0zr5Hq4z5mQqG; Fri, 31 Jan 2025 16:03:20 +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 4Yl0zr0YyQz3hHQ; Fri, 31 Jan 2025 16:03:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1738339400; 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=8ptKyTH9gGYtC7Rmw5o4o8EVSTC6VIyltPKlIpVg/gg=; b=AejZ1TyfGNoHVH8bGVfarYfbIjQDjYQ58lmQdKcyWD2fK/7FtmjWtCMck4SOrP6SdghXTB 4gqOZifZTup1gcYR56REURneFVZ5AE57ynCCVsdDypLWU9P5SoizoXAqW3M/yyLnNlMzUZ C9wB2HW6WuUdFegDRBbwnPBZNhMx6ID3yz3/H3qvs+NC4eJbU5mYmgKT2q8sVvHogobyg2 QaWTE0ApcFo3svM5OyMGdGU7GsPft2LVVXTdR8Bjc9x+aBRUgGnon2Eyg1Nkcd5nCEarmV FKqmUSfrVSq6/XU8VA0GphLu9l1Ex5uXZ2GsWCFjXjGsEXjsPC6vAbxqoxkAiQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1738339400; 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=8ptKyTH9gGYtC7Rmw5o4o8EVSTC6VIyltPKlIpVg/gg=; b=B7aJYFK95UZms45t/tOls9Z6Rz5L5AZHvW7yCDSJek+uX5kGgQOP9ZQOT+9vdq0OZFW+zH iKXypSG0wTFkoxsnBbx8g49t2uxMyeBVpKr2fQt2zrbfRkCX9NimkaeCKAi0lgYZeSTgBA vlB7UfFy+Cv+wwgY7RSNA6wN2xpimb1if6n6zLF0huXjgwKWkmuHzRUax+pbPQih5eIDCt zRlG2f7ezef9lZztt8YCRcF15ysooZztNayyG4PLCOB86GduMbyJpBu269Ck2r6DMOqu5w w07tBFWbyMsOIAv0qGUs9gDFUQUyYgEgCcuasvD4zEZdU+/xbHhSkFU5TX1ljA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1738339400; a=rsa-sha256; cv=none; b=ApZm6ZFm+tEZEGYPE4UqhTp/LqXYAts7eN2NoKMnJZbmntxjcdspAzsLREIU733jj+eS7b cc7ki1U+xk/mxcpdxv+rOQh/Me5CYXWLGsE2nTkbPGBmhlKYYbJpVT4vVcT9/HoYQ+OlmG ZmXGkzRHnR8DhnEFqSy7rrS8vh+Jx5wifWgS2FKwqapsLzZ/7aqbRyquIfEQd1aiI92v+j FTraNp/iCquV3+xKWJz/2Ng8lOTWxya+gFLcmS5KccKe8HI75p5CKdG1oryBvynJmGSvzt M+560d3TDxihT3eEr0r11pkfZyCyQA00qPRbM5lMOz1udoRyhejAvpaUdwL8ow== 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 4Yl0zr06z2z8rJ; Fri, 31 Jan 2025 16:03:20 +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 50VG3J7d038770; Fri, 31 Jan 2025 16:03:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 50VG3Jga038767; Fri, 31 Jan 2025 16:03:19 GMT (envelope-from git) Date: Fri, 31 Jan 2025 16:03:19 GMT Message-Id: <202501311603.50VG3Jga038767@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: =?utf-8?Q?Jean-S=C3=A9bastien?= =?utf-8?Q?P=C3=A9dron?= Subject: git: be818f265e8c - main - linuxkpi: Use same field names in `struct xarray` as Linux 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 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dumbbell X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: be818f265e8cd448f5bf442198c495ba554b45c9 Auto-Submitted: auto-generated The branch main has been updated by dumbbell: URL: https://cgit.FreeBSD.org/src/commit/?id=be818f265e8cd448f5bf442198c495ba554b45c9 commit be818f265e8cd448f5bf442198c495ba554b45c9 Author: Jean-Sébastien Pédron AuthorDate: 2024-12-27 21:16:36 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2025-01-31 16:00:48 +0000 linuxkpi: Use same field names in `struct xarray` as Linux [Why] The i915 DRM driver started to access the `xa_lock` field in Linux 6.7. Reviewed by: manu Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D48754 --- sys/compat/linuxkpi/common/include/linux/xarray.h | 12 +++---- sys/compat/linuxkpi/common/src/linux_xarray.c | 38 +++++++++++------------ 2 files changed, 25 insertions(+), 25 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/linux/xarray.h b/sys/compat/linuxkpi/common/include/linux/xarray.h index ab98c8d66805..fba36eea0ab5 100644 --- a/sys/compat/linuxkpi/common/include/linux/xarray.h +++ b/sys/compat/linuxkpi/common/include/linux/xarray.h @@ -49,14 +49,14 @@ #define xa_limit_32b XA_LIMIT(0, 0xFFFFFFFF) -#define XA_ASSERT_LOCKED(xa) mtx_assert(&(xa)->mtx, MA_OWNED) -#define xa_lock(xa) mtx_lock(&(xa)->mtx) -#define xa_unlock(xa) mtx_unlock(&(xa)->mtx) +#define XA_ASSERT_LOCKED(xa) mtx_assert(&(xa)->xa_lock, MA_OWNED) +#define xa_lock(xa) mtx_lock(&(xa)->xa_lock) +#define xa_unlock(xa) mtx_unlock(&(xa)->xa_lock) struct xarray { - struct radix_tree_root root; - struct mtx mtx; /* internal mutex */ - uint32_t flags; /* see XA_FLAGS_XXX */ + struct radix_tree_root xa_head; + struct mtx xa_lock; /* internal mutex */ + uint32_t xa_flags; /* see XA_FLAGS_XXX */ }; /* diff --git a/sys/compat/linuxkpi/common/src/linux_xarray.c b/sys/compat/linuxkpi/common/src/linux_xarray.c index 746cd6029544..54c536042392 100644 --- a/sys/compat/linuxkpi/common/src/linux_xarray.c +++ b/sys/compat/linuxkpi/common/src/linux_xarray.c @@ -52,7 +52,7 @@ __xa_erase(struct xarray *xa, uint32_t index) XA_ASSERT_LOCKED(xa); - retval = radix_tree_delete(&xa->root, index); + retval = radix_tree_delete(&xa->xa_head, index); if (retval == NULL_VALUE) retval = NULL; @@ -81,7 +81,7 @@ xa_load(struct xarray *xa, uint32_t index) void *retval; xa_lock(xa); - retval = radix_tree_lookup(&xa->root, index); + retval = radix_tree_lookup(&xa->xa_head, index); xa_unlock(xa); if (retval == NULL_VALUE) @@ -122,16 +122,16 @@ __xa_alloc(struct xarray *xa, uint32_t *pindex, void *ptr, uint32_t mask, gfp_t XA_ASSERT_LOCKED(xa); /* mask should allow to allocate at least one item */ - MPASS(mask > ((xa->flags & XA_FLAGS_ALLOC1) != 0 ? 1 : 0)); + MPASS(mask > ((xa->xa_flags & XA_FLAGS_ALLOC1) != 0 ? 1 : 0)); /* mask can be any power of two value minus one */ MPASS((mask & (mask + 1)) == 0); - *pindex = (xa->flags & XA_FLAGS_ALLOC1) != 0 ? 1 : 0; + *pindex = (xa->xa_flags & XA_FLAGS_ALLOC1) != 0 ? 1 : 0; if (ptr == NULL) ptr = NULL_VALUE; retry: - retval = radix_tree_insert(&xa->root, *pindex, ptr); + retval = radix_tree_insert(&xa->xa_head, *pindex, ptr); switch (retval) { case -EEXIST: @@ -184,16 +184,16 @@ __xa_alloc_cyclic(struct xarray *xa, uint32_t *pindex, void *ptr, uint32_t mask, XA_ASSERT_LOCKED(xa); /* mask should allow to allocate at least one item */ - MPASS(mask > ((xa->flags & XA_FLAGS_ALLOC1) != 0 ? 1 : 0)); + MPASS(mask > ((xa->xa_flags & XA_FLAGS_ALLOC1) != 0 ? 1 : 0)); /* mask can be any power of two value minus one */ MPASS((mask & (mask + 1)) == 0); - *pnext_index = (xa->flags & XA_FLAGS_ALLOC1) != 0 ? 1 : 0; + *pnext_index = (xa->xa_flags & XA_FLAGS_ALLOC1) != 0 ? 1 : 0; if (ptr == NULL) ptr = NULL_VALUE; retry: - retval = radix_tree_insert(&xa->root, *pnext_index, ptr); + retval = radix_tree_insert(&xa->xa_head, *pnext_index, ptr); switch (retval) { case -EEXIST: @@ -203,7 +203,7 @@ retry: } (*pnext_index)++; (*pnext_index) &= mask; - if (*pnext_index == 0 && (xa->flags & XA_FLAGS_ALLOC1) != 0) + if (*pnext_index == 0 && (xa->xa_flags & XA_FLAGS_ALLOC1) != 0) (*pnext_index)++; goto retry; case -ENOMEM: @@ -262,7 +262,7 @@ __xa_insert(struct xarray *xa, uint32_t index, void *ptr, gfp_t gfp) if (ptr == NULL) ptr = NULL_VALUE; retry: - retval = radix_tree_insert(&xa->root, index, ptr); + retval = radix_tree_insert(&xa->xa_head, index, ptr); switch (retval) { case -ENOMEM: @@ -306,7 +306,7 @@ __xa_store(struct xarray *xa, uint32_t index, void *ptr, gfp_t gfp) if (ptr == NULL) ptr = NULL_VALUE; retry: - retval = radix_tree_store(&xa->root, index, &ptr); + retval = radix_tree_store(&xa->xa_head, index, &ptr); switch (retval) { case 0: @@ -347,9 +347,9 @@ xa_init_flags(struct xarray *xa, uint32_t flags) { memset(xa, 0, sizeof(*xa)); - mtx_init(&xa->mtx, "lkpi-xarray", NULL, MTX_DEF | MTX_RECURSE); - xa->root.gfp_mask = GFP_NOWAIT; - xa->flags = flags; + mtx_init(&xa->xa_lock, "lkpi-xarray", NULL, MTX_DEF | MTX_RECURSE); + xa->xa_head.gfp_mask = GFP_NOWAIT; + xa->xa_flags = flags; } /* @@ -362,9 +362,9 @@ xa_destroy(struct xarray *xa) struct radix_tree_iter iter; void **ppslot; - radix_tree_for_each_slot(ppslot, &xa->root, &iter, 0) - radix_tree_iter_delete(&xa->root, &iter, ppslot); - mtx_destroy(&xa->mtx); + radix_tree_for_each_slot(ppslot, &xa->xa_head, &iter, 0) + radix_tree_iter_delete(&xa->xa_head, &iter, ppslot); + mtx_destroy(&xa->xa_lock); } /* @@ -379,7 +379,7 @@ __xa_empty(struct xarray *xa) XA_ASSERT_LOCKED(xa); - return (!radix_tree_iter_find(&xa->root, &iter, &temp)); + return (!radix_tree_iter_find(&xa->xa_head, &iter, &temp)); } bool @@ -416,7 +416,7 @@ __xa_next(struct xarray *xa, unsigned long *pindex, bool not_first) return (NULL); } - found = radix_tree_iter_find(&xa->root, &iter, &ppslot); + found = radix_tree_iter_find(&xa->xa_head, &iter, &ppslot); if (likely(found)) { retval = *ppslot; if (retval == NULL_VALUE)