#
4c6ceca9 |
|
23-Feb-2024 |
Gleb Smirnoff <glebius@FreeBSD.org> |
tests/fdgrowtable: perform the threaded test in a child process The test needs to be performed in a new process that was forked with RFCFDG flag. The will guarantee that the table will start to grow from 20 file descriptors, no matter what kyua(1) or a bare shell was doing before executing this test. This should fix repetitive test runs from a shell as well as failures with kyua(1) in some environments.
|
#
98ef51d5 |
|
23-Feb-2024 |
Gleb Smirnoff <glebius@FreeBSD.org> |
Revert "tests/fdgrowtable: open more files in the threaded case" This reverts commit fa6a02f50e65c47540f51b3177f5080bc6af168e. It makes the test less probable to fail, but it doesn't fix the root issue - that on entry the parent process may have already a large file descriptor table.
|
#
3ac00162 |
|
20-Feb-2024 |
Gleb Smirnoff <glebius@FreeBSD.org> |
tests/fdgrowtable: remove always true check We are always the parent in this code path.
|
#
fa6a02f5 |
|
20-Feb-2024 |
Gleb Smirnoff <glebius@FreeBSD.org> |
tests/fdgrowtable: open more files in the threaded case This should fix the test failing on some machines/conditions/runs. This won't fix failures in standalone run, but should fix kyua(1) runs. Currently with standalone run it will usually fail because the 40-sized allocation is skipped (see details below). This matches what forking test does: open 128 files in the parent and 128 in the child. There should actually be no difference where and when the files are open, but let's mimic the forking test, and open more files in the spawned thread. Also opening from two different contexts adds a bit more entropy to the test. What the test does it checks that fdgrowtable() has been called at least three tmes for the test process, and the old tables are still on the free list as long as other execution contexts exist. Under kyua(1) control the first call grows the table from 20 to 40, but the original table of 20 is an embedded one, thus is not put on the free list. Passing 40 open files the table grows to 128 and first old table lands on the free list. Passing 128 open file the table grows to 256 and a second old table lands on the free list. After that the test would pass. The threaded test was one open file off before this fix sometimes.
|
#
6dced2c6 |
|
24-Nov-2023 |
Warner Losh <imp@FreeBSD.org> |
tests: 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
|
#
1d386b48 |
|
16-Aug-2023 |
Warner Losh <imp@FreeBSD.org> |
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 BSD-2-Clause. Discussed with: pfg MFC After: 3 days Sponsored by: Netflix
|
#
889b5662 |
|
30-Mar-2023 |
Mark Johnston <markj@FreeBSD.org> |
fdgrowtable tests: Address a set-but-not-used warning MFC after: 1 week
|
#
6d759051 |
|
11-Dec-2020 |
Ryan Libby <rlibby@FreeBSD.org> |
fdgrowtable_test.c: appease gcc Work around bogus gcc -Wreturn-type. https://gcc.gnu.org/bugzilla/show_bug.cgi?id=44511 Reviewed by: kevans, rew Sponsored by: Dell EMC Isilon Differential Revision: https://reviews.freebsd.org/D27563
|
#
3c85ca21 |
|
21-Nov-2020 |
Robert Wing <rew@FreeBSD.org> |
fd: free old file descriptor tables when not shared During the life of a process, new file descriptor tables may be allocated. When a new table is allocated, the old table is placed in a free list and held onto until all processes referencing them exit. When a new file descriptor table is allocated, the old file descriptor table can be freed when the current process has a single-thread and the file descriptor table is not being shared with any other processes. Reviewed by: kevans Approved by: kevans (mentor) Differential Revision: https://reviews.freebsd.org/D18617
|