History log of /src/sys/kern/sys_procdesc.c (Results 1 – 25 of 234)
Revision Date Author Comments
# 4d707825 08-Jan-2026 Konstantin Belousov <kib@FreeBSD.org>

Add pdwait(2)

Reviewed by: asomers, markj
Tested by: pho
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Differential revision: https://reviews.freebsd.org/D54592


# 09984871 15-Jan-2026 Konstantin Belousov <kib@FreeBSD.org>

procdesc: postpone freeing the zombie' pid until procdesc is freed

Requested by: asomers
Reviewed by: asomers, markj
Tested by: pho
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Differentia

procdesc: postpone freeing the zombie' pid until procdesc is freed

Requested by: asomers
Reviewed by: asomers, markj
Tested by: pho
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Differential revision: https://reviews.freebsd.org/D54592

show more ...


# 36138969 16-Oct-2025 Konstantin Belousov <kib@FreeBSD.org>

knotes: kqueue: handle copy for trivial filters

Reviewed by: markj
Tested by: pho
Sponsored by: The FreeBSD Foundation
MFC after: 2 weeks
Differential revision: https://reviews.freebsd.org/D52045


# a85525a5 13-Sep-2025 Konstantin Belousov <kib@FreeBSD.org>

pdgetpid(2): switch back returning EBADF for non-procdesc fd

This partially reverts fd9e09cb2ab0, since apparently QT depends on this
specific error code. It seems that it applies pdgetpid() to ran

pdgetpid(2): switch back returning EBADF for non-procdesc fd

This partially reverts fd9e09cb2ab0, since apparently QT depends on this
specific error code. It seems that it applies pdgetpid() to random fds
and filters non-procdescs by checking errno for EBADF.

Reported by: arrowd, Kenneth Raplee <kenrap@kennethraplee.com>
Sponsored by: The FreeBSD Foundation
MFC after: 1 week

show more ...


# fd9e09cb 07-Sep-2025 Konstantin Belousov <kib@FreeBSD.org>

kern: replace several EBADF with EINVAL

EBADF semantic is that the passed fd is invalid, not that it is of wrong
type. Using EBADF in these places in kern_event.c and sys_procdesc.c
give bad exampl

kern: replace several EBADF with EINVAL

EBADF semantic is that the passed fd is invalid, not that it is of wrong
type. Using EBADF in these places in kern_event.c and sys_procdesc.c
give bad examples to copy from.

Note that places in kern_event.c that checks KQ_CLOSING and return EBADF
are kept, since KQ_CLOSING is the transient state before the fd is
finally closed and become eligible for EBADF.

Reviewed by: markj
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Differential revision: https://reviews.freebsd.org/D52410

show more ...


# 5319cb21 20-May-2025 Mark Johnston <markj@FreeBSD.org>

file: Qualify pointers to capsicum rights as const

File descriptor lookup routines typically take a set of capsicum rights
as input to the lookup, so that the fd's rights can be atomically
checked.

file: Qualify pointers to capsicum rights as const

File descriptor lookup routines typically take a set of capsicum rights
as input to the lookup, so that the fd's rights can be atomically
checked. This set should be qualified with const.

No functional change intended.

Reviewed by: olce, oshogbo, brooks, kib
MFC after: 2 weeks
Differential Revision: https://reviews.freebsd.org/D50419

show more ...


# ef9ffb85 25-Nov-2024 Mark Johnston <markj@FreeBSD.org>

kern: Make fileops and filterops tables const where possible

No functional change intended.

MFC after: 1 week


# f006524d 19-Jan-2024 Konstantin Belousov <kib@FreeBSD.org>

kcmp(2): implement for procdesc

Reviewed by: brooks, markj
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Differential revision: https://reviews.freebsd.org/D43518


# fdafd315 24-Nov-2023 Warner Losh <imp@FreeBSD.org>

sys: Automated cleanup of cdefs and other formatting

