From nobody Fri Jan 31 16:03: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 4Yl0zz3Ccxz5mQn7; Fri, 31 Jan 2025 16:03:27 +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 4Yl0zy5qP5z3hWw; Fri, 31 Jan 2025 16:03:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1738339406; 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=oAqcQvNVOteH8Hcj6on7seauBMADO/j84x+o7FFcml8=; b=HSIYqQfzna3JOHp6sRpzdE1zyjvqwnQVxpkM2wzRhn/qtBjlX5X8OEaeTeKBvLSNkz2fn/ iIQxDkb8J4/wi+1KuV4QhcLNMlVrGbbI5z592nkkOPsgFe8P244sItjVhWbB18/P6ilKev Lh718o34J5rv8V/VF+nzKi++lYSDgXeXDAnGc7WysAVSuuDK6IEUFB5eA8GlmEfi+QLX0B v0HDGIJSiK114yRqjBWjlPZmEYtO4Ef9ulXxS9hZNKMCZFrPlwh27AwCclZmyKk48eVAj9 G8rPTvLygPCfvFMzThiJyy2O4M/e3V4DQ5dJlV3NznDaMUPGh8eC2/5Z3JeNlQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1738339406; 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=oAqcQvNVOteH8Hcj6on7seauBMADO/j84x+o7FFcml8=; b=K6BK/v3nLLj96v0OjwfTyyXy+QdctwGsGNx63P5i/k3dD33kdDn+bKukGPZcxyPzZ+YI3/ Hd5IXpTyoKvisSM022I2M+KUWHzWZmAMpEisCfMdblZZx5UhsJpFSh53txsjsORjIEls9H PTRaX9kxbYtSqEkHGSl/DLW1TC7kS02a0pIsuDlYGX1k4xQtbuBppcvHUpvqdz55cqwa1Y b6Ph8Qhm8/aYpo9RntxAvHzxMlBVNwcrhcheLXQU8xcN3lwwSp3U13geRm2Krij4CQdD3f dB85f59VpW27GjhjFwA8rRYhCTSF/cs+jQ9r6UfrePKSC/gYi3mO/IFRTdxiJg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1738339406; a=rsa-sha256; cv=none; b=UTMARdNOsSLWXneg4HjtWw4Oe7FBHBJydq9g5yQSrsuLV2ywQ9m8hp+XGBKLNlZY39zkf2 vVbuyP7you8s4BzNnu0tt2bPTZLuVC4i9Ekv4orMRWYAw32zAJTRNRQlVyWXRTA4bvgUtA DgZQse2v0zr+zUvBex4w5y+V8F0YgHnrN+YKPd4rGBpB2JqXLSa5wPZKkigYpVf/uDrsCb HGdAb8QgsnkYVXcB09lC3O74BXgVfvUDAHVpxqkuWF2O6A84qJ4w0cgzxjpsLdn29nCmC0 RlSymgGAM2rCQfDgq96oXtclg1Zr6rcxJ3ROrivr7S+KT8jkueWe3+7FJ0XIyQ== 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 4Yl0zy5CTpz97x; Fri, 31 Jan 2025 16:03: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 50VG3QXu039021; Fri, 31 Jan 2025 16:03:26 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 50VG3QEJ039018; Fri, 31 Jan 2025 16:03:26 GMT (envelope-from git) Date: Fri, 31 Jan 2025 16:03:26 GMT Message-Id: <202501311603.50VG3QEJ039018@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: 2ee1311820be - main - lindebugfs: Add `debugfs_lookup()` 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: dumbbell X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 2ee1311820be0ffbe76a0226049910ade470ed1e Auto-Submitted: auto-generated The branch main has been updated by dumbbell: URL: https://cgit.FreeBSD.org/src/commit/?id=2ee1311820be0ffbe76a0226049910ade470ed1e commit 2ee1311820be0ffbe76a0226049910ade470ed1e Author: Jean-Sébastien Pédron AuthorDate: 2025-01-13 18:55:00 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2025-01-31 16:00:50 +0000 lindebugfs: Add `debugfs_lookup()` [Why] This function is used by hhe DRM generic code starting with Linux 6.7. Reviewed by: manu Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D48761 --- sys/compat/lindebugfs/lindebugfs.c | 17 +++++++++++++++++ sys/compat/linuxkpi/common/include/linux/debugfs.h | 2 ++ 2 files changed, 19 insertions(+) diff --git a/sys/compat/lindebugfs/lindebugfs.c b/sys/compat/lindebugfs/lindebugfs.c index d32de5d0657e..5449dabede66 100644 --- a/sys/compat/lindebugfs/lindebugfs.c +++ b/sys/compat/lindebugfs/lindebugfs.c @@ -328,6 +328,23 @@ debugfs_create_symlink(const char *name, struct dentry *parent, return (NULL); } +struct dentry * +debugfs_lookup(const char *name, struct dentry *parent) +{ + struct dentry_meta *dm; + struct dentry *dnode; + struct pfs_node *pnode; + + pnode = pfs_find_node(parent->d_pfs_node, name); + if (pnode == NULL) + return (NULL); + + dm = (struct dentry_meta *)pnode->pn_data; + dnode = &dm->dm_dnode; + + return (dnode); +} + void debugfs_remove(struct dentry *dnode) { diff --git a/sys/compat/linuxkpi/common/include/linux/debugfs.h b/sys/compat/linuxkpi/common/include/linux/debugfs.h index 13186334d75c..54145b61503e 100644 --- a/sys/compat/linuxkpi/common/include/linux/debugfs.h +++ b/sys/compat/linuxkpi/common/include/linux/debugfs.h @@ -82,6 +82,8 @@ struct dentry *debugfs_create_dir(const char *name, struct dentry *parent); struct dentry *debugfs_create_symlink(const char *name, struct dentry *parent, const char *dest); +struct dentry *debugfs_lookup(const char *name, struct dentry *parent); + void debugfs_remove(struct dentry *dentry); void debugfs_remove_recursive(struct dentry *dentry);