mirror of
https://github.com/freebsd/freebsd-src
synced 2024-07-01 07:55:03 +00:00
Compare commits
12 Commits
7d02f8eee5
...
f3e6a4cbc8
Author | SHA1 | Date | |
---|---|---|---|
|
f3e6a4cbc8 | ||
|
8502c68d29 | ||
|
5afc347944 | ||
|
7d37fcbf52 | ||
|
7e5574f9e5 | ||
|
b2351a4ba5 | ||
|
3da568710f | ||
|
7d6932d20a | ||
|
f29bdea047 | ||
|
07cc7ea738 | ||
|
d25f0bdceb | ||
|
f4fa0561ae |
|
@ -54,7 +54,7 @@ contrib/pjdfstest asomers,ngie,pjd,#test Pre-commit review requested.
|
|||
etc/mail gshapiro Pre-commit review requested. Keep in sync with -STABLE.
|
||||
etc/sendmail gshapiro Pre-commit review requested. Keep in sync with -STABLE.
|
||||
fetch des Pre-commit review requested, email only.
|
||||
fusefs(5) asomers Pre-commit review requested.
|
||||
fusefs(4) asomers Pre-commit review requested.
|
||||
geli pjd Pre-commit review requested (both sys/geom/eli/ and sbin/geom/class/eli/).
|
||||
iwm(4) adrian Pre-commit review requested, send to freebsd-wireless@freebsd.org
|
||||
iwn(4) adrian Pre-commit review requested, send to freebsd-wireless@freebsd.org
|
||||
|
@ -121,7 +121,7 @@ libvmmapi jhb Pre-commit review requested via #bhyve
|
|||
phabricator group.
|
||||
usr.sbin/bhyve* jhb Pre-commit review requested via #bhyve
|
||||
phabricator group.
|
||||
autofs(5) trasz Pre-commit review recommended.
|
||||
autofs(4) trasz Pre-commit review recommended.
|
||||
iscsi(4) trasz Pre-commit review recommended.
|
||||
rctl(8) trasz Pre-commit review recommended.
|
||||
sys/dev/ofw nwhitehorn Pre-commit review recommended.
|
||||
|
|
|
@ -59,7 +59,7 @@ ATF_TC_BODY(revoke_basic, tc)
|
|||
int *buf;
|
||||
|
||||
#ifdef __FreeBSD__
|
||||
atf_tc_skip("revoke(2) is only implemented for devfs(5).");
|
||||
atf_tc_skip("revoke(2) is only implemented for devfs(4).");
|
||||
#endif
|
||||
(void)memset(&res, 0, sizeof(struct rlimit));
|
||||
(void)getrlimit(RLIMIT_NOFILE, &res);
|
||||
|
@ -117,7 +117,7 @@ ATF_TC_BODY(revoke_err, tc)
|
|||
ATF_REQUIRE_ERRNO(ENAMETOOLONG, revoke(buf) == -1);
|
||||
|
||||
#ifdef __FreeBSD__
|
||||
atf_tc_skip("revoke(2) is only implemented for devfs(5).");
|
||||
atf_tc_skip("revoke(2) is only implemented for devfs(4).");
|
||||
#endif
|
||||
errno = 0;
|
||||
ATF_REQUIRE_ERRNO(EPERM, revoke("/etc/passwd") == -1);
|
||||
|
@ -140,7 +140,7 @@ ATF_TC_BODY(revoke_perm, tc)
|
|||
pid_t pid;
|
||||
|
||||
#ifdef __FreeBSD__
|
||||
atf_tc_skip("revoke(2) is only implemented for devfs(5).");
|
||||
atf_tc_skip("revoke(2) is only implemented for devfs(4).");
|
||||
#endif
|
||||
pw = getpwnam("nobody");
|
||||
fd = open(path, O_RDWR | O_CREAT, 0600);
|
||||
|
|
|
@ -38,7 +38,7 @@
|
|||
#include <string.h>
|
||||
|
||||
/*
|
||||
* fusefs(5) file systems may have a "subtype" which gets appended to
|
||||
* fusefs(4) file systems may have a "subtype" which gets appended to
|
||||
* statfs(2)'s f_fstypename field on a per-mount basis. Allow getvfsbyname to
|
||||
* match either the full "fusefs.foobar" or the more general "fusefs".
|
||||
*/
|
||||
|
|
|
@ -54,7 +54,7 @@ pio2_2t = 2.0670321098263988236496903051604844e-43L, /* 0x127044533e63a0105df5
|
|||
pio2_3 = 2.0670321098263988236499468110329591e-43L, /* 0x127044533e63a0105e00000000000.0p-254 */
|
||||
pio2_3t = -2.5650587247459238361625433492959285e-65L; /* -0x159c4ec64ddaeb5f78671cbfb2210.0p-327 */
|
||||
|
||||
static inline __always_inline int
|
||||
static __always_inline int
|
||||
__ieee754_rem_pio2l(long double x, long double *y)
|
||||
{
|
||||
union IEEEl2bits u,u1;
|
||||
|
|
|
@ -444,7 +444,7 @@ struct ld {
|
|||
#endif
|
||||
|
||||
#ifdef STRUCT_RETURN
|
||||
static inline __always_inline void
|
||||
static __always_inline void
|
||||
k_logl(long double x, struct ld *rp)
|
||||
#else
|
||||
long double
|
||||
|
|
|
@ -66,7 +66,7 @@ pio2_2t = 6.36831716351095013979e-25L, /* 0xc51701b839a25205.0p-144 */
|
|||
pio2_3t = -2.75299651904407171810e-37L; /* -0xbb5bf6c7ddd660ce.0p-185 */
|
||||
#endif
|
||||
|
||||
static inline __always_inline int
|
||||
static __always_inline int
|
||||
__ieee754_rem_pio2l(long double x, long double *y)
|
||||
{
|
||||
union IEEEl2bits u,u1;
|
||||
|
|
|
@ -444,7 +444,7 @@ struct ld {
|
|||
#endif
|
||||
|
||||
#ifdef STRUCT_RETURN
|
||||
static inline __always_inline void
|
||||
static __always_inline void
|
||||
k_logl(long double x, struct ld *rp)
|
||||
#else
|
||||
long double
|
||||
|
|
|
@ -45,7 +45,7 @@ pio2_3 = 2.02226624871116645580e-21, /* 0x3BA3198A, 0x2E000000 */
|
|||
pio2_3t = 8.47842766036889956997e-32; /* 0x397B839A, 0x252049C1 */
|
||||
|
||||
#ifdef INLINE_REM_PIO2
|
||||
static __inline __always_inline
|
||||
static __always_inline
|
||||
#endif
|
||||
int
|
||||
__ieee754_rem_pio2(double x, double *y)
|
||||
|
|
|
@ -38,7 +38,7 @@ pio2_1 = 1.57079631090164184570e+00, /* 0x3FF921FB, 0x50000000 */
|
|||
pio2_1t = 1.58932547735281966916e-08; /* 0x3E5110b4, 0x611A6263 */
|
||||
|
||||
#ifdef INLINE_REM_PIO2F
|
||||
static __inline __always_inline
|
||||
static __always_inline
|
||||
#endif
|
||||
int
|
||||
__ieee754_rem_pio2f(float x, double *y)
|
||||
|
|
|
@ -204,7 +204,7 @@ handle_remount() { # $1 = mount point
|
|||
}
|
||||
|
||||
# Create a generic memory disk.
|
||||
# The 'auto' parameter will attempt to use tmpfs(5), falls back to md(4).
|
||||
# The 'auto' parameter will attempt to use tmpfs(4), falls back to md(4).
|
||||
# $1 is size in 512-byte sectors, $2 is the mount point.
|
||||
mount_md() {
|
||||
if [ ${o_verbose} -gt 0 ] ; then
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
#
|
||||
# autofs(5) specific devd events
|
||||
# autofs(4) specific devd events
|
||||
|
||||
# Discard autofs caches, useful for the -media special map.
|
||||
notify 100 {
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
#
|
||||
# The following are some default rules for devfs(5) mounts.
|
||||
# The following are some default rules for devfs(4) mounts.
|
||||
# The format is very simple. Empty lines and lines beginning
|
||||
# with a hash '#' are ignored. If the hash mark occurs anywhere
|
||||
# other than the beginning of a line, it and any subsequent
|
||||
|
|
|
@ -64,6 +64,7 @@ static char *mod_searchmodule(char *name, struct mod_depend *verinfo);
|
|||
static char * mod_searchmodule_pnpinfo(const char *bus, const char *pnpinfo);
|
||||
static void file_insert_tail(struct preloaded_file *mp);
|
||||
static void file_remove(struct preloaded_file *fp);
|
||||
static void file_remove_tail(struct preloaded_file *fp);
|
||||
struct file_metadata* metadata_next(struct file_metadata *base_mp, int type);
|
||||
static void moduledir_readhints(struct moduledir *mdp);
|
||||
static void moduledir_rebuild(void);
|
||||
|
@ -876,7 +877,7 @@ mod_loadkld(const char *kldname, int argc, char *argv[])
|
|||
file_insert_tail(fp); /* Add to the list of loaded files */
|
||||
if (file_load_dependencies(fp) != 0) {
|
||||
err = ENOENT;
|
||||
file_remove(fp);
|
||||
file_remove_tail(fp);
|
||||
loadaddr = loadaddr_saved;
|
||||
fp = NULL;
|
||||
break;
|
||||
|
@ -1637,25 +1638,45 @@ file_insert_tail(struct preloaded_file *fp)
|
|||
* Remove module from the chain
|
||||
*/
|
||||
static void
|
||||
file_remove(struct preloaded_file *fp)
|
||||
file_remove_impl(struct preloaded_file *fp, bool keep_tail)
|
||||
{
|
||||
struct preloaded_file *cm;
|
||||
struct preloaded_file *cm, *next;
|
||||
|
||||
if (preloaded_files == NULL)
|
||||
return;
|
||||
|
||||
if (keep_tail)
|
||||
next = fp->f_next;
|
||||
else
|
||||
next = NULL;
|
||||
|
||||
if (preloaded_files == fp) {
|
||||
preloaded_files = fp->f_next;
|
||||
preloaded_files = next;
|
||||
return;
|
||||
}
|
||||
|
||||
for (cm = preloaded_files; cm->f_next != NULL; cm = cm->f_next) {
|
||||
if (cm->f_next == fp) {
|
||||
cm->f_next = fp->f_next;
|
||||
cm->f_next = next;
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
file_remove(struct preloaded_file *fp)
|
||||
{
|
||||
|
||||
file_remove_impl(fp, true);
|
||||
}
|
||||
|
||||
static void
|
||||
file_remove_tail(struct preloaded_file *fp)
|
||||
{
|
||||
|
||||
file_remove_impl(fp, false);
|
||||
}
|
||||
|
||||
static char *
|
||||
moduledir_fullpath(struct moduledir *mdp, const char *fname)
|
||||
{
|
||||
|
|
|
@ -55,6 +55,6 @@ Source Roadmap:
|
|||
| security | security facilities - `audit(4)` and `mac(4)` |
|
||||
| sys | kernel headers |
|
||||
| tests | kernel unit tests |
|
||||
| ufs | Unix File System - `ffs(7)` |
|
||||
| ufs | Unix File System - `ffs(4)` |
|
||||
| vm | virtual memory system |
|
||||
| x86 | code shared by AMD64 and i386 architectures |
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2014 ARM Ltd
|
||||
* Copyright (c) 2024 Arm Ltd
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
|
@ -27,157 +27,5 @@
|
|||
*/
|
||||
|
||||
#ifndef __ARM_ARCH
|
||||
|
||||
/* ACLE standardises a set of pre-defines that describe the ARM architecture.
|
||||
These were mostly implemented in GCC around GCC-4.8; older versions
|
||||
have no, or only partial support. To provide a level of backwards
|
||||
compatibility we try to work out what the definitions should be, given
|
||||
the older pre-defines that GCC did produce. This isn't complete, but
|
||||
it should be enough for use by routines that depend on this header. */
|
||||
|
||||
/* No need to handle ARMv8, GCC had ACLE support before that. */
|
||||
|
||||
#define __ARM_ACLE 101
|
||||
|
||||
# ifdef __ARM_ARCH_7__
|
||||
/* The common subset of ARMv7 in all profiles. */
|
||||
# define __ARM_ARCH 7
|
||||
# define __ARM_ARCH_ISA_THUMB 2
|
||||
# define __ARM_FEATURE_CLZ
|
||||
# define __ARM_FEATURE_LDREX 7
|
||||
# define __ARM_FEATURE_UNALIGNED
|
||||
# endif
|
||||
|
||||
# if defined (__ARM_ARCH_7A__) || defined (__ARM_ARCH_7R__)
|
||||
# define __ARM_ARCH 7
|
||||
# define __ARM_ARCH_ISA_THUMB 2
|
||||
# define __ARM_ARCH_ISA_ARM
|
||||
# define __ARM_FEATURE_CLZ
|
||||
# define __ARM_FEATURE_SIMD32
|
||||
# define __ARM_FEATURE_DSP
|
||||
# define __ARM_FEATURE_QBIT
|
||||
# define __ARM_FEATURE_SAT
|
||||
# define __ARM_FEATURE_LDREX 15
|
||||
# define __ARM_FEATURE_UNALIGNED
|
||||
# ifdef __ARM_ARCH_7A__
|
||||
# define __ARM_ARCH_PROFILE 'A'
|
||||
# else
|
||||
# define __ARM_ARCH_PROFILE 'R'
|
||||
# endif
|
||||
# endif
|
||||
|
||||
# ifdef __ARM_ARCH_7EM__
|
||||
# define __ARM_ARCH 7
|
||||
# define __ARM_ARCH_ISA_THUMB 2
|
||||
# define __ARM_FEATURE_CLZ
|
||||
# define __ARM_FEATURE_SIMD32
|
||||
# define __ARM_FEATURE_DSP
|
||||
# define __ARM_FEATURE_QBIT
|
||||
# define __ARM_FEATURE_SAT
|
||||
# define __ARM_FEATURE_LDREX 7
|
||||
# define __ARM_FEATURE_UNALIGNED
|
||||
# define __ARM_ARCH_PROFILE 'M'
|
||||
# endif
|
||||
|
||||
# ifdef __ARM_ARCH_7M__
|
||||
# define __ARM_ARCH 7
|
||||
# define __ARM_ARCH_ISA_THUMB 2
|
||||
# define __ARM_FEATURE_CLZ
|
||||
# define __ARM_FEATURE_QBIT
|
||||
# define __ARM_FEATURE_SAT
|
||||
# define __ARM_FEATURE_LDREX 7
|
||||
# define __ARM_FEATURE_UNALIGNED
|
||||
# define __ARM_ARCH_PROFILE 'M'
|
||||
# endif
|
||||
|
||||
# ifdef __ARM_ARCH_6T2__
|
||||
# define __ARM_ARCH 6
|
||||
# define __ARM_ARCH_ISA_THUMB 2
|
||||
# define __ARM_ARCH_ISA_ARM
|
||||
# define __ARM_FEATURE_CLZ
|
||||
# define __ARM_FEATURE_SIMD32
|
||||
# define __ARM_FEATURE_DSP
|
||||
# define __ARM_FEATURE_QBIT
|
||||
# define __ARM_FEATURE_SAT
|
||||
# define __ARM_FEATURE_LDREX 4
|
||||
# define __ARM_FEATURE_UNALIGNED
|
||||
# endif
|
||||
|
||||
# ifdef __ARM_ARCH_6M__
|
||||
# define __ARM_ARCH 6
|
||||
# define __ARM_ARCH_ISA_THUMB 1
|
||||
# define __ARM_ARCH_PROFILE 'M'
|
||||
# endif
|
||||
|
||||
# if defined (__ARM_ARCH_6__) || defined (__ARM_ARCH_6J__) \
|
||||
|| defined (__ARM_ARCH_6K__) || defined (__ARM_ARCH_6Z__) \
|
||||
|| defined (__ARM_ARCH_6ZK__)
|
||||
# define __ARM_ARCH 6
|
||||
# define __ARM_ARCH_ISA_THUMB 1
|
||||
# define __ARM_ARCH_ISA_ARM
|
||||
# define __ARM_FEATURE_CLZ
|
||||
# define __ARM_FEATURE_SIMD32
|
||||
# define __ARM_FEATURE_DSP
|
||||
# define __ARM_FEATURE_QBIT
|
||||
# define __ARM_FEATURE_SAT
|
||||
# define __ARM_FEATURE_UNALIGNED
|
||||
# ifndef __thumb__
|
||||
# if defined (__ARM_ARCH_6K__) || defined (__ARM_ARCH_6ZK__)
|
||||
# define __ARM_FEATURE_LDREX 15
|
||||
# else
|
||||
# define __ARM_FEATURE_LDREX 4
|
||||
# endif
|
||||
# endif
|
||||
# endif
|
||||
|
||||
# if defined (__ARM_ARCH_5TE__) || defined (__ARM_ARCH_5E__)
|
||||
# define __ARM_ARCH 5
|
||||
# define __ARM_ARCH_ISA_ARM
|
||||
# ifdef __ARM_ARCH_5TE__
|
||||
# define __ARM_ARCH_ISA_THUMB 1
|
||||
# endif
|
||||
# define __ARM_FEATURE_CLZ
|
||||
# define __ARM_FEATURE_DSP
|
||||
# endif
|
||||
|
||||
# if defined (__ARM_ARCH_5T__) || defined (__ARM_ARCH_5__)
|
||||
# define __ARM_ARCH 5
|
||||
# define __ARM_ARCH_ISA_ARM
|
||||
# ifdef __ARM_ARCH_5TE__
|
||||
# define __ARM_ARCH_ISA_THUMB 1
|
||||
# endif
|
||||
# define __ARM_FEATURE_CLZ
|
||||
# endif
|
||||
|
||||
# ifdef __ARM_ARCH_4T__
|
||||
# define __ARM_ARCH 4
|
||||
# define __ARM_ARCH_ISA_ARM
|
||||
# define __ARM_ARCH_ISA_THUMB 1
|
||||
# endif
|
||||
|
||||
# ifdef __ARM_ARCH_4__
|
||||
# define __ARM_ARCH 4
|
||||
# define __ARM_ARCH_ISA_ARM
|
||||
# endif
|
||||
|
||||
# if defined (__ARM_ARCH_3__) || defined (__ARM_ARCH_3M__)
|
||||
# define __ARM_ARCH 3
|
||||
# define __ARM_ARCH_ISA_ARM
|
||||
# endif
|
||||
|
||||
# ifdef __ARM_ARCH_2__
|
||||
# define __ARM_ARCH 2
|
||||
# define __ARM_ARCH_ISA_ARM
|
||||
# endif
|
||||
|
||||
# ifdef __ARMEB__
|
||||
# define __ARM_BIG_ENDIAN
|
||||
# endif
|
||||
|
||||
/* If we still don't know what the target architecture is, then we're
|
||||
probably not using GCC. */
|
||||
# ifndef __ARM_ARCH
|
||||
# error Unable to determine architecture version.
|
||||
# endif
|
||||
|
||||
#endif /* __ARM_ARCH */
|
||||
#error Your compiler is too old
|
||||
#endif
|
||||
|
|
|
@ -4349,9 +4349,7 @@ calculate_iaq(struct adapter *sc, struct intrs_and_queues *iaq, int itype,
|
|||
*/
|
||||
do {
|
||||
if (iaq->nrxq > 1) {
|
||||
do {
|
||||
iaq->nrxq--;
|
||||
} while (!powerof2(iaq->nrxq));
|
||||
iaq->nrxq = rounddown_pow_of_two(iaq->nrxq - 1);
|
||||
if (iaq->nnmrxq > iaq->nrxq)
|
||||
iaq->nnmrxq = iaq->nrxq;
|
||||
}
|
||||
|
|
|
@ -711,7 +711,7 @@ ext4_ext_tree_init(struct inode *ip)
|
|||
|
||||
ip->i_flag |= IN_E4EXTENTS;
|
||||
|
||||
memset(ip->i_data, 0, EXT2_NDADDR + EXT2_NIADDR);
|
||||
memset(ip->i_data, 0, sizeof(ip->i_data));
|
||||
ehp = (struct ext4_extent_header *)ip->i_data;
|
||||
ehp->eh_magic = htole16(EXT4_EXT_MAGIC);
|
||||
ehp->eh_max = htole16(ext4_ext_space_root(ip));
|
||||
|
|
|
@ -656,7 +656,7 @@ imgact_binmisc_exec(struct image_params *imgp)
|
|||
if (imgp->args->fname != NULL) {
|
||||
fname = imgp->args->fname;
|
||||
} else {
|
||||
/* Use the fdescfs(5) path for fexecve(2). */
|
||||
/* Use the fdescfs(4) path for fexecve(2). */
|
||||
sname = sbuf_new_auto();
|
||||
sbuf_printf(sname, "/dev/fd/%d", imgp->args->fd);
|
||||
sbuf_finish(sname);
|
||||
|
|
|
@ -265,7 +265,7 @@
|
|||
#define __malloc_like __attribute__((__malloc__))
|
||||
#define __pure __attribute__((__pure__))
|
||||
|
||||
#define __always_inline __attribute__((__always_inline__))
|
||||
#define __always_inline __inline __attribute__((__always_inline__))
|
||||
#define __noinline __attribute__ ((__noinline__))
|
||||
#define __fastcall __attribute__((__fastcall__))
|
||||
#define __result_use_check __attribute__((__warn_unused_result__))
|
||||
|
|
|
@ -180,6 +180,7 @@ static __inline void
|
|||
sched_unpin(void)
|
||||
{
|
||||
atomic_interrupt_fence();
|
||||
MPASS(curthread->td_pinned > 0);
|
||||
curthread->td_pinned--;
|
||||
}
|
||||
|
||||
|
|
|
@ -315,13 +315,6 @@ dmar_ir_free_irte(struct dmar_unit *unit, u_int cookie)
|
|||
return (0);
|
||||
}
|
||||
|
||||
static u_int
|
||||
clp2(u_int v)
|
||||
{
|
||||
|
||||
return (powerof2(v) ? v : 1 << fls(v));
|
||||
}
|
||||
|
||||
int
|
||||
dmar_init_irt(struct dmar_unit *unit)
|
||||
{
|
||||
|
@ -339,7 +332,7 @@ dmar_init_irt(struct dmar_unit *unit)
|
|||
"QI disabled, disabling interrupt remapping\n");
|
||||
return (0);
|
||||
}
|
||||
unit->irte_cnt = clp2(num_io_irqs);
|
||||
unit->irte_cnt = roundup_pow_of_two(num_io_irqs);
|
||||
unit->irt = kmem_alloc_contig(unit->irte_cnt * sizeof(dmar_irte_t),
|
||||
M_ZERO | M_WAITOK, 0, iommu_high, PAGE_SIZE, 0,
|
||||
DMAR_IS_COHERENT(unit) ?
|
||||
|
|
|
@ -283,7 +283,7 @@ TEST_F(Mknod, parent_inode)
|
|||
}
|
||||
|
||||
/*
|
||||
* fusefs(5) lacks VOP_WHITEOUT support. No bugzilla entry, because that's a
|
||||
* fusefs(4) lacks VOP_WHITEOUT support. No bugzilla entry, because that's a
|
||||
* feature, not a bug
|
||||
*/
|
||||
TEST_F(Mknod, DISABLED_whiteout)
|
||||
|
|
|
@ -79,7 +79,7 @@ class OpenNoOpenSupport: public FuseTest {
|
|||
};
|
||||
|
||||
/*
|
||||
* fusefs(5) does not support I/O on device nodes (neither does UFS). But it
|
||||
* fusefs(4) does not support I/O on device nodes (neither does UFS). But it
|
||||
* shouldn't crash
|
||||
*/
|
||||
TEST_F(Open, chr)
|
||||
|
|
|
@ -350,7 +350,7 @@ TEST_F(Listxattr, enotsup)
|
|||
* On Linux, however, the file system is supposed to return ERANGE if an
|
||||
* insufficiently large buffer is passed to listxattr(2).
|
||||
*
|
||||
* fusefs(5) must guarantee the usual FreeBSD behavior.
|
||||
* fusefs(4) must guarantee the usual FreeBSD behavior.
|
||||
*/
|
||||
TEST_F(Listxattr, erange)
|
||||
{
|
||||
|
|
|
@ -1197,6 +1197,9 @@ ATF_TC_BODY(random_eor_and_waitall, tc)
|
|||
size_t off;
|
||||
int fd[2], eor;
|
||||
|
||||
if (atf_tc_get_config_var_as_bool_wd(tc, "ci", false))
|
||||
atf_tc_skip("https://bugs.freebsd.org/279994");
|
||||
|
||||
arc4random_buf(params.seed, sizeof(params.seed));
|
||||
printf("Using seed:");
|
||||
for (u_int i = 0; i < (u_int)sizeof(params.seed)/sizeof(u_short); i++)
|
||||
|
|
|
@ -30,7 +30,7 @@
|
|||
[ `id -u ` -ne 0 ] && echo "Must be root!" && exit 1
|
||||
|
||||
# Test scenario for https://reviews.freebsd.org/D20411
|
||||
# Add devfs(5) support for VOP_MKDIR(9) and VOP_RMDIR(9)
|
||||
# Add devfs(4) support for VOP_MKDIR(9) and VOP_RMDIR(9)
|
||||
|
||||
. ../default.cfg
|
||||
|
||||
|
|
|
@ -26,7 +26,7 @@
|
|||
# SUCH DAMAGE.
|
||||
#
|
||||
|
||||
# ext2fs(5) test scenario with a 1k block size
|
||||
# ext2fs(4) test scenario with a 1k block size
|
||||
# "panic: ext2_reallocblks: alloc mismatch" seen.
|
||||
# "Fatal trap 12: page fault while in kernel mode" seen.
|
||||
|
||||
|
|
|
@ -27,7 +27,7 @@
|
|||
# SUCH DAMAGE.
|
||||
#
|
||||
|
||||
# tmpfs(5) version of fifo2.sh
|
||||
# tmpfs(4) version of fifo2.sh
|
||||
# No problems seen on HEAD.
|
||||
|
||||
[ `id -u ` -ne 0 ] && echo "Must be root!" && exit 1
|
||||
|
|
|
@ -26,7 +26,7 @@
|
|||
# SUCH DAMAGE.
|
||||
#
|
||||
|
||||
# mkfifo(2), select(2) with tmpfs(5) scenario.
|
||||
# mkfifo(2), select(2) with tmpfs(4) scenario.
|
||||
|
||||
. ../default.cfg
|
||||
[ `id -u ` -ne 0 ] && echo "Must be root!" && exit 1
|
||||
|
|
|
@ -26,7 +26,7 @@
|
|||
# SUCH DAMAGE.
|
||||
#
|
||||
|
||||
# mkfifo(2), select(2) with tmpfs(5) scenario.
|
||||
# mkfifo(2), select(2) with tmpfs(4) scenario.
|
||||
|
||||
. ../default.cfg
|
||||
[ `id -u ` -ne 0 ] && echo "Must be root!" && exit 1
|
||||
|
|
|
@ -26,7 +26,7 @@
|
|||
# SUCH DAMAGE.
|
||||
#
|
||||
|
||||
# mkfifo(2), poll(2) with tmpfs(5) scenario.
|
||||
# mkfifo(2), poll(2) with tmpfs(4) scenario.
|
||||
|
||||
. ../default.cfg
|
||||
[ `id -u ` -ne 0 ] && echo "Must be root!" && exit 1
|
||||
|
|
|
@ -26,7 +26,7 @@
|
|||
# SUCH DAMAGE.
|
||||
#
|
||||
|
||||
# mlockall(2) / nullfs(5) scenario causes:
|
||||
# mlockall(2) / nullfs(4) scenario causes:
|
||||
# http://people.freebsd.org/~pho/stress/log/kostik619.txt
|
||||
# kern/182661, fixed in r256211.
|
||||
|
||||
|
|
|
@ -27,7 +27,7 @@
|
|||
# SUCH DAMAGE.
|
||||
#
|
||||
|
||||
# Rename(2) test with msdosfs(5)
|
||||
# Rename(2) test with msdosfs(4)
|
||||
# Test scenario by kib@
|
||||
|
||||
. ../default.cfg
|
||||
|
|
|
@ -28,7 +28,7 @@
|
|||
|
||||
[ `id -u ` -ne 0 ] && echo "Must be root!" && exit 1
|
||||
|
||||
# Demonstate nullfs(5) inode leak.
|
||||
# Demonstate nullfs(4) inode leak.
|
||||
# Fixed by r295717.
|
||||
|
||||
. ../default.cfg
|
||||
|
|
|
@ -46,13 +46,13 @@ mdconfig -l | grep -q md$mdstart && mdconfig -d -u $mdstart
|
|||
|
||||
mount -t tmpfs tmpfs $mntpoint
|
||||
cp -a /usr/include $mntpoint
|
||||
echo "Testing tmpfs(5)"
|
||||
echo "Testing tmpfs(4)"
|
||||
/tmp/pread $mntpoint
|
||||
while mount | grep -q "on $mntpoint "; do
|
||||
umount $mntpoint || sleep 1
|
||||
done
|
||||
|
||||
echo "Testing fdescfs(5)"
|
||||
echo "Testing fdescfs(4)"
|
||||
mount -t fdescfs null /dev/fd
|
||||
for i in `jot 100`; do
|
||||
/tmp/pread /dev/fd
|
||||
|
@ -62,7 +62,7 @@ while mount | grep -q "on /dev/fd "; do
|
|||
umount /dev/fd || sleep 1
|
||||
done
|
||||
|
||||
echo "Testing procfs(5)"
|
||||
echo "Testing procfs(4)"
|
||||
mount -t procfs procfs $mntpoint
|
||||
/tmp/pread $mntpoint
|
||||
while mount | grep -q "on $mntpoint "; do
|
||||
|
@ -81,13 +81,13 @@ done
|
|||
mdconfig -d -u $mdstart
|
||||
|
||||
mount -t nullfs /bin $mntpoint
|
||||
echo "Testing nullfs(5)"
|
||||
echo "Testing nullfs(4)"
|
||||
/tmp/pread $mntpoint
|
||||
while mount | grep -q "on $mntpoint "; do
|
||||
umount $mntpoint || sleep 1
|
||||
done
|
||||
|
||||
echo "Testing procfs(5)"
|
||||
echo "Testing procfs(4)"
|
||||
mount -t procfs procfs $mntpoint
|
||||
/tmp/pread $mntpoint
|
||||
while mount | grep -q "on $mntpoint "; do
|
||||
|
|
|
@ -26,7 +26,7 @@
|
|||
# SUCH DAMAGE.
|
||||
#
|
||||
|
||||
# procfs(5) test scenario.
|
||||
# procfs(4) test scenario.
|
||||
# "panic: wchan 0xc10a4f68 has no wmesg" seen
|
||||
|
||||
[ `id -u ` -ne 0 ] && echo "Must be root!" && exit 1
|
||||
|
|
|
@ -45,19 +45,19 @@ mount | grep $mntpoint | grep -q /dev/md && umount -f $mntpoint
|
|||
mdconfig -l | grep -q md$mdstart && mdconfig -d -u $mdstart
|
||||
|
||||
mount -t tmpfs tmpfs $mntpoint
|
||||
echo "Testing tmpfs(5)"
|
||||
echo "Testing tmpfs(4)"
|
||||
cp -a /usr/include $mntpoint
|
||||
/tmp/readdir $mntpoint
|
||||
umount $mntpoint
|
||||
|
||||
echo "Testing fdescfs(5)"
|
||||
echo "Testing fdescfs(4)"
|
||||
kldstat -v | grep -q fdescfs || { kldload fdescfs.ko; loaded=1; }
|
||||
mount -t fdescfs null /dev/fd
|
||||
/tmp/readdir /dev/fd
|
||||
umount /dev/fd
|
||||
[ $unload ] && kldunload fdescfs.ko
|
||||
|
||||
echo "Testing procfs(5)"
|
||||
echo "Testing procfs(4)"
|
||||
mount -t procfs procfs $mntpoint
|
||||
/tmp/readdir $mntpoint
|
||||
umount $mntpoint
|
||||
|
@ -89,7 +89,7 @@ umount $mntpoint
|
|||
mdconfig -d -u $mdstart
|
||||
|
||||
mount -t nullfs /bin $mntpoint
|
||||
echo "Testing nullfs(5)"
|
||||
echo "Testing nullfs(4)"
|
||||
/tmp/readdir $mntpoint
|
||||
umount $mntpoint
|
||||
|
||||
|
|
|
@ -52,7 +52,7 @@ mdconfig -l | grep -q md$mdstart && mdconfig -d -u $mdstart
|
|||
|
||||
kldstat | grep -q tmpfs.ko || loaded=1
|
||||
mount -t tmpfs tmpfs $mntpoint
|
||||
echo "Testing tmpfs(5)"
|
||||
echo "Testing tmpfs(4)"
|
||||
cp $diskimage $mntpoint
|
||||
/tmp/sendfile5 $mntpoint/$file
|
||||
umount $mntpoint
|
||||
|
@ -68,7 +68,7 @@ umount $mntpoint
|
|||
mdconfig -d -u $mdstart
|
||||
|
||||
mount -t nullfs $dir $mntpoint
|
||||
echo "Testing nullfs(5)"
|
||||
echo "Testing nullfs(4)"
|
||||
/tmp/sendfile5 $mntpoint/$file
|
||||
umount $mntpoint
|
||||
|
||||
|
|
|
@ -26,7 +26,7 @@
|
|||
# SUCH DAMAGE.
|
||||
#
|
||||
|
||||
# tmpfs(5) name lookup problem seen:
|
||||
# tmpfs(4) name lookup problem seen:
|
||||
|
||||
# $ ./tmpfs10.sh
|
||||
# tmpfs10: unlink(p01193.14729) at loop #2: No such file or directory
|
||||
|
|
|
@ -28,7 +28,7 @@
|
|||
|
||||
[ `id -u ` -ne 0 ] && echo "Must be root!" && exit 1
|
||||
|
||||
# Test with two tmpfs(5) file systems mounted.
|
||||
# Test with two tmpfs(4) file systems mounted.
|
||||
|
||||
. ../default.cfg
|
||||
|
||||
|
|
|
@ -26,7 +26,7 @@
|
|||
# SUCH DAMAGE.
|
||||
#
|
||||
|
||||
# tmpfs(5) option nonc test scenario
|
||||
# tmpfs(4) option nonc test scenario
|
||||
|
||||
. ../default.cfg
|
||||
[ `id -u ` -ne 0 ] && echo "Must be root!" && exit 1
|
||||
|
|
|
@ -28,7 +28,7 @@
|
|||
|
||||
[ `id -u ` -ne 0 ] && echo "Must be root!" && exit 1
|
||||
|
||||
# Demonstrate rename(2) cache problem for tmpfs(5). Fixed in r226987.
|
||||
# Demonstrate rename(2) cache problem for tmpfs(4). Fixed in r226987.
|
||||
# Variation of rename6.sh
|
||||
|
||||
. ../default.cfg
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
# SPDX-License-Identifier: BSD-2-Clause
|
||||
#
|
||||
|
||||
# unionfs(8) test
|
||||
# unionfs(4) test
|
||||
# Variation of unionfs7.sh, but with tmpfs
|
||||
|
||||
# "mkdir: rmdir(d17) Directory not empty" seen.
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
# SPDX-License-Identifier: BSD-2-Clause
|
||||
#
|
||||
|
||||
# Simple unionfs(8) + tmpfs test
|
||||
# Simple unionfs(4) + tmpfs(4) test
|
||||
|
||||
# "rmdir: d2: Directory not empty" seen.
|
||||
|
||||
|
|
|
@ -27,7 +27,7 @@
|
|||
# SUCH DAMAGE.
|
||||
#
|
||||
|
||||
# unionfs(8) test
|
||||
# unionfs(4) test
|
||||
# "panic: ufs dir vp 0xfffffe0157351068 ip 0xfffffe016a63d488 flags 0x3c06" seen
|
||||
|
||||
[ `id -u ` -ne 0 ] && echo "Must be root!" && exit 1
|
||||
|
|
|
@ -27,7 +27,7 @@
|
|||
# SUCH DAMAGE.
|
||||
#
|
||||
|
||||
# unionfs(8) test
|
||||
# unionfs(4) test
|
||||
|
||||
# "unionfs_get_node_status: 0xfffffe018f356770 is not exclusive locked but
|
||||
# should be" seen.
|
||||
|
|
|
@ -27,7 +27,7 @@
|
|||
# SUCH DAMAGE.
|
||||
#
|
||||
|
||||
# unionfs(8) test with a cd9660 file system
|
||||
# unionfs(4) test with a cd9660(4) file system
|
||||
|
||||
# "panic: unionfs_noderem: vnode 0xfffffe014f9259c8 locked recursively" seen
|
||||
# https://people.freebsd.org/~pho/stress/log/log0233.txt
|
||||
|
|
|
@ -4469,7 +4469,7 @@ main(int argc, char **argv)
|
|||
if (fd == -1 && errno == ENOENT) {
|
||||
saved_errno = errno;
|
||||
retval = kldload("ctl");
|
||||
if (retval != -1)
|
||||
if (retval != -1 || errno == EEXIST)
|
||||
fd = open(device, O_RDWR);
|
||||
else
|
||||
errno = saved_errno;
|
||||
|
|
Loading…
Reference in New Issue
Block a user