Apply the following automated changes to try to eliminate
no-longer-needed sys/cdefs.h includes as well as now-empty
blank lines in a row.

Remov

sys: Automated cleanup of cdefs and other formatting

Apply the following automated changes to try to eliminate
no-longer-needed sys/cdefs.h includes as well as now-empty
blank lines in a row.

Remove /^#if.*\n#endif.*\n#include\s+<sys/cdefs.h>.*\n/
Remove /\n+#include\s+<sys/cdefs.h>.*\n+#if.*\n#endif.*\n+/
Remove /\n+#if.*\n#endif.*\n+/
Remove /^#if.*\n#endif.*\n/
Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/types.h>/
Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/param.h>/
Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/capsicum.h>/

Sponsored by: Netflix

show more ...


# 5657e065 28-Aug-2023 Warner Losh <imp@FreeBSD.org>

procdesc: Remove stray references to pdwait4

We've never had pdwait4, and have no plans of adding pdwait4. Remove the
stray references here.

Sponsored by: Netflix


# 685dc743 16-Aug-2023 Warner Losh <imp@FreeBSD.org>

sys: Remove $FreeBSD$: one-line .c pattern

Remove /^[\s*]*__FBSDID\("\$FreeBSD\$"\);?\s*\n/


# 4d846d26 10-May-2023 Warner Losh <imp@FreeBSD.org>

spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD

The SPDX folks have obsoleted the BSD-2-Clause-FreeBSD identifier. Catch
up to that fact and revert to their recommended match of

spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD

The SPDX folks have obsoleted the BSD-2-Clause-FreeBSD identifier. Catch
up to that fact and revert to their recommended match of BSD-2-Clause.

Discussed with: pfg
MFC After: 3 days
Sponsored by: Netflix

show more ...


# 2b68eb8e 01-Oct-2021 Mateusz Guzik <mjg@FreeBSD.org>

vfs: remove thread argument from VOP_STAT

and fo_stat.


# 523d6673 09-Nov-2020 Mateusz Guzik <mjg@FreeBSD.org>

procdesc: convert the zone to a malloc type

The object is 128 bytes in size.


# 8e493611 25-Nov-2019 Mariusz Zaborski <oshogbo@FreeBSD.org>

procdesc: allow to collect status through wait(1) if process is traced

The debugger like truss(1) depends on the wait(2) syscall. This syscall
waits for ALL children. When it is waiting for ALL chil

procdesc: allow to collect status through wait(1) if process is traced

The debugger like truss(1) depends on the wait(2) syscall. This syscall
waits for ALL children. When it is waiting for ALL child's the children
created by process descriptors are not returned. This behavior was
introduced because we want to implement libraries which may pdfork(1).

The behavior of process descriptor brakes truss(1) because it will
not be able to collect the status of processes with process descriptors.

To address this problem the status is returned to parent when the
child is traced. While the process is traced the debugger is the new parent.
In case the original parent and debugger are the same process it means the
debugger explicitly used pdfork() to create the child. In that case the debugger
should be using kqueue()/pdwait() instead of wait().

Add test case to verify that. The test case was implemented by markj@.

Reviewed by: kib, markj
Discussed with: jhb
MFC after: 1 month
Differential Revision: https://reviews.freebsd.org/D20362

show more ...


# c878d1eb 05-Aug-2019 Mariusz Zaborski <oshogbo@FreeBSD.org>

procdesc: fix the function name

I changed name of the function r350429 and forgot to update
the r350612 patch.

Reported by: jenkins
MFC after: 1 month


# fd631bcd 05-Aug-2019 Mariusz Zaborski <oshogbo@FreeBSD.org>

procdesc: fix reparenting when the debugger is attached

The process is reparented to the debugger while it is attached.
B B
/ ----> |
A A D

Every time when the process is r

procdesc: fix reparenting when the debugger is attached

The process is reparented to the debugger while it is attached.
B B
/ ----> |
A A D

