Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 11 Feb 2024 01:52:54 GMT
From:      Konstantin Belousov <kib@FreeBSD.org>
To:        src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org
Subject:   git: 920542c46341 - stable/13 - kcmp(2): implement for procdesc
Message-ID:  <202402110152.41B1qsSA089687@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch stable/13 has been updated by kib:

URL: https://cgit.FreeBSD.org/src/commit/?id=920542c46341a572e4e7395e0341537f9ae6c66e

commit 920542c46341a572e4e7395e0341537f9ae6c66e
Author:     Konstantin Belousov <kib@FreeBSD.org>
AuthorDate: 2024-01-19 22:37:39 +0000
Commit:     Konstantin Belousov <kib@FreeBSD.org>
CommitDate: 2024-02-11 01:40:29 +0000

    kcmp(2): implement for procdesc
    
    (cherry picked from commit f006524d6d696cc2a10b9e90a9a6ea412f1839eb)
---
 sys/kern/sys_procdesc.c | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/sys/kern/sys_procdesc.c b/sys/kern/sys_procdesc.c
index 307aea407d90..aab7b1616594 100644
--- a/sys/kern/sys_procdesc.c
+++ b/sys/kern/sys_procdesc.c
@@ -97,6 +97,7 @@ static fo_kqfilter_t	procdesc_kqfilter;
 static fo_stat_t	procdesc_stat;
 static fo_close_t	procdesc_close;
 static fo_fill_kinfo_t	procdesc_fill_kinfo;
+static fo_cmp_t		procdesc_cmp;
 
 static struct fileops procdesc_ops = {
 	.fo_read = invfo_rdwr,
@@ -111,6 +112,7 @@ static struct fileops procdesc_ops = {
 	.fo_chown = invfo_chown,
 	.fo_sendfile = invfo_sendfile,
 	.fo_fill_kinfo = procdesc_fill_kinfo,
+	.fo_cmp = procdesc_cmp,
 	.fo_flags = DFLAG_PASSABLE,
 };
 
@@ -556,3 +558,15 @@ procdesc_fill_kinfo(struct file *fp, struct kinfo_file *kif,
 	kif->kf_un.kf_proc.kf_pid = pdp->pd_pid;
 	return (0);
 }
+
+static int
+procdesc_cmp(struct file *fp1, struct file *fp2, struct thread *td)
+{
+	struct procdesc *pdp1, *pdp2;
+
+	if (fp2->f_type != DTYPE_PROCDESC)
+		return (3);
+	pdp1 = fp1->f_data;
+	pdp2 = fp2->f_data;
+	return (kcmp_cmp((uintptr_t)pdp1->pd_pid, (uintptr_t)pdp2->pd_pid));
+}



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202402110152.41B1qsSA089687>