339118 |
03-Oct-2018 |
mav |
MFC r337160: Do not blindly include illumos kernel headers instead of user-space. It is not needed now, and I doubt it much helped at all, creating more confusions then good. |
338080 |
20-Aug-2018 |
kevans |
MFC r337696: Use INCS for non-sys/ libnvpair and libzfs_core includes
While nothing was wrong with libnvpair.h, libzfs_core.h was only guarded by MK_CDDL rather than MK_CDDL && MK_ZFS. Rather than ugl'if'ying include/Makefile to impose the extra restriction, just move the non-sys/ includes into INCS with the respect lib builds.
This has the added bonus of allowing third party packagers to try and split these libs out of the FreeBSD-runtime package, if they are so inclined.
The sys/ include was left alone- generally userland libraries shouldn't install kernel headers. |
333617 |
15-May-2018 |
dteske |
MFC SVN r329188,329334,329353,329914,329995-329996: DTrace Enhancements
r329188: Use tabs in io.d, fix alignment issues, remove extra newlines r329334: Add errno definitions to /usr/lib/dtrace/errno.d r329353: Add inline to errno.d for translating int to string r329914: Updates and enhancements to io.d to aid DTrace scripting r329995: Updates and enhancements to signal.d to aid DTrace scripting r329996: Consistent casing for fallback SIGCHLD (s/Unknown/unknown/)
MFC SVN r330559-330560,330672,332865-332867,333513-333519: dwatch(1)
r330559: Introduce dwatch(1) as a tool for making DTrace more useful r330560: Bump dwatch(1) internal version from 1.0-beta-91 to 1.0 r330672: Fix display of wrong pid from dtrace_sched(4) r332865: Add `-dev' option to aid debugging of profiles r332866: Add profile for send(2)/recv(2) syscalls r332867: Remove the line used to demonstrate `-dev' option r333513: Bugfix, usage displayed with `-1Q' r333514: Separate default values so `-[BK] num' don't affect usage r333515: Simplify info message test r333516: Export ARGV to profiles loaded via load_profile() r333517: Allow `-E code' to override profile EVENT_DETAILS r333518: Expose process for ip/tcp/udp r333519: Refactor sendrecv profile
Reviewed by: markj, gnn, bdrewery (head; earlier version) Approved by: re (gjb) Relnotes: yes Sponsored by: Smule, Inc. Differential Revision: https://reviews.freebsd.org/D15418 |
328661 |
01-Feb-2018 |
markj |
MFC r328398: Remove uneeded parentheses. |
325914 |
16-Nov-2017 |
avg |
MFC r325035: MFV r325013,r325034: 640 number_to_scaled_string is duplicated in several commands
FreeBSD note: of all libcmdutils functionality ZFS (and other illumos contrib code) currently uses only nicenum() function (which is similar to humanize_number but has some formatting differences). For this reason I decided to not port the whole library. As a result, nicenum.c from libcmdutils is compiled into libzfs and libzpool. This is a bit ugly, but works. If one day we are forced to create libillumos, then the file should be moved to that library. |
325534 |
08-Nov-2017 |
avg |
MFC r324163: MFV r323530,r323533,r323534: 7431 ZFS Channel Programs, and followups
Also MFC-ed are the following fixes: - r324164 Add several new files to the files enabled by ZFS kernel option - r324178 unbreak kernel builds on sparc64 and powerpc - r324194 fix incorrect use of getzfsvfs_impl in r324163 - r324292 really unbreak kernel builds on sparc64 and powerpc64 |
323814 |
20-Sep-2017 |
gnn |
MFC: 323253, 323499
Add D definitions for the named values in socket.h (gnn@)
Fix DTrace test tst_inet_ntop_d: remove definitions are already in libdtrace (lwhsu@) |
321268 |
20-Jul-2017 |
ngie |
MFC r314654:
cddl: normalize paths using SRCTOP-relative paths or :H when possible
This simplifies make logic/output
While here, remove bogus CFLAGS which look for headers in cddl/lib/libumem. There aren't any source files there (just Makefiles) |
316208 |
30-Mar-2017 |
gnn |
MFC: 311225, 311243, 313045
Fix DTrace TCP tracepoints to not use mtod() as it is both unnecessary and dangerous. Those wanting data from an mbuf should use DTrace itself to get the data.
Add an mbuf to ipinfo_t translator to finish cleanup of mbuf passing to TCP probes. |
313131 |
03-Feb-2017 |
markj |
MFC r308773: Define dependencies for some auto-generated source files in libdtrace. |
311683 |
08-Jan-2017 |
ae |
MFC r310785: Convert ipv4_flags and ipv4_offset fields into host byte order. Also save only high bits in the ipv4_flags, because it is defined as uint8_t. So now it will show DF and MF flags as 0x40 and 0x20. |
308701 |
15-Nov-2016 |
hiren |
MFC r302474 (By gnn)
On FreeBSD there is a setsockopt option SO_USER_COOKIE which allows setting a 32 bit value on each socket. This can be used by applications and DTrace as a rendezvous point so that an applicaton's data can more easily be captured at run time. Expose the user cookie via DTrace by updating the translator in tcp.d and add a quick test program, a TCP server, that sets the cookie on each connection accepted.
Sponsored by: Limelight Networks |
305747 |
12-Sep-2016 |
gnn |
MFC: 304825 Unlike Solaris, in FreeBSD p_args can be 0 so check for that instead of walking down to ar_args blindly.
Reported by: Amanda Strnad Reviewed by: markj, jhb Sponsored by: DARPA, AFRL |
302408 |
08-Jul-2016 |
gjb |
Copy head@r302406 to stable/11 as part of the 11.0-RELEASE cycle. Prune svn:mergeinfo from the new branch, as nothing has been merged here.
Additional commits post-branch will follow.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation |
302141 |
23-Jun-2016 |
asomers |
Raise the WARNS level in cddl/lib
cddl/lib/libavl/Makefile cddl/lib/libctf/Makefile cddl/lib/libnvpair/Makefile cddl/lib/libumem/Makefile cddl/lib/libuutil/Makefile Increase WARNS to the highest working level for each of these libraries
Approved by: re (gjb, hrs) MFC after: 4 weeks Sponsored by: Spectra Logic Corp
|
300618 |
24-May-2016 |
br |
Add initial DTrace support for RISC-V.
Sponsored by: DARPA, AFRL Sponsored by: HEIF5
|
299094 |
04-May-2016 |
ngie |
Merge ^/user/ngie/release-pkg-fix-tests to unbreak how test files are installed after r298107
Summary of changes:
- Replace all instances of FILES/TESTS with ${PACKAGE}FILES. This ensures that namespacing is kept with FILES appropriately, and that this shouldn't need to be repeated if the namespace changes -- only the definition of PACKAGE needs to be changed - Allow PACKAGE to be overridden by callers instead of forcing it to always be `tests`. In the event we get to the point where things can be split up enough in the base system, it would make more sense to group the tests with the blocks they're a part of, e.g. byacc with byacc-tests, etc - Remove PACKAGE definitions where possible, i.e. where FILES wasn't used previously. - Remove unnecessary TESTSPACKAGE definitions; this has been elided into bsd.tests.mk - Remove unnecessary BINDIRs used previously with ${PACKAGE}FILES; ${PACKAGE}FILESDIR is now automatically defined in bsd.test.mk. - Fix installation of files under data/ subdirectories in lib/libc/tests/hash and lib/libc/tests/net/getaddrinfo - Remove unnecessary .include <bsd.own.mk>s (some opportunistic cleanup)
Document the proposed changes in share/examples/tests/tests/... via examples so it's clear that ${PACKAGES}FILES is the suggested way forward in terms of replacing FILES. share/mk/bsd.README didn't seem like the appropriate method of communicating that info.
MFC after: never probably X-MFC with: r298107 PR: 209114 Relnotes: yes Tested with: buildworld, installworld, checkworld; buildworld, packageworld Sponsored by: EMC / Isilon Storage Division
|
298768 |
29-Apr-2016 |
gjb |
Fix including Kyuafile in packaged base system.
Fix a related typo while here.
Note, this change results in the Kyuafile inclusion in the runtime package, which needs to be fixed, however addresses the PR as far as I can tell in my tests.
PR: 209114 Submitted by: ngie Sponsored by: The FreeBSD Foundation
|
298107 |
16-Apr-2016 |
gjb |
Merge the projects/release-pkg branch to head.
This allows packaging the base system with pkg(8), including but not limited to providing the ability to provide upstream binary update possibilities for non-tier-1 architectures.
This merge is a requirement of the 11.0-RELEASE, and as such, thank you to everyone that has tested the project branch.
Documentation in build(7) etc. is still somewhat sparse, but updates to those parts will follow.
Sponsored by: The FreeBSD Foundation
|
298087 |
15-Apr-2016 |
hiren |
Fix the 'type' for a few variables from tcpcb.
Reviewed by: markj Sponsored by: Limelight Networks Differential Revision: https://reviews.freebsd.org/D5973
|
296587 |
09-Mar-2016 |
bdrewery |
DIRDEPS_BUILD: Connect MK_TESTS.
Sponsored by: EMC / Isilon Storage Division
|
296335 |
03-Mar-2016 |
gnn |
fix tcpdebug: - assign to "flags" in each probe, not only debug-input compute "len" in the same way in each probe
Submitted by: Hannes Mehnert MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D5524
|
295989 |
24-Feb-2016 |
bdrewery |
DIRDEPS_BUILD: Regenerate without local dependencies.
These are no longer needed after the recent 'beforebuild: depend' changes and hooking DIRDEPS_BUILD into a subset of FAST_DEPEND which supports skipping 'make depend'.
Sponsored by: EMC / Isilon Storage Division
|
294713 |
25-Jan-2016 |
br |
We don't support libdtrace for RISC-V yet.
|
291738 |
04-Dec-2015 |
bdrewery |
Fix LDADD/DPADD that should be LIBADD.
Sponsored by: EMC / Isilon Storage Division
|
291729 |
04-Dec-2015 |
bdrewery |
Simplify the LIBRARIES_ONLY hacks so that install: is not needed here.
This uses the same pattern that I applied to the other cases of this in the csu directories.
Sponsored by: EMC / Isilon Storage Division
|
291563 |
01-Dec-2015 |
bdrewery |
META MODE: Update dependencies with 'the-lot' and add missing directories.
This is not properly respecting WITHOUT or ARCH dependencies in target/. Doing so requires a massive effort to rework targets/ to do so. A better approach will be to either include the SUBDIR Makefiles directly and map to DIRDEPS or just dynamically lookup the SUBDIR. These lose the benefit of having a userland/lib, userland/libexec, etc, though and results in a massive package. The current implementation of targets/ is very unmaintainable.
Currently rescue/rescue and sys/modules are still not connected.
Sponsored by: EMC / Isilon Storage Division
|
291307 |
25-Nov-2015 |
bdrewery |
META MODE: Prefer INSTALL=tools/install.sh to lessen the need for xinstall.host.
This both avoids some dependencies on xinstall.host and allows bootstrapping on older releases to work due to lack of at least 'install -l' support.
Sponsored by: EMC / Isilon Storage Division
|
289362 |
15-Oct-2015 |
mav |
MFV r289312: 2605 want to resume interrupted zfs send
Reviewed by: George Wilson <george.wilson@delphix.com> Reviewed by: Paul Dagnelie <pcd@delphix.com> Reviewed by: Richard Elling <Richard.Elling@RichardElling.com> Reviewed by: Xin Li <delphij@freebsd.org> Reviewed by: Arne Jansen <sensille@gmx.net> Approved by: Dan McDonald <danmcd@omniti.com> Author: Matthew Ahrens <mahrens@delphix.com>
illumos/illumos-gate@9c3fd1216fa7fb02cfbc78a2518a686d54b48ab8
For more info, see: - slides http://www.slideshare.net/MatthewAhrens/openzfs-send-and-receive - video https://www.youtube.com/watch?v=iY44jPMvxog - manpage changes (for zfs resume -s and zfs send -t) - upcoming talk at the OpenZFS Developer Summit
The TL;DR is: Use "zfs receive -s" to save the partially received state on failure. On failure, get the receive token with "zfs get receive_resume_token <fs>" Resume the send with "zfs send -t <token_value>"
Relnotes: yes
|
289172 |
12-Oct-2015 |
ngie |
Refactor the test/ Makefiles after recent changes to bsd.test.mk (r289158) and netbsd-tests.test.mk (r289151)
- Eliminate explicit OBJTOP/SRCTOP setting - Convert all ad hoc NetBSD test integration over to netbsd-tests.test.mk - Remove unnecessary TESTSDIR setting - Use SRCTOP where possible for clarity
MFC after: 2 weeks Sponsored by: EMC / Isilon Storage Divison
|
287971 |
18-Sep-2015 |
bdrewery |
Use FILES for installing the dtrace scripts.
The BSD.usr.dist mtree always creates /usr/lib/dtrace so there is no need to check if it exists.
The FILES mechanism already supports LIBRARIES_ONLY.
Sponsored by: EMC / Isilon Storage Division
|
287807 |
15-Sep-2015 |
markj |
Remove an unneeded typedef of ip6_t from the DTrace ip provider library. It causes an error when ipfilter is enabled, since ipl.ko contains an identical typedef.
PR: 203092 MFC after: 1 week
|
287759 |
13-Sep-2015 |
gnn |
dd DTrace probe points, translators and a corresponding script to provide the TCPDEBUG functionality with pure DTrace.
Reviewed by: rwatson MFC after: 2 weeks Sponsored by: Limelight Networks Differential Revision: D3530
|
287085 |
23-Aug-2015 |
imp |
Sparc64 is the odd-man out, so form the if that way rather than listing everybody else.
|
286420 |
07-Aug-2015 |
markj |
- Use an explicit "depends_on module kernel" guard in DTrace libraries that reference types defined in the kernel. Otherwise dtrace(1) expects to find CTF definitions for all referenced types, which is not very reasonable when it is being used in a build environment. This was previously worked around by adding "-x nolibs" to dtrace -h or -G invocations, but as of r283025, dtrace(1) actually handles dependencies properly, so this is no longer necessary. - Remove "pragma ident" directives from DTrace libraries, as they're being phased out upstream as well.
Submitted by: Krister Johansen <Krister.Johansen@isilon.com> [1] MFC after: 1 week Sponsored by: EMC / Isilon Storage Division > Description of fields to fill in above: 76 columns --| > PR: If a GNATS PR is affected by the change. > Submitted by: If someone else sent in the change. > Reviewed by: If someone else reviewed your modification. > Approved by: If you needed approval for this commit. > Obtained from: If the change is from a third party. > MFC after: N [day[s]|week[s]|month[s]]. Request a reminder email. > MFH: Ports tree branch name. Request approval for merge. > Relnotes: Set to 'yes' for mention in release notes. > Security: Vulnerability reference (one per line) or description. > Sponsored by: If the change was sponsored by an organization. > Differential Revision: https://reviews.freebsd.org/D### (*full* phabric URL needed). > Empty fields above will be automatically removed.
M libdtrace/io.d M libdtrace/ip.d M libdtrace/nfs.d M libdtrace/nfssrv.d M libdtrace/psinfo.d M libdtrace/regs_x86.d M libdtrace/sched.d M libdtrace/siftr.d M libdtrace/tcp.d M libdtrace/udp.d
|
285339 |
09-Jul-2015 |
oshogbo |
Rename zfs nvpair files to not colidate with our nvlist.
PR: 201356 Approved by: pjd (mentor)
|
285009 |
01-Jul-2015 |
br |
First cut of DTrace for AArch64.
Reviewed by: andrew, emaste Sponsored by: ARM Limited Differential Revision: https://reviews.freebsd.org/D2738
|
284421 |
15-Jun-2015 |
bapt |
Revert r284417 it is not necessary anymore
|
284417 |
15-Jun-2015 |
bapt |
Enforce overwritting SHLIBDIR
Since METAMODE has been added, sys.mk loads bsd.mkopt.mk which ends load loading bsd.own.mk which then defines SHLIBDIR before all the Makefile.inc everywhere.
This makes /lib being populated again.
Reported by: many
|
284409 |
15-Jun-2015 |
bapt |
Fix circular dependency between libzfs and libzfs_core
libzfs_core is the wrapper around kernel ioctls, the ioctl compat code belongs to it
|
284345 |
13-Jun-2015 |
sjg |
Add META_MODE support.
Off by default, build behaves normally. WITH_META_MODE we get auto objdir creation, the ability to start build from anywhere in the tree.
Still need to add real targets under targets/ to build packages.
Differential Revision: D2796 Reviewed by: brooks imp
|
283145 |
20-May-2015 |
ngie |
Add dependencies for libzfs_core and libzpool I missed on my first pass on this Makefile
MFC with: r283144 Sponsored by: EMC / Isilon Storage Division
|
283144 |
20-May-2015 |
ngie |
Articulate dependencies for cddl/lib/libdtrace and cddl/lib/libzfs
Parallelize the build in this subdirectory
MFC after: 1 week Sponsored by: EMC / Isilon Storage Division
|
283133 |
19-May-2015 |
bapt |
Correctly link libdtrace and convert to LIBADD Make dtrace only link to libdtrace
|
283027 |
17-May-2015 |
markj |
Actually remove siftr-related definitions from tcp.d, missed in r283026.
|
283026 |
17-May-2015 |
markj |
Move siftr-related definitions out of tcp.d and into a separate library which declares a dependency on siftr(4). This is necessitated by a reference to struct pkt_node, which is defined in siftr(4): otherwise, dtrace(1) will return an error during startup if siftr.ko is not loaded.
|
282240 |
29-Apr-2015 |
gnn |
Brief demo script showing the various values that can be read via the new SIFTR statically defined tracepoint (SDT).
Differential Revision: https://reviews.freebsd.org/D2387 Reviewed by: bz, markj
|
281257 |
08-Apr-2015 |
markj |
libdtrace: add support for lazyload mode.
Passing "-x lazyload" to dtrace -G during compilation causes dtrace(1) to not link drti.o into the output object file, so the USDT probes are not created during process startup. Instead, dtrace(1) will automatically discover and create probes on the process' behalf when attaching.
Differential Revision: https://reviews.freebsd.org/D2203 Reviewed by: rpaulo MFC after: 1 month
|
278529 |
10-Feb-2015 |
gnn |
Initial version of DTrace on ARM32.
Submitted by: Howard Su based on work by Oleksandr Tymoshenko Reviewed by: ian, andrew, rpaulo, markj
|
275592 |
08-Dec-2014 |
markj |
MFV r272851:
5202 want ctf(4)
illumos/illumos-gate@fe2e029eea29fd49d0d9058dbd5b79a252667e6b
|
275552 |
06-Dec-2014 |
delphij |
MFV r260710 + 275532:
Add a new method, nvlist_print_json to allow libnvpair to emit JSON.
MFC after: 1 month
|
273370 |
21-Oct-2014 |
markj |
Correct the calculation of tcps_rto in the struct tcpcb -> tcpsinfo_t translator.
Submitted by: Grenville Armitage <garmitage@swin.edu.au> MFC after: 1 week
|
273293 |
19-Oct-2014 |
gnn |
Update the TCP structure used by DTrace to show the smoothed RTT. This will allow similar functionality to SIFTR to be built with DTrace.
Submitted by: Grenville Armitage MFC after: 2 weeks
|
272488 |
03-Oct-2014 |
markj |
Hook up support for userland CTF support in DTrace. This required some modifications to libproc to support fetching the CTF info for a given file.
With this change, dtrace(1) is able to resolve type info for function and USDT probe arguments, and function return values. In particular, the args[n] syntax should now work for referencing arguments of userland probes, provided that the requisite CTF info is available.
The uctf tests pass if the test programs are compiled with CTF info. The current infrastructure around the DTrace test suite doesn't support this yet.
Differential Revision: https://reviews.freebsd.org/D891 MFC after: 1 month Relnotes: yes Sponsored by: EMC / Isilon Storage Division
|
272484 |
03-Oct-2014 |
delphij |
Add dependencies to various libraries to libzfs and libzpool.
Submitted by: sef
|
272208 |
27-Sep-2014 |
delphij |
Revert r272189, the committed version was an old version and breaks build.
Pointy hat to: delphij
|
272189 |
26-Sep-2014 |
delphij |
Add libuutil to dependency list.
Noticed by: sef MFC after: 3 days
|
270358 |
22-Aug-2014 |
delphij |
Make DTrace stuff compile with C99 standard.
|
268351 |
07-Jul-2014 |
marcel |
Remove ia64.
This includes: o All directories named *ia64* o All files named *ia64* o All ia64-specific code guarded by __ia64__ o All ia64-specific makefile logic o Mention of ia64 in comments and documentation
This excludes: o Everything under contrib/ o Everything under crypto/ o sys/xen/interface o sys/sys/elf_common.h
Discussed at: BSDcan
|
267940 |
26-Jun-2014 |
rpaulo |
Add stubs for CTF functions which are not yet implemented.
MFC after: 2 weeks
|
266520 |
22-May-2014 |
delphij |
Explicitly link libzfs against libavl as it is done in OpenSolaris (4543:12bb2876a62e). Without this, some third party applications may break because the lack of AVL related symbols.
FreeBSD base system are not affected because the FreeBSD ZFS command line tools were all linked against libavl and thus hide the underlying issue.
PR: java/183081 Tested by: jkim MFC after: 3 days
|
266082 |
14-May-2014 |
markj |
Bind ip/tcp/udp provider translators and symbols to the same versions as in illumos, rather than using "1.0" everywhere.
Some of the translators use D functions that are not present in version 1.0 (e.g. inet_ntoa()) which can result in libdtrace crashing when running scripts that restrict themselves to version 1.0 (e.g. with "-x version=1.0").
MFC after: 1 week
|
265689 |
08-May-2014 |
mav |
Import adapted OpenSolaris' thread pool API implementation.
The thread pool is used by libzfs to implement parallel disk scanning. Without this change our dummy wrapper made `zpool import ZZZ` command to scan all disks sequentially from the single thread when searching for pools. This change makes it use two threads per CPU, same as in OpenSolaris.
On system with 200 HDDs this change reduces ZFS pool import time from 35 to 22 seconds.
|
265420 |
06-May-2014 |
imp |
Use src.opts.mk in preference to bsd.own.mk except where we need stuff from the latter.
|
265309 |
04-May-2014 |
markj |
Remove a duplicate definition.
MFC after: 3 days
|
264928 |
25-Apr-2014 |
imp |
Spell NO_PROFILE= as MK_PROFILE=no.
|
264741 |
21-Apr-2014 |
jmmv |
Add placeholder Kyuafiles for various top-level hierarchies.
This change adds tests/ directories in the source tree to create various subdirectories in /usr/tests/ and to install placeholder Kyuafiles for them.
the relevant hierarchies are: cddl, etc, games, gnu and secure.
The reason for this is to simplify the addition of new test programs for utilities or libraries under any of these directories. Doing so on a case by case basis is unnecessary and is quite an obscure process.
|
262811 |
05-Mar-2014 |
jmg |
mark that libctf depends upon libz so that if you dlopen libctf, you don't get: Undefined symbol "zError"
|
262542 |
27-Feb-2014 |
markj |
Move some files that are identical on i386 and amd64 to an x86 subdirectory rather than keeping duplicate copies.
Discussed with: avg MFC after: 1 week
|
257647 |
04-Nov-2013 |
sbruno |
spelling in comments fixup
Submitted by: Joerg Sonnenberger <joerg@britannica.bec.de>
|
257592 |
03-Nov-2013 |
sbruno |
This library uses macros to define fprintf behvavior for several object types The compiler will see the non-string literal arguments to the fprintf calls and omit warnings for them. Quiese these warnings in contrib code:
cddl/contrib/opensolaris/lib/libnvpair/libnvpair.c:743:12: warning: format string is not a string literal (potentially insecure) [-Wformat-security] ARENDER(pctl, nvlist_array, nvl, name, val, nelem);
|
256571 |
16-Oct-2013 |
markj |
Add a function, memstr, which can be used to convert a buffer of null-separated strings to a single string. This can be used to print the full arguments of a process using execsnoop (from the DTrace toolkit) or with the following one-liner:
dtrace -n 'syscall::execve:return {trace(curpsinfo->pr_psargs);}'
Note that this relies on the process arguments being cached via the struct proc, which means that it will not work for argvs longer than kern.ps_arg_cache_limit. However, the following rather non-portable script can be used to extract any argv at exec time:
fbt::kern_execve:entry { printf("%s", memstr(args[1]->begin_argv, ' ', args[1]->begin_envv - args[1]->begin_argv)); }
The debug.dtrace.memstr_max sysctl limits the maximum argument size to memstr(). Thanks to Brendan Gregg for helpful comments on freebsd-dtrace.
Tested by: Fabian Keil (earlier version) MFC after: 2 weeks
|
255993 |
02-Oct-2013 |
markj |
Add a separate translator for headers passed to the TCP probes in the input path. These probes get some of the fields in host order, whereas the output probes get them in network order, so a single translator isn't enough. This workaround ensures that the problem is essentially invisble to users: none of the probe arguments or their fields have changed.
Approved by: re (hrs)
|
255604 |
15-Sep-2013 |
markj |
Use the address of the inpcb rather than the tcpcb to identify TCP connections. This keeps the tcp provider consistent with the other network providers.
Approved by: re (delphij)
|
254949 |
27-Aug-2013 |
will |
Build all ZFS testing & debugging tools with -g.
These programs and everything using libzpool rely on the embedded asserts to verify the correctness of operations. Given that, the core dumps would be useless without debug symbols.
|
254889 |
25-Aug-2013 |
markj |
Implement the ip, tcp, and udp DTrace providers. The probe definitions use dynamic translation so that their arguments match the definitions for these providers in Solaris and illumos. Thus, existing scripts for these providers should work unmodified on FreeBSD.
Tested by: gnn, hiren MFC after: 1 month
|
250574 |
12-May-2013 |
markj |
Bring back part of r249367 by adding DTrace's temporal option, which allows users to guarantee that the output of DTrace scripts will be time-ordered. This option is enabled by adding the line
#pragma D option temporal
to the beginning of a script, or by adding '-x temporal' to the arguments of dtrace(1).
This change fixes a bug in the original port of the temporal option. This bug was causing some assertions to fail, so they had been disabled; in this revision the assertions are working properly and are enabled.
The DTrace version number has been bumped from 1.9.0 to 1.9.1 to reflect the language change that's being introduced.
This change corresponds to part of illumos-gate commit e5803b76927480: 3021 option for time-ordered output from dtrace(1M)
Reviewed by: pfg Obtained from: illumos MFC after: 1 month
|
250337 |
07-May-2013 |
brooks |
Work around the implementation of LIBRARIES_ONLY. It causes drti.o to not be installed in /usr/lib32 on systems with compat-32 support.
This fix has two parts. First, the build is forced by linking drti.o into a dummy internal library. Second, the object file is installed manually in the LIBRARIES_ONLY case.
MFC after: 3 days
|
249600 |
18-Apr-2013 |
pfg |
DTrace: NFS translators should be split into client/server pieces
Belatedly update the provider with changes from OpenSolaris:
PSARC 2008/050 DTrace NFS v3 Provider 6696397 NFS v3 provider reports all UDP clients as 0.0.0.0 6711844 assert: vp->v_shrlocks
Obtained from: Illumos
|
249573 |
17-Apr-2013 |
pfg |
DTrace: Revert r249367
The following change from illumos brought caused DTrace to pause in an interactive environment:
3026 libdtrace should set LD_NOLAZYLOAD=1 to help the pid provider
This was not detected during testing because it doesn't affect scripts.
We shouldn't be changing the environment, especially since the LD_NOLAZYLOAD option doesn't apply to our (GNU) ld. Unfortunately the change from upstream was made in such a way that it is very difficult to separate this change from the others so, at least for now, it's better to just revert everything.
Reference: https://www.illumos.org/issues/3026
Reported by: Navdeep Parhar and Mark Johnston
|
249526 |
15-Apr-2013 |
pfg |
DTrace: NFS translators should be split into client/server pieces
Merge change from illumos:
1731 DTrace NFS translators should be split into client/server pieces
Illumos Revision: 13523:6763769941d2
This code seems to be currently unused on FreeBSD.
Reference: https://www.illumos.org/issues/1731
Obtained from: Illumos MFC after: 1 week
|
249367 |
11-Apr-2013 |
pfg |
DTrace: option for time-ordered output
Merge changes from illumos:
3021 option for time-ordered output from dtrace(1M) 3022 DTrace: keys should not affect the sort order when sorting by value 3023 it should be possible to dereference dynamic variables 3024 D integer narrowing needs some work 3025 register leak in D code generation 3026 libdtrace should set LD_NOLAZYLOAD=1 to help the pid provider
This brings yet another feature implemented in upstream DTrace. A complete description is available here: http://dtrace.org/blogs/ahl/2012/07/28/my-new-dtrace-favorite/
This change bumps the DT_VERS_* number to 1.9.1 in accordance to what is done in illumos.
This change was somewhat complicated because upstream is mixed many changes in an individual commit and some of the tests don't really apply to us.
There are also appear to be differences in timestamping with Solaris so we had to workaround some assertions making sure no regression happened.
Special thanks to Fabian Keil for changes and testing.
Illumos Revisions: 13758:23432da34147
Reference: https://www.illumos.org/issues/3021 https://www.illumos.org/issues/3022 https://www.illumos.org/issues/3023 https://www.illumos.org/issues/3024 https://www.illumos.org/issues/3025 https://www.illumos.org/issues/1694
Tested by: Fabian Keil Obtained from: Illumos MFC after: 1 months
|
248846 |
28-Mar-2013 |
gnn |
Revert previous change in favor of a fix to the actual dtrace libraries that addresses a #pragma issue.
|
248845 |
28-Mar-2013 |
gnn |
Remove dependency code that caused a double inclusion.
Pointed out by: rpaulo and others
|
248708 |
25-Mar-2013 |
pfg |
Dtrace: Add SUN MDB-like type-aware print() action.
Merge change from illumos:
1694 Add type-aware print() action
This is a very nice feature implemented in upstream Dtrace. A complete description is available here: http://dtrace.org/blogs/eschrock/2011/10/26/your-mdb-fell-into-my-dtrace/
This change bumps the DT_VERS_* number to 1.9.0 in accordance to what is done in illumos.
While here also include some minor cleanups to ease further merging and appease clang with a fix by Fabian Keil.
Illumos Revisions: 13501:c3a7090dbc16 13483:f413e6c5d297
Reference: https://www.illumos.org/issues/1560 https://www.illumos.org/issues/1694
Tested by: Fabian Keil Obtained from: Illumos MFC after: 1 month
|
248571 |
21-Mar-2013 |
mm |
Merge libzfs_core branch: includes MFV 238590, 238592, 247580
MFV 238590, 238592: In the first zfs ioctl restructuring phase, the libzfs_core library was introduced. It is a new thin library that wraps around kernel ioctl's. The idea is to provide a forward-compatible way of dealing with new features. Arguments are passed in nvlists and not random zfs_cmd fields, new-style ioctls are logged to pool history using a new method of history logging.
http://blog.delphix.com/matt/2012/01/17/the-future-of-libzfs/
MFV 247580 [1]: To address issues of several deadlocks and race conditions the locking code around dsl_dataset was rewritten and the interface to synctasks was changed.
User-Visible Changes: "zfs snapshot" can create more arbitrary snapshots at once (atomically) "zfs destroy" destroys multiple snapshots at once "zfs recv" has improved performance
Backward Compatibility: I have extended the compatibility layer to support full backward compatibility by remapping or rewriting the responsible ioctl arguments. Old utilities are fully supported by the new kernel module.
Forward Compatibility: New utilities work with old kernels with the following restrictions: - creating, destroying, holding and releasing of multiple snapshots at once is not supported, this includes recursive (-r) commands
Illumos ZFS issues: 2882 implement libzfs_core 2900 "zfs snapshot" should be able to create multiple, arbitrary snapshots at once 3464 zfs synctask code needs restructuring
References: https://www.illumos.org/issues/2882 https://www.illumos.org/issues/2900 https://www.illumos.org/issues/3464 [1]
MFC after: 1 month Sponsored by: Hybrid Logic Inc. [1]
|
245561 |
17-Jan-2013 |
brooks |
Add a new LIBRARIES_ONLY make variable to disable the build and install of files other than the actual libraries.
Use LIBRARIES_ONLY to supress the inclusion of files in the lib32 distribution that are duplicates of files in base.
Sponsored by: DARPA, AFRL Reviewed by: emaste
|
242723 |
07-Nov-2012 |
jhibbits |
Implement DTrace for PowerPC. This includes both 32-bit and 64-bit.
There is one known issue: Some probes will display an error message along the lines of: "Invalid address (0)"
I tested this with both a simple dtrace probe and dtruss on a few different binaries on 32-bit. I only compiled 64-bit, did not run it, but I don't expect problems without the modules loaded. Volunteers are welcome.
MFC after: 1 month
|
240868 |
23-Sep-2012 |
pjd |
Add TRIM support.
The code builds a map of regions that were freed. On every write the code consults the map and eventually removes ranges that were freed before, but are now overwritten.
Freed blocks are not TRIMed immediately. There is a tunable that defines how many txg we should wait with TRIMming freed blocks (64 by default).
There is a low priority thread that TRIMs ranges when the time comes. During TRIM we keep in-flight ranges on a list to detect colliding writes - we have to delay writes that collide with in-flight TRIMs in case something will be reordered and write will reached the disk before the TRIM. We don't have to do the same for in-flight writes, as colliding writes just remove ranges to TRIM.
Sponsored by: multiplay.co.uk
This work includes some important fixes and some improvements obtained from the zfsonlinux project, including TRIMming entire vdevs on pool create/add/attach and on pool import for spare and cache vdevs.
Obtained from: zfsonlinux Submitted by: Etienne Dechamps <etienne.dechamps@ovh.net>
|
240415 |
12-Sep-2012 |
mm |
Merge recent zfs vendor changes, sync code and adjust userland DEBUG.
Illumos issued covered: 1884 Empty "used" field for zfs *space commands 3006 VERIFY[S,U,P] and ASSERT[S,U,P] frequently check if first argument is zero 3028 zfs {group,user}space -n prints (null) instead of numeric GID/UID 3048 zfs {user,group}space [-s|-S] is broken 3049 zfs {user,group}space -t doesn't really filter the results 3060 zfs {user,group}space -H output isn't tab-delimited 3061 zfs {user,group}space -o doesn't use specified fields order 3064 usr/src/cmd/zpool/zpool_main.c misspells "successful" 3093 zfs {user,group}space's -i is noop 3098 zfs userspace/groupspace fail without saying why when run as non-root
References: https://www.illumos.org/issues/ + [issue_id]
Obtained from: illumos (vendor/illumos, vendor/illumos-sys) MFC after: 2 weeks
|
239972 |
01-Sep-2012 |
rpaulo |
Finish porting execsnoop to FreeBSD. This includes replacing the zonename with a jail ID and removing the project ID from the list of options.
|
238926 |
30-Jul-2012 |
mm |
Partial MFV (illumos-gate 13753:2aba784c276b) 2762 zpool command should have better support for feature flags
References: https://www.illumos.org/issues/2762
MFC after: 2 weeks
|
238366 |
11-Jul-2012 |
gnn |
Initial commit of an I/O provider for DTrace on FreeBSD.
These probes are most useful when looking into the structures they provide, which are listed in io.d. For example:
dtrace -n 'io:genunix::start { printf("%d\n", args[0]->bio_bcount); }'
Note that the I/O systems in FreeBSD and Solaris/Illumos are sufficiently different that there is not a 1:1 mapping from scripts that work with one to the other. MFC after: 1 month
|
236884 |
11-Jun-2012 |
mm |
Introduce "feature flags" for ZFS pools (bump SPA version to 5000). Add first feature "com.delphix:async_destroy" (asynchronous destroy of ZFS datasets). Implement features support in ZFS boot code.
Illumos revisions merged: 13700:2889e2596bd6 13701:1949b688d5fb 2619 asynchronous destruction of ZFS file systems 2747 SPA versioning with zfs feature flags
References: https://www.illumos.org/issues/2619 https://www.illumos.org/issues/2747
Obtained from: illumos (issue #2619, #2747) MFC after: 1 month
|
236628 |
05-Jun-2012 |
gnn |
Add DTrace's io.d, which handles tranlsations for file, buffer and device info structures as well as the fds[] array. This is a raw version of the file, unmodified, to be used as a baseline.
|
233415 |
24-Mar-2012 |
gonzo |
Enable build of DTrace-related userland parts for MIPS
|
228103 |
28-Nov-2011 |
mm |
Merge new ZFS features from illumos:
1644 add ZFS "clones" property https://www.illumos.org/issues/1644
1645 add ZFS "written" and "written@..." properties https://www.illumos.org/issues/1645
1646 "zfs send" should estimate size of stream https://www.illumos.org/issues/1646
1647 "zfs destroy" should determine space reclaimed by destroying multiple snapshots https://www.illumos.org/issues/1647
1693 persistent 'comment' field for a zpool https://www.illumos.org/issues/1693
1708 adjust size of zpool history data https://www.illumos.org/issues/1708
1748 desire support for reguid in zfs https://www.illumos.org/issues/1748
Obtained from: illumos (changesets 13514, 13524, 13525) MFC after: 1 month
|
228057 |
28-Nov-2011 |
rwatson |
Change the Makefile in cddl/lib/drti to use bsd.lib.mk instead of bsd.prog.mk -- we need to compile PIC, which requires a library build. With this change, USDT (userspace DTrace probes) work from within shared libraries.
PR: kern/159046 Submitted by: Alex Samorukov <samm at os2.kiev.ua> Comments by: Scott Lystig Fritchie <slfritchie at snookles.com> MFC after: 3 days
|
226940 |
30-Oct-2011 |
rmh |
Fix a few gratuitous library dependencies. Some of the ZFS utilities are linked with libraries they don't use:
- zinject doesn't use libavl - ztest doesn't use libz - zdb uses neither libavl nor libz - zfs uses neither libbsdxml nor libm, nor libsbuf - zpool uses neither libbsdxml nor libm, nor libsbuf
In addition, libzfs needs libm because it uses pow(), however it isn't linked with -lm. This went unnoticed because all its users had -lm before.
Reviewed by: pjd, mm Approved by: kib (mentor) MFC after: 1 week
|
219089 |
27-Feb-2011 |
pjd |
Finally... Import the latest open-source ZFS version - (SPA) 28.
Few new things available from now on:
- Data deduplication. - Triple parity RAIDZ (RAIDZ3). - zfs diff. - zpool split. - Snapshot holds. - zpool import -F. Allows to rewind corrupted pool to earlier transaction group. - Possibility to import pool in read-only mode.
MFC after: 1 month
|
218725 |
15-Feb-2011 |
dim |
When building libzpool on ia64 or sparc64, don't add the .note.GNU-stack section.
Submitted by: kib
|
218723 |
15-Feb-2011 |
dim |
Fix some leftover binaries and shared libraries in the system that still have an executable stack, due to linking in hand-assembled .S or .s files, that have no .GNU-stack sections:
RWX --- --- /lib/libcrypto.so.6 RWX --- --- /lib/libmd.so.5 RWX --- --- /lib/libz.so.6 RWX --- --- /lib/libzpool.so.2 RWX --- --- /usr/lib/liblzma.so.5
These were found using scanelf, from the sysutils/pax-utils port.
Reviewed by: kib
|
214430 |
27-Oct-2010 |
rpaulo |
Use ${PICFLAG} instead of -fpic.
|
211725 |
23-Aug-2010 |
imp |
MFtbemd:
Prefer MACHNE_CPUARCH to MACHINE_ARCH in most contexts where you want to test of all the CPUs of a given family conform.
|
211722 |
23-Aug-2010 |
marius |
Use real atomic operations for sparc64.
MFC after: 1 week
|
211707 |
23-Aug-2010 |
nwhitehorn |
Add powerpc64 to the list of architectures with real atomic operations.
Submitted by: imp
|
211577 |
21-Aug-2010 |
rpaulo |
Don't link drti.o with libelf_pic.a. This means that all software with userland SDT probes must be linked with libelf explicitly.
Requested by: kib Sponsored by: The FreeBSD Foundation
|
211561 |
21-Aug-2010 |
rpaulo |
Link drti.o with a PIC version of libelf. This is needed because drti.o depends on libelf and this avoids linking every other drti.o program (namely programs with USDT probes) with libelf.
Sponsored by: The FreeBSD Foundation
|
211554 |
21-Aug-2010 |
rpaulo |
Add libdtrace support for tracing userland programs.
Summary of changes: * Implement a compatibility shim between Solaris libproc and our libproc and remove several ifdefs because of this. * Port the drti to FreeBSD. * Implement the missing DOODAD sections * Link with libproc and librtld_db * Support for ustack, jstack and uregs (by sson@) * Misc bugfixing
When writing the SUWN_dof section, we had to resort to building the ELF file layout by "hand". This is the job of libelf, but our libelf doesn't support this yet. When libelf is fixed, we can remove the code under #ifdef BROKEN_LIBELF.
Sponsored by: The FreeBSD Foundation
|
211550 |
21-Aug-2010 |
rpaulo |
Use double quotes when checking the value of MACHINE_ARCH.
Sponsored by: The FreeBSD Foundation
|
211547 |
21-Aug-2010 |
rpaulo |
The DTrace instrumentation object is going to be i386/amd64 only.
Sponsored by: The FreeBSD Foundation
|
210693 |
31-Jul-2010 |
rpaulo |
libdtrace, dtrace(1) and lockstat(1) are for i386 and amd64 only right now.
Sponsored by: The FreeBSD Foundation
|
204597 |
02-Mar-2010 |
uqs |
Remove manual .includes in cddl Makefiles
- Break the dependency on ../Makefile.inc for .PATH, and include ../Makefile.inc implicitly. This is required to ... - Set WARNS?=6 in top-level Makefile.inc - Remove now redundant WARNS settings, add WARNS?=0 where appropriate - Remove redundant SHLIB_MAJOR overrides - Use NO_MAN, not MK_MAN=no - Remove redundant inclusion of bsd.own.mk - Order Makefiles more according to style.Makefile(9) - Reduce diff of cddl Makefiles against each other
No objection: pjd Approved by: ed (co-mentor)
|
196289 |
17-Aug-2009 |
pjd |
Remove files that are no longer used.
Discussed with: kmacy Approved by: re (kib)
|
195767 |
19-Jul-2009 |
kensmith |
Bump the version of all non-symbol-versioned shared libraries in preparation for 8.0-RELEASE. Add the previous version of those libraries to ObsoleteFiles.inc and bump __FreeBSD_Version.
Reviewed by: kib Approved by: re (rwatson)
|
191933 |
09-May-2009 |
kmacy |
atomic.S has been renamed opensolaris_atomic.S to avoid collisions
|
189801 |
14-Mar-2009 |
rdivacky |
Switch over to gnu99 compilation on default for userland.
Tested by: make universe Tested by: ports exp build (done by pav) Reviewed by: ru Reviewed by: silence on arch Approved by: ed (mentor)
|
185029 |
17-Nov-2008 |
pjd |
Update ZFS from version 6 to 13 and bring some FreeBSD-specific changes.
This bring huge amount of changes, I'll enumerate only user-visible changes:
- Delegated Administration
Allows regular users to perform ZFS operations, like file system creation, snapshot creation, etc.
- L2ARC
Level 2 cache for ZFS - allows to use additional disks for cache. Huge performance improvements mostly for random read of mostly static content.
- slog
Allow to use additional disks for ZFS Intent Log to speed up operations like fsync(2).
- vfs.zfs.super_owner
Allows regular users to perform privileged operations on files stored on ZFS file systems owned by him. Very careful with this one.
- chflags(2)
Not all the flags are supported. This still needs work.
- ZFSBoot
Support to boot off of ZFS pool. Not finished, AFAIK.
Submitted by: dfr
- Snapshot properties
- New failure modes
Before if write requested failed, system paniced. Now one can select from one of three failure modes: - panic - panic on write error - wait - wait for disk to reappear - continue - serve read requests if possible, block write requests
- Refquota, refreservation properties
Just quota and reservation properties, but don't count space consumed by children file systems, clones and snapshots.
- Sparse volumes
ZVOLs that don't reserve space in the pool.
- External attributes
Compatible with extattr(2).
- NFSv4-ACLs
Not sure about the status, might not be complete yet.
Submitted by: trasz
- Creation-time properties
- Regression tests for zpool(8) command.
Obtained from: OpenSolaris
|
179189 |
22-May-2008 |
jb |
Add the DTrace libraries and D library scripts.
|
177714 |
29-Mar-2008 |
ru |
Remove options MK_LIBKSE and DEFAULT_THREAD_LIB now that we no longer build libkse. This should fix WITHOUT_LIBTHR builds as a side effect.
|
177674 |
27-Mar-2008 |
jb |
The sources covered by Sun's CDDL have been repo copied below the src/cddl and src/sys/cddl directories per the core@ decision following the license review.
This change modifies the affected Makefiles to reference the sources in their new location.
|
174059 |
28-Nov-2007 |
jb |
Remove _SOLARIS_C_SOURCE now that it doesn't do anything in FreeBSD headers. All OpenSolaris compatibility comes via the set of specific compatibility headers in src/compat/opensolaris and src/sys/compat/opensolaris.
|
172500 |
09-Oct-2007 |
obrien |
Tweak the handling of "WITHOUT_LIBPTHREAD". Also remove the accidental treatment of 'LIBKSE' as an "old style" knob.
Submitted by: ru Approved by: re(kensmith)
|
172491 |
09-Oct-2007 |
obrien |
Repo copy libpthreads to libkse. This introduces the WITHOUT_LIBKSE nob, and changes WITHOUT_LIBPTHREADS to mean with neither threading libs. Approved by: re(kensmith)
|
172404 |
01-Oct-2007 |
ru |
Don't build bits that depend on the pthreads support if a system was configured without such support.
Approved by: re (kensmith)
|
170431 |
08-Jun-2007 |
pjd |
- Reduce number of atomic operations needed to be implemented in asm by implementing some of them using existing ones. - Allow to compile ZFS on all archs and use atomic operations surrounded by global mutex on archs we don't have or can't have all atomic operations needed by ZFS.
|
169303 |
06-May-2007 |
pjd |
Use provider's ident to handle situations when disks are moved around and show up with different names: first try to open provider using remembered name and compare its ident, if equal, this is our provider, if not equal or there is no provider with such name, find provider with remembered ident and don't care about the name.
|
168818 |
17-Apr-2007 |
pjd |
Link libzpool, ztest and zdb against libpthread.
Requested by: ru
|
168792 |
16-Apr-2007 |
ru |
Apply a set of style.Makefile(5) changes to src/cddl/ makefiles. There are some insignificant non-style changes as well.
Not fixed: makefiles use ${LIBTHR} that doesn't exist, thus breaking "make checkdpadd" and not tracking dependencies properly.
Approved by: pjd
|
168482 |
07-Apr-2007 |
pjd |
Move atomic.S files to directories that better fit OpenSolaris directory layout.
|
168475 |
07-Apr-2007 |
des |
Build ZFS on amd64 and pc98.
Approved by: pjd@
|
168404 |
06-Apr-2007 |
pjd |
Please welcome ZFS - The last word in file systems.
ZFS file system was ported from OpenSolaris operating system. The code in under CDDL license.
I'd like to thank all SUN developers that created this great piece of software.
Supported by: Wheel LTD (http://www.wheel.pl/) Supported by: The FreeBSD Foundation (http://www.freebsdfoundation.org/) Supported by: Sentex (http://www.sentex.net/)
|