openzfs: fix gcc kernel module builds - Suppress -Wredundant-decls. Ultimately this warning is harmless in any case, and it does not look like there is a simple way to avoid redundant declar
openzfs: fix gcc kernel module builds - Suppress -Wredundant-decls. Ultimately this warning is harmless in any case, and it does not look like there is a simple way to avoid redundant declarations in this case without a lot of header pollution (e.g. having openzfs's shim param.h pulling in sys/kernel.h for hz). - Suppress -Wnested-externs, which is useless anyway.Unfortunately it was not sufficient just to modify OPENZFS_CFLAGS,because the warning suppressions need to appear on the command lineafter they are explicitly enabled by CWARNFLAGS from sys/conf/kern.mk,but OPENZFS_CFLAGS get added before due to use of -I for the shims.Reviewed by: markjSponsored by: Dell EMC IsilonDifferential Revision: https://reviews.freebsd.org/D27685
show more ...
Update OpenZFS to 2.0.0-rc3-gfc5966- fix panic due to tqid overflow- Improve libzfs_error_init messages- Expose zfetch_max_idistance tunable- Make dbufstat work on FreeBSD- Fix EIO after resumi
Update OpenZFS to 2.0.0-rc3-gfc5966- fix panic due to tqid overflow- Improve libzfs_error_init messages- Expose zfetch_max_idistance tunable- Make dbufstat work on FreeBSD- Fix EIO after resuming receive of new dataset over an existing one
Merge OpenZFS support in to HEAD.The primary benefit is maintaining a completely sharedcode base with the community allowing FreeBSD to receivenew features sooner and with less effort.I would a
Merge OpenZFS support in to HEAD.The primary benefit is maintaining a completely sharedcode base with the community allowing FreeBSD to receivenew features sooner and with less effort.I would advise against doing 'zpool upgrade'or creating indispensable pools using newfeatures until this change has had a month+to soak.Work on merging FreeBSD support in to what wasat the time "ZFS on Linux" began in August 2018.I first publicly proposed transitioning FreeBSDto (new) OpenZFS on December 18th, 2018. FreeBSDsupport in OpenZFS was finally completed in December2019. A CFT for downstreaming OpenZFS support into FreeBSD was first issued on July 8th. All issuesthat were reported have been addressed or, fora couple of less critical matters there arepull requests in progress with OpenZFS. iXsystemshas tested and dogfooded extensively internally.The TrueNAS 12 release is based on OpenZFS withsome additional features that have not yet madeit upstream.Improvements include: project quotas, encrypted datasets, allocation classes, vectorized raidz, vectorized checksums, various command line improvements, zstd compression.Thanks to those who have helped along the way:Ryan Moeller, Allan Jude, Zack Welch, and manyothers.Sponsored by: iXsystems, Inc.Differential Revision: https://reviews.freebsd.org/D25872
Stop compiling dtrace modules with -DSMP.I believe this is left over from when dtrace was being ported anddeveloped out-of-tree. Now it just ensures that dtrace.ko and a non-SMPkernel have incom
Stop compiling dtrace modules with -DSMP.I believe this is left over from when dtrace was being ported anddeveloped out-of-tree. Now it just ensures that dtrace.ko and a non-SMPkernel have incompatible KBIs.PR: 243711Sponsored by: The FreeBSD Foundation
Move most of the contents of opt_compat.h to opt_global.h.opt_compat.h is mentioned in nearly 180 files. In-progress networkdriver compabibility improvements may add over 100 more so this isclose
Move most of the contents of opt_compat.h to opt_global.h.opt_compat.h is mentioned in nearly 180 files. In-progress networkdriver compabibility improvements may add over 100 more so this iscloser to "just about everywhere" than "only some files" per theguidance in sys/conf/options.Keep COMPAT_LINUX32 in opt_compat.h as it is confined to a subset ofsys/compat/linux/*.c. A fake _COMPAT_LINUX option ensure opt_compat.his created on all architectures.Move COMPAT_LINUXKPI to opt_dontuse.h as it is only used to control theset of compiled files.Reviewed by: kib, cem, jhb, jtlSponsored by: DARPA, AFRLDifferential Revision: https://reviews.freebsd.org/D14941
sys/modules: normalize .CURDIR-relative paths to SRCTOPThis simplifies make output/logicTested with: `cd sys/modules; make ALL_MODULES=` on amd64MFC after: 1 monthSponsored by: Dell EMC Isilon
Replace the implementation of DTrace's RAND subroutine for generatinglow-quality random numbers with a modern implementation (xoroshiro128+)that is capable of generating better quality randomness w
Replace the implementation of DTrace's RAND subroutine for generatinglow-quality random numbers with a modern implementation (xoroshiro128+)that is capable of generating better quality randomness without compromising performance.Submitted by: Graeme JenkinsonReviewed by: markjMFC after: 2 weeksSponsored by: DARPA, AFRLDifferential Revision: https://reviews.freebsd.org/D9051
Re-support CWARNFLAGS, lost when bsd.sys.mk was removed. Also, supportCWARNFALGS.$file centrally so we don't have to have it in all theplaces. Remove a few warning flags that are no longer needed.
Re-support CWARNFLAGS, lost when bsd.sys.mk was removed. Also, supportCWARNFALGS.$file centrally so we don't have to have it in all theplaces. Remove a few warning flags that are no longer needed.Also, always use -Wno-unknown-pragma to (hopefully temporarily) workaround #pragma ident in debug.h in the opensolaris code. Remove somestale warning suppression that's no longer necessary.
Avoid using ${.CURDIR} so that the module can be built from multipledirectories.Obtained from: Juniper Networks, Inc.
Revert r268007, and re-adapt MFV r260708:4427 pid provider rejects probes with valid UTF-8 namesUse of u8_textprep.c required -Wno-cast-qual for powerpc.MFC after: 2 weeks
Revert r267869:MFV r2607084427 pid provider rejects probes with valid UTF-8 namesUse of u8_textprep.c broke the build on powerpc.Reported by: bz, rpaulo and tinderbox.Pointyhat: me
MFV r2607084427 pid provider rejects probes with valid UTF-8 namesThis make use of Solaris' u8_validate() which we happen touse since r185029 for ZFS.Illumos Revision: 1444d846b126463eb1059a57
MFV r2607084427 pid provider rejects probes with valid UTF-8 namesThis make use of Solaris' u8_validate() which we happen touse since r185029 for ZFS.Illumos Revision: 1444d846b126463eb1059a572ff114d51f7562e5Reference:https://www.illumos.org/issues/4427Obtained from: IllumosMFC after: 2 weeks
Use SYSDIR to reference to the top of the sys hierarchy. Define SYSDIRrelative to .CURDIR if not already defined. This makes the makefilesmore readable but also more re-usable and adaptable.Obtai
Use SYSDIR to reference to the top of the sys hierarchy. Define SYSDIRrelative to .CURDIR if not already defined. This makes the makefilesmore readable but also more re-usable and adaptable.Obtained from: Juniper Networks, Inc.
Add fasttrap for PowerPC. This is the last piece of the dtrace/ppc puzzle.It's incomplete, it doesn't contain full instruction emulation, but it should besufficient for most cases.MFC after: 1 m
Add fasttrap for PowerPC. This is the last piece of the dtrace/ppc puzzle.It's incomplete, it doesn't contain full instruction emulation, but it should besufficient for most cases.MFC after: 1 month
opensolaris code: translate INVARIANTS to DEBUG and ZFS_DEBUGDo this by forcing inclusion ofsys/cddl/compat/opensolaris/sys/debug_compat.hvia -include option into all source files from OpenSolari
opensolaris code: translate INVARIANTS to DEBUG and ZFS_DEBUGDo this by forcing inclusion ofsys/cddl/compat/opensolaris/sys/debug_compat.hvia -include option into all source files from OpenSolaris.Note that this -include option must always be after -include opt_global.h.Additionally, remove forced definition of DEBUG for some modules and fixtheir build without DEBUG.Also, meaning of DEBUG was overloaded to enable WITNESS support for someOpenSolaris (primarily ZFS) locks. Now this overloading is removed andthat use of DEBUG is replaced with a new option OPENSOLARIS_WITNESS.MFC after: 17 days
Update for the recent location of the fasttrap code.Sponsored by: The FreeBSD Foundation
MFtbemd:Use MACHINE_CPUARCH in preference to MACHINE_ARCH. The former is thesource code location of the machine, the latter the binary output. Ingeneral, we want to use MACHINE_CPUARCH instead
MFtbemd:Use MACHINE_CPUARCH in preference to MACHINE_ARCH. The former is thesource code location of the machine, the latter the binary output. Ingeneral, we want to use MACHINE_CPUARCH instead of MACHINE_ARCH unlesswe're tesitng for a specific target. The isn't even moot fori386/amd64 where there's momemntum towards a MACHINE_CPUARCH == x86,although a specific cleanup for that likely would be needed...
Add the DTrace kernel module makefiles.