| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
Notes:
Fixes: a36774b ("bfstd: Take sched_getaffinity() into account in nproc()")
|
|
|
|
| |
Notes:
Fixes: 881d590 ("xtime: Add a wrapper for timer_create()/setitimer()")
|
|
|
|
| |
Just check our wrapper's error detection, like we do for xmktime().
|
|
|
|
| |
Notes:
Fixes: 1aefb83 ("tests/units: Run each test in a separate process")
|
|
|
|
|
| |
Rather than hiding them with %.0s, use a ternary to replace them with an
empty string if they would be unused.
|
|
|
|
|
|
|
|
| |
Just add the standard prefix to the passed format string in the
diagnostic macros themselves. This lets us write the whole message with
one dprintf() call, minimizing interleaving.
It's also a net win for binary size.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
Compilers apparently aren't smart enough to infer that the odd tail
length fixup "loops" run at most once, and could be converted to ifs, so
do that manually.
|
|
|
|
| |
Notes:
Fixes: dd5df1f ("eval: Don't error out in -ls if the time overflows")
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Otherwise the order doesn't match lexicographical order on bytes.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
popcount(map & (bit - 1) & mask) has a longer critical path than
popcount(map & (bit - 1)) & mask.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
$TTY is the actual TTY, e.g. /dev/pts/3, which may not be accessible by
the current user. This can happen e.g. if the PTY is owned by root, who
then does
root@host# su user
user@host$ ./tests/tests.sh
./tests/color.sh: line 81: /dev/pts/3: Permission denied
Notes:
Fixes: 59b1c52 ("tests: Print progress outside the scroll region")
|
| |
|
|
|
|
|
|
|
| |
Bash 5 adds that special variable, which should be more reliable than
the awk trick, which is known to be broken on mawk.
Fixes: https://github.com/tavianator/bfs/issues/152
|
|
|
|
|
|
|
|
| |
getpid() could hypothetically be cached (and glibc used to do it).
getppid() can't be, because the parent could die and reparent the child
to init.
Link: https://lore.kernel.org/linux-mm/Z58dIOGlJ3grsAge@casper.infradead.org/
|
|
|
|
|
|
|
|
|
| |
This fixes -fstype on btrfs subvolumes, which previously reported
"unknown" due to their dev_t being potentially different from the mount
point.
Link: https://savannah.gnu.org/bugs/?50859
Link: https://lwn.net/Articles/866582/
|
| |
|
| |
|
|
|
|
| |
Link: https://sourceware.org/bugzilla/show_bug.cgi?id=16060
|
|
|
|
|
|
|
|
|
|
|
| |
The test was Linux-only, and didn't pass on at least mips64el due to a
different signal mask size. The new version should be fully portable,
but will hang forever on failure.
Link: https://buildd.debian.org/status/fetch.php?pkg=bfs&arch=mips64el&ver=4.0.5-1&stamp=1737761227&raw=0
Notes:
Fixes: 4859d49 ("tests: Add a test for sigmask restoration")
|
|
|
|
|
|
|
|
|
|
|
|
| |
With some GCC versions, --enable-ubsan leads to this warning:
src/ioq.c: In function ‘ioq_slot_wait’:
src/ioq.c:287:17: warning: ignoring loop annotation
287 | for (int j = 0; j < (1 << i); ++j) {
| ^~~
presumably due to UBSan rewriting the shift to check for overflow. Work
around this by precomputing the iteration count.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bumps [cross-platform-actions/action](https://github.com/cross-platform-actions/action) from 0.26.0 to 0.27.0.
- [Release notes](https://github.com/cross-platform-actions/action/releases)
- [Changelog](https://github.com/cross-platform-actions/action/blob/master/changelog.md)
- [Commits](https://github.com/cross-platform-actions/action/compare/v0.26.0...v0.27.0)
---
updated-dependencies:
- dependency-name: cross-platform-actions/action
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
|
| |
|
|
|
|
| |
Link: https://github.com/actions/runner-images/issues/9524#issuecomment-2002065399
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Valgrind does not deliver async signals in a timely manner; by default,
it polls for new signals every 1,000 basic blocks. That means we can
get SIGALRM delivered after timer_delete(), or kill(SIGSEGV) never
delivered after pause().
Fix the timer_delete() issue by reordering the cleanup path. Valgrind
always polls pending signals after pthread_sigmask(), so call that
between timer_delete() and sigunhook().
Fix the pause() issue by sleeping in a loop instead.
Note that --fair-sched=yes is required to avoid starvation of the
background thread.
Link: https://bugs.kde.org/show_bug.cgi?id=492678
Link: https://bugs.kde.org/show_bug.cgi?id=343357
Link: https://bugs.kde.org/show_bug.cgi?id=498936
|
|
|
|
| |
Notes:
Fixes: 62928dd ("sighook: New sigreset() function to reset all handlers")
|
| |
|
| |
|
| |
|
| |
|