Every time when the process is reparented, it is added to the orphan list
of the previous parent:

A->orphan = B
D->orphan = NULL

When the A process will close the process descriptor to the B process,
the B process will be reparented to the init process.
B B - init
| ---->
A D A D

A->orphan = B
D->orphan = B

In this scenario, the B process is in the orphan list of A and D.

When the last process descriptor is closed instead of reparenting
it to the reaper let it stay with the debugger process and set
our previews parent to the reaper.

Add test case for this situation.
Notice that without this patch the kernel will crash with this test case:
panic: orphan 0xfffff8000e990530 of 0xfffff8000e990000 has unexpected oppid 1

Reviewed by: markj, kib
MFC after: 1 month
Differential Revision: https://reviews.freebsd.org/D20361

show more ...


# 3d5db455 24-Nov-2018 Dimitry Andric <dim@FreeBSD.org>

Merge ^/head r340427 through r340868.


# 2c054ce9 16-Nov-2018 Mateusz Guzik <mjg@FreeBSD.org>

proc: always store parent pid in p_oppid

Doing so removes the dependency on proctree lock from sysctl process list
export which further reduces contention during poudriere -j 128 runs.

Reviewed by:

proc: always store parent pid in p_oppid

Doing so removes the dependency on proctree lock from sysctl process list
export which further reduces contention during poudriere -j 128 runs.

Reviewed by: kib (previous version)
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D17825

show more ...


# c6879c6c 23-Oct-2018 Dimitry Andric <dim@FreeBSD.org>

Merge ^/head r339015 through r339669.


# ddab8c35 16-Oct-2018 Mark Johnston <markj@FreeBSD.org>

Reparent a child of pdfork(2) to its reaper when the procdesc is closed.

Unconditionally reparenting to PID 1 breaks the procctl(2) reaper
functionality.

Add a regression test for this case.

Revie

Reparent a child of pdfork(2) to its reaper when the procdesc is closed.

Unconditionally reparenting to PID 1 breaks the procctl(2) reaper
functionality.

Add a regression test for this case.

Reviewed by: kib
Approved by: re (gjb)
MFC after: 2 weeks
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D17589

show more ...


# 4d707825 08-Jan-2026 Konstantin Belousov <kib@FreeBSD.org>

Add pdwait(2)

Reviewed by: asomers, markj
Tested by: pho
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Differential revision: https://reviews.freebsd.org/D54592


# 09984871 15-Jan-2026 Konstantin Belousov <kib@FreeBSD.org>

procdesc: postpone freeing the zombie' pid until procdesc is freed

Requested by: asomers
Reviewed by: asomers, markj
Tested by: pho
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Differentia

procdesc: postpone freeing the zombie' pid until procdesc is freed

Requested by: asomers
Reviewed by: asomers, markj
Tested by: pho
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Differential revision: https://reviews.freebsd.org/D54592

show more ...


# 36138969 16-Oct-2025 Konstantin Belousov <kib@FreeBSD.org>

knotes: kqueue: handle copy for trivial filters

Reviewed by: markj
Tested by: pho
Sponsored by: The FreeBSD Foundation
MFC after: 2 weeks
Differential revision: https://reviews.freebsd.org/D52045


# a85525a5 13-Sep-2025 Konstantin Belousov <kib@FreeBSD.org>

pdgetpid(2): switch back returning EBADF for non-procdesc fd

This partially reverts fd9e09cb2ab0, since apparently QT depends on this
specific error code. It seems that it applies pdgetpid() to ran

pdgetpid(2): switch back returning EBADF for non-procdesc fd

This partially reverts fd9e09cb2ab0, since apparently QT depends on this
specific error code. It seems that it applies pdgetpid() to random fds
and filters non-procdescs by checking errno for EBADF.

Reported by: arrowd, Kenneth Raplee <kenrap@kennethraplee.com>
Sponsored by: The FreeBSD Foundation
MFC after: 1 week

show more ...


12345678910