| #
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 ...
|