Commit Graph

601 Commits

Author SHA1 Message Date
christos
91780cc76d hook drti 2016-02-28 19:10:10 +00:00
joerg
f247f26769 Make the default CPP path a list and check if they are access(2)able.
If no match is found, fallback to looking for cpp in PATH.
2016-02-24 21:11:34 +00:00
joerg
5e22f35b4d Keep the if chain going. 2016-02-21 13:33:47 +00:00
joerg
486516affa Clang 3.7 and newer provide the array size via DW_AT_count, not via
DW_AT_upper_bound. Recognize the former as well as the latter.
2016-02-20 23:09:03 +00:00
joerg
4fa4785fa4 Don't nuke input on errors, it makes debugging a nightmare. 2016-02-20 22:08:44 +00:00
joerg
f9442aa68f Shuffle include order to avoid missing free on glibc. 2016-02-20 21:50:02 +00:00
christos
604231c4f0 - don't barf if the object does not have DWARF debug data.
- bump size of types to 1K to avoid string overflow
(both are needed for the new elftoolchain).
2016-02-20 02:39:47 +00:00
joerg
b0b911ff3e Don't use #pragma weak to implicitly change argument types. 2016-02-19 19:25:59 +00:00
joerg
e9ae0934d6 dmu_objset_rename is an alias for dsl_dataset_rename, but differs in
constness of the first argument. Newer clang checks for this and
prohibits it, so just be consistent by constifying the latter.
2016-02-19 19:25:22 +00:00
christos
c628030d37 reduce ifdefs 2016-02-13 21:37:12 +00:00
joerg
66313330f0 SDT is not a disease. Use const consistently. 2016-02-06 18:19:59 +00:00
riastradh
8e1ee72c35 Need nbtool_config.h for __dead in tools. 2016-02-05 20:39:50 +00:00
riastradh
32e3d5d381 Need nbtools_config.h for __unused.
Fixes

.../src/tools/ctfmerge/../../external/cddl/osnet/dist/tools/ctf/common/list.c:73:47: error: expected ';', ',' or ')' before '__unused'
 list_defcmp(void *d1, void *d2, void *private __unused)
                                               ^~~~~~~~

on non-NetBSD systems, where <assert.h>, <stdlib.h>, <stdio.h>, and
<sys/types.h> don't define __unused.
2016-02-05 19:56:00 +00:00
roy
871759c0d7 Fix the actual issue rather than silencing the warning.
Thanks to gson@
2016-02-05 10:14:49 +00:00
roy
f4a5ac8842 Add -Wno-format-nonliteral 2016-02-04 21:26:48 +00:00
roy
5baa0e8c89 dtrace needs Wno-format-security for clang it seems. 2016-02-04 20:06:29 +00:00
roy
a118806971 Add some __printflike and __dead love. Init some structs fully. 2016-02-04 20:05:53 +00:00
roy
80df5a39da Fix build. 2016-02-04 18:47:14 +00:00
roy
440c6b2902 Mark more functions as __printflike and __dead. 2016-02-04 18:46:37 +00:00
roy
5e1375a115 Mark more functions as __dead. 2016-02-04 17:47:43 +00:00
roy
dd3d664f77 Disable -Wformat-nonliteral here to build. 2016-02-04 17:42:34 +00:00
roy
1e48e626cd More printflike and dead fixes. 2016-02-04 17:40:55 +00:00
roy
985adb8dc0 Fix printf formats and casts. 2016-02-04 17:27:32 +00:00
roy
b9ae60933c Correct a prior patch by moving __printflike marking from the .c files
to the .h ones.
2016-02-04 16:58:11 +00:00
roy
b31be80ab9 Mark __printflike and __dead. 2016-02-04 16:48:34 +00:00
roy
c29f38a653 Mark printflike functions as __printflike. 2016-02-04 15:23:29 +00:00
riz
c1e4fb302e Adapt getmajor and getminor signatures for NetBSD. 2016-02-03 17:50:12 +00:00
christos
efcb6e5b0c Split the opensolaris types into opentypes.h because linux includes
sysmacros.h from types.h and we can't interpose ourselves to define
the needed types otherwise.
Disable unused macros, get rid of __APPLE__
2016-02-01 02:12:55 +00:00
christos
d3b8f3fc89 prevent re-defines 2016-02-01 02:09:54 +00:00
christos
117f317b41 define it when we have vaddr_t exposed. 2016-01-31 06:15:39 +00:00
christos
73c5431c9d we don't keed page count in userland. 2016-01-31 05:31:28 +00:00
christos
aa2825fe7d only need pgcnt_t in kernel. 2016-01-31 05:21:53 +00:00
christos
d53e8ce2b1 don't link/depend on libpthread if we are a hostprog.
XXX: should be using -pthread instead?
2016-01-27 18:43:25 +00:00
christos
9a678359e4 sys/conf.h is a kernel only header 2016-01-24 22:00:53 +00:00
christos
ffeb8dbf4e Define _KERNTYPES for things that need it. 2016-01-23 21:22:45 +00:00
riastradh
d604e653d0 Omit spurious include of <sys/isa_defs.h> in dtrace tools build.
Fixes dtrace tools cross-build from architectures with no dtrace
support:

#   compile  libctf/ctf_create.lo
[...]
/export/anoncvs/src/tools/libctf/../../external/cddl/osnet/sys/sys/isa_defs.h:50:2: error: #error "architecture not supported"
 #error "architecture not supported"
  ^
2016-01-23 15:45:42 +00:00
christos
b41dd0142f We don't need to declare clock_gettime if we don't have it and we don't need
to __RENAME if we are not NetBSD.
2015-12-27 21:42:09 +00:00
christos
585cc407b7 Override roundup. 2015-12-27 21:40:21 +00:00
christos
da5e76ddef don't re-define __assert. 2015-12-27 21:39:34 +00:00
christos
81dbb529d3 add nbtool_config.h 2015-12-27 21:39:01 +00:00
christos
d941e4fe7e add return 2015-12-27 21:38:46 +00:00
joerg
08c2098fe3 Our time.h defines clock_gettime with assembler name after including
sys/time.h. The Solaris compat code in sys/time.h wants to use it in an
inline function, but misses a prototype (and the relabeling). As stopgap
for getting consistent defines of clock_gettime duplicate the prototype
here.
2015-12-21 13:28:39 +00:00
christos
952d11cd49 catch up with DIOCGPART -> DIOCGPARTINFO 2015-12-08 20:56:21 +00:00
pgoyette
82344b6ce9 When loading the module, if devsw_attach() fails, call dtrace_unload()
to undo the effects of dtrace_load().  And if dtrace_unload() fails,
panic (since we can't get the system back to its earlier stable state).

When unloading the module, call devsw_detach() first, to lock out any
new access.  Then call dtrace_unload().  If dgtrace_unload() fails,
reattach the devsw, and if that fails, panic.

Implements fixes described in PR kern/43032
2015-11-28 22:41:36 +00:00
riz
d39dd3ba38 Declare variables under the same conditions as their use. 2015-11-12 22:10:48 +00:00
christos
d4aeb196d8 make too many struct or union members non-fatal. 2015-10-21 13:43:49 +00:00
christos
4ace1867fc make this kind of work. 2015-10-07 02:22:29 +00:00
christos
ee7dd36d49 fix the remaining problem with pcinfo; the dtracetoolkit execsnoop script
works.
2015-10-07 00:35:23 +00:00
christos
5a472843c6 Adjust for NetBSD. 2015-10-07 00:34:37 +00:00
christos
8e6eeb3dcf almost fixed... Need to figure out what to do with curlwp. 2015-10-06 22:12:09 +00:00
riz
84d94196b6 Make this build for me. 2015-10-06 01:18:47 +00:00
christos
665d810b64 Start matching some of the field names to NetBSD's
XXX: needs work
2015-10-05 17:49:40 +00:00
christos
7948227e4f Arrange to install the dtrace files (some are broken, sets will need to be
fixed)
2015-10-05 17:49:10 +00:00
christos
4cea25895d load the kernel for NetBSD (for now) 2015-10-05 17:48:09 +00:00
christos
5fbaf483b1 Add definitions for uid_t and gid_t for NetBSD because we are screwing up
with the names in the kernel and the ctf sections end up having only __uid_t
and __gid_t.
2015-10-05 17:47:37 +00:00
christos
ea79cab59b put back module filename finding code. 2015-10-04 23:25:32 +00:00
riz
ee3b021d7b Restore some defines lost in last update, and don't include sys/cpuvar.h
MKDTRACE=yes now builds for arm platforms again.
2015-10-02 22:16:38 +00:00
riz
701e808f1d Update signature of unimplemented function to match prototype. 2015-10-02 22:15:18 +00:00
christos
aef619cb8a put back the DTRACE macros 2015-10-02 17:28:57 +00:00
christos
75a404098e we don't need any of this now. 2015-10-02 17:13:58 +00:00
christos
46b66d3b89 Merge conflicts 2015-10-02 17:13:32 +00:00
christos
d1b373115b Adapt to NetBSD modules and link set access.
XXX: We don't have an event system so that we can issue callback that
     will be run on construction or destruction to enable and disable probes
XXX: We don't have a way to use link_sets across modules properly.
2015-10-02 16:59:23 +00:00
riz
f2d2d6c3e9 Redo previous so as to not break non-arm MKDTRACE=yes builds. 2015-10-01 20:51:19 +00:00
riz
41784a61b4 Only declare 'ldn' where it's actually used. Fixes build on arm
with MKDTRACE=yes.
2015-10-01 19:45:37 +00:00
christos
c29d517558 Import the dtrace toolkit from FreeBSD; simple scripts such as dtruss work
unmodified. For others we'll need to add the missing probes and adjust.
This is not attached to the build.
2015-09-30 22:01:06 +00:00
christos
ae335351bb Add proc:::exit
XXX: I am going to kill that soon and make the providers register automagically
with linker sets. This can't scale.
2015-09-30 20:59:44 +00:00
christos
7264d1b96c recognize the proc provider as belonging to sdt 2015-09-30 20:59:13 +00:00
christos
35d37febae do the stack protector stuff like the other files. 2015-09-30 00:17:09 +00:00
christos
5a76c68ec9 detect dynamically if we need -e for echo 2015-09-29 23:50:52 +00:00
christos
85c412e566 - make the generated file rules depend on the source files
- hack for clang on Darwin
2015-09-29 23:50:17 +00:00
christos
ec4b0d739b for the endian macros don't use the _ names, Darwin does not define them. 2015-09-29 20:43:16 +00:00
christos
f651117f07 no other ctf program needs -lrt, why does this one? 2015-09-29 20:31:43 +00:00
christos
302f5a4b29 return an error for actions we don't understand. 2015-09-29 14:31:22 +00:00
wiz
ff1e46a1cb Remove reference to mdb(1). 2015-09-29 06:33:01 +00:00
wiz
f3752eafe8 Fix Dt. New sentence, new line. Fix xrefs.
Still leaves:
trailing Xref to mdb(1)
trailing Xref to libctf(3)
2015-09-28 22:00:26 +00:00
christos
431e9fd675 avoid compiler warnings 2015-09-26 03:32:17 +00:00
christos
3a8db65df5 catch up with unsigned long -> proc_breakpoint_t change. 2015-09-26 00:33:34 +00:00
christos
f94f34a53d include <sys/proc.h> explicitly for kthread_t 2015-09-24 19:55:00 +00:00
christos
bcf65cfcd7 %j needs uintmax_t not uintptr_t 2015-09-24 19:16:06 +00:00
christos
72494a1078 Add build stuff. 2015-09-24 14:36:54 +00:00
christos
5377c71070 use the alternate syscall names if available 2015-09-24 14:26:44 +00:00
christos
bae6f8e175 new from FreeBSD 2015-09-24 14:26:09 +00:00
christos
c0855460da sync with FreeBSD 2015-09-24 14:25:29 +00:00
christos
2cd1ca309f remove dup copies of code that we've moved to dev a long while ago 2015-09-24 14:23:39 +00:00
christos
26e9b7f568 sync with FreeBSD 2015-09-24 14:21:35 +00:00
christos
3745d9fb72 Sync with FreeBSD 2015-09-24 14:20:18 +00:00
christos
74f0118d99 sync with FreeBSD 2015-09-24 14:18:24 +00:00
christos
fbb8599f9a We have libproc now 2015-09-24 14:17:20 +00:00
christos
fe20ccddcc don't depend on the installed version of libz 2015-09-17 01:53:48 +00:00
christos
dce63dea1d no need for LIBDPLIBS here 2015-09-16 19:47:14 +00:00
christos
661f541135 libctf depends on libz 2015-09-15 18:38:41 +00:00
riz
3922b03876 include <sys/lwp.h> for curlwp. From ozaki-r. 2015-09-10 19:56:13 +00:00
chs
f047745321 reapply some fixes to make multi-threaded ctfmerge work
that were lost in the overzealous resync with freebsd.
remove the hacks which were applied to work around those problems.
2015-07-06 00:21:51 +00:00
riastradh
377d82d6de Fix dtrace module autoload. 2015-06-19 02:33:00 +00:00
christos
4f2f73389d don't re-define END() now that amd64 defines it 2015-05-18 14:41:41 +00:00
hannken
e10a32f7f7 Remove miscfs/syncfs and
- move the syncer into kern/vfs_subr.c.

- change the syncer to process the mountlist and VFS_SYNC as appropriate.

- use an API for mount points similiar to the API for vnodes:
  - vfs_syncer_add_to_worklist(struct mount *mp) to add
  - vfs_syncer_remove_from_worklist(struct mount *mp) to remove a mount.

No objections on tech-kern@
2015-05-06 15:57:07 +00:00
riastradh
3b3b3f4af1 Remove bogus size_t->int casts in uiomove. 2015-04-21 13:15:28 +00:00
riastradh
46e71c7d57 Make VOP_LINK return directory still locked and referenced.
Ride 7.99.10 bump.
2015-04-20 22:59:19 +00:00
riastradh
b733a5ddf4 Fix ASSERT(x == y | z). Interpret nthreads as pct when requested.
Reduces the number of threads created by zfs to a slightly less
insane value.

XXX This whole taskq business is questionable, and we really really
should not have copies of external code outside dist/ and without
vendor branches to record provenance and local changes.
2015-04-11 16:32:07 +00:00
riastradh
673259ae26 Make sure rl_t::r_zp is always initialized. 2015-04-11 04:35:39 +00:00
riastradh
b55bbee7a5 Skip Solaris ILP32 ABI compatibility shenanigans from upstream. 2015-04-11 03:23:37 +00:00
riastradh
364c6daba4 Remove broken shim for xdr_control. 2015-04-11 03:22:36 +00:00
riastradh
fceed56786 Use a static initializer, not a broken initializer. 2015-04-11 03:21:43 +00:00
riastradh
fc437ae95d Reduce diff from upstream a little. 2015-04-11 02:33:16 +00:00
riastradh
bb7c94d172 Nuke UIO_XUIO so nothing accidentally misuses it. 2015-04-11 01:49:00 +00:00
riastradh
e2baba0390 Disable another xuio branch. 2015-04-11 00:23:31 +00:00
riastradh
24d5ed1a0b Make taskq_dispatch fail for now with TQ_NOQUEUE; make caller retry. 2015-04-11 00:13:04 +00:00
riastradh
5aa555542e Use the upstream xdr, with a rename dance to avoid clash with libc.
The upstream xdr provides some functionality expected by the upstream
libnvpair which our libc's xdr does not provide.

When modifying, double-check that libnvpair.so defines no xdr_*
symbols, only _solaris_xdr_*.  (XXX Put this note somewhere...)
2015-04-10 22:44:20 +00:00
riastradh
cee8cbe23f GCC doesn't speak #pragma init, try __attribute__((constructor)). 2015-04-10 22:38:30 +00:00
riastradh
708e4d7282 One usually puts .c, not .o, files in SRCS. 2015-04-10 22:36:50 +00:00
riastradh
495fdb2f81 Initialize variables. Don't bother supporting nv doubles. 2015-04-10 22:29:35 +00:00
riastradh
0126bcdf7e Use 0, not NULL, for zero integer constant. 2015-04-10 22:28:27 +00:00
riastradh
f7e5f84747 Use dprintf, not printf, for debug messages. 2015-04-10 20:55:38 +00:00
riastradh
7c5ca5f421 Use CPPFLAGS, not CFLAGS, so this actually takes effect. 2015-04-10 20:34:16 +00:00
riastradh
d4677cf380 Disable mmap on zfs for now.
The implementation is not coherent with read/write, and apparently it
is is so broken that write(2) on a region mapped from a zfs file will
often fail with EINVAL because something passes an offset that is too
large to getpages.
2015-04-10 19:59:10 +00:00
riastradh
057ee3c54c Pass NetBSD VA_UTIMES_NULL through to ZFS as Solaris ATTR_UTIME.
Makes t_unpriv:zfs_times fail the wrong way instead of silently
allowing the change.
2015-04-09 20:18:28 +00:00
riastradh
3d61be1880 Advisory locking for zfs. 2015-04-09 19:47:05 +00:00
riastradh
5b72b2208e Remove some vestigial #if 0 sections. 2015-04-09 19:35:55 +00:00
riastradh
bc95daf1f6 Fix vattr_init_mask: mode is mode_t, not u_short.
Fixes fs/vfs/t_vnops:zfs_attrs test.
2015-04-09 05:32:53 +00:00
riastradh
8aa34a7d8b Fix return code of rmdir(nonempty) in zfs: ENOTEMPTY, not EEXIST. 2015-04-09 05:02:28 +00:00
riastradh
6c33e40a21 These are expressions, not statements. No semicolon. 2015-03-19 22:57:45 +00:00
riastradh
222dd8ff89 Move initialization of XUIO_XUZC_PRIV out of #ifdef PORT_SOLARIS.
This code is not currently used, so no functional change, but it may
be used when we hook zfs into the ubc.
2015-03-19 17:16:22 +00:00
christos
71da105a96 fix reversed test. 2015-03-10 12:17:50 +00:00
riastradh
bf803657e5 Rewrite dtrace provider prototype from scratch. 2015-03-09 03:43:02 +00:00
christos
4d0ad52103 keep track of the number of enabled probes and set the lockstat_dtrace_enabled
flag appropriately.
2015-03-09 01:42:26 +00:00
riastradh
07b5668221 Remove debug prints, simplify fini logic. 2015-03-09 01:07:27 +00:00
christos
bf089fd6e2 - remove device stuff
- compress ops
- terminate array of probes
2015-03-09 00:53:39 +00:00
riastradh
409555c5e2 Rewrite dtrace lockstat from the Solaris version and simplify.
- Fix mutex_adaptive probes to use the right lockstat flags.
- Install lockstat_probe_func on module load, not trace enable.
- Use a more sensible memory barrier arrangement.
2015-03-08 23:56:59 +00:00
christos
007a77aa4b preliminary support from riastradh (does not work yet, toxic) 2015-03-08 04:13:46 +00:00
christos
aadbd1256a we have space for 2 more arguments so use it. 2015-03-07 17:47:09 +00:00
christos
6d7ab7eb57 constify 2015-03-07 15:14:29 +00:00
christos
c0342a4ea1 - cleanup FreeBSD ifdefs
- remove unused code
- adjust to NetBSD struct emul and types.
2015-03-07 15:14:09 +00:00
christos
56bb5331f6 XXX: Use only a single thread. We seem to have a bug in our threading code
that causes us to hang in the ksem code if we use more than one.
2015-03-06 11:49:30 +00:00
ozaki-r
45c3185cfc Fix inconsistency between module and internal names of sdt and fbt
PR 49697
OK wiz@
2015-02-26 10:31:52 +00:00
ozaki-r
9ce3434ff9 Fix module unload of dtrace, sdt and fbt
- Don't unload when there are users of dtrace
- Forbid auto unloading (not supported for now)

PR 49695
2015-02-26 09:10:52 +00:00
ozaki-r
2be0e59f43 Fix dtrace build for arm with gcc 4.8 2015-02-21 15:13:20 +00:00
ozaki-r
3bcb5a6ccb Fix dtrace build error with gcc 4.8 on i386 and arm
_ILP32 is required by dt_popc.

The fix is inspired by FreeBSD.
2015-02-21 15:00:30 +00:00
ozaki-r
47d3523379 Add assert 2015-02-18 03:08:38 +00:00
ozaki-r
99f05559ed Don't return success when the target CPU is offline
dt_status originally expected the behavior.

This fixes a segfault happens in dt_aggregate_go (a user of dt_status)
that depends on the behavior.
2015-02-18 03:07:56 +00:00
christos
bf418d8f39 PR/49667: Henning Petersen: Missing initialization of values in dt_parser.c 2015-02-14 15:55:05 +00:00
christos
92111d5005 PR/49666: Henning Petersen: initialization of instr wrong in dt_cg.c NULL
instead of 0 for uint32_t.
2015-02-14 15:53:23 +00:00
christos
92e3cdde4e delete error(1) strings. 2015-02-07 20:33:22 +00:00
christos
b8c591ba5d check and fix printf formats, negative array indices, uninitialized variables,
shadowed variables.
2015-02-07 20:30:03 +00:00
wiz
659c05d388 Comment out currently unused dtrace_dof_char function (for clang build). 2015-01-31 13:36:29 +00:00
hannken
aaf5c384d9 Change zfs to vcache.
- zfs_loadvnode() is based on zfs_zget() plus zfs_znode_alloc().
2014-12-05 09:13:32 +00:00
hannken
f43b9b375a Remove vnode creation from zfs_create_fs() and zfs_create_share_dir()
as a vnode is not needed here.

Inspired by FreeBSD r253603.
2014-12-05 09:12:29 +00:00
christos
be13e1550a don't fail for anonymous unions. 2014-11-01 23:21:31 +00:00
justin
3cf1fc0878 Add libraries in order that they will link if static as well as dynamic 2014-10-30 21:15:13 +00:00
joerg
18fd8dcd8d SPEC_MAXOFFSET_T doesn't exist anywhere else, so don't use it here
either.
2014-07-28 10:01:23 +00:00
ryoon
4575a9c0a5 Fix dtrace kernel module build.
Add nodiscard to cdevsw.
They are not fixed in fallocate/fdiscard changes.
2014-07-26 04:54:20 +00:00
christos
02cb0c6eaf Introduce a selector function to the vfs vnode iterator so that we don't
need to vget() vnodes that we are not interested at, and optimize locking
a bit. Iterator changes reviewed by Hannken (thanks), the rest of the bugs
are mine.
2014-05-24 16:34:03 +00:00
christos
7081cf9a59 need bsd.own.mk 2014-04-28 21:56:20 +00:00
christos
0b24109d1b make compilable from the kernel 2014-04-22 15:12:35 +00:00
christos
c8ad22d607 Add fake atomic 64 ops for those who don't have them.
XXX: used to be arm, now it is also i386.
2014-04-22 15:02:38 +00:00
maxv
23f76b6d00 An (un)privileged user can easily make the kernel dereference a NULL
pointer.

The kernel allows 'data' to be NULL; it's the fs's responsibility to
ensure that it isn't NULL (if the fs actually needs data).

ok christos@
2014-04-16 18:55:17 +00:00
riastradh
418e8d3033 Don't forget ZFS_EXIT after ZFS_ENTER. 2014-04-09 22:41:38 +00:00
riastradh
c83470498f Try vflush, which may fail, before we mark the file system mounted. 2014-04-09 22:40:32 +00:00
christos
897d836e1d Handle assembly code built with -g 2014-04-05 23:33:15 +00:00
ozaki-r
b7c3845c47 Complete migrating to snprintf_blkptr 2014-03-28 03:46:56 +00:00
ozaki-r
c5002aae34 Fix migrating to snprintf_blkptr 2014-03-28 03:18:24 +00:00
ozaki-r
2821606826 Add missing 4th argument of ddt_object_name 2014-03-28 03:11:00 +00:00
ozaki-r
4e2e658100 Fix some snprintf 2014-03-28 02:58:36 +00:00
ozaki-r
bc3ce11eda Add missing 3rd argument of nicenum 2014-03-28 02:50:18 +00:00
apb
6713b766dd format is a pointer, so sizeof(format) is not a good length
to pass to snprintf.  Try to calculate the correct length,
taking into account the amount of space already used.
2014-03-27 19:34:39 +00:00
christos
a2d437b386 kill sprintf 2014-03-27 15:50:48 +00:00
ozaki-r
1339b2cc13 Add MKCTF
This variable separates CTF stuffs from MKDTRACE; we can build DTrace
solely without building and using them. This allows us to use DTrace
even if CTF stuffs have problems (actually they have now).

This variable would be merged into MKDTRACE eventually, once CTF stuffs
work correctly again.
2014-03-25 09:52:55 +00:00
ozaki-r
4ae43925ec Exclude mvsoctmr_* functions from FBT targets
Probing them doesn't work for DTrace/arm for some reason.

Anyway with this fix, DTrace/arm works on SHEEVAPLUG
as well as BEAGLEBONE.
2014-03-19 11:14:12 +00:00
hannken
33b1d7765e Change zfs_sync() to use vfs_vnode_iterator. 2014-03-17 09:37:41 +00:00
ozaki-r
e2fc5c59a0 Use MACHINE_CPU instead of MACHINE_ARCH with pattern matching
Include bsd.own.mk to use MACHINE_CPU.

Advised by matt@
2014-03-16 06:51:43 +00:00
ozaki-r
f27e224fab Look up arm directory on MACHINE_ARCH=*arm* 2014-03-16 05:11:19 +00:00
ozaki-r
609ba481a5 Implement DTrace FBT provider for ARM
- Finding probable functions
- Replacing instructions
- Emulating instructions

It is tested only on ARMv7 CPUs yet, for example,
-m evbarm (-a earm) kernel=BEAGLEBONE.
2014-03-15 08:00:19 +00:00
ozaki-r
48e9045322 Enable invop handler on module load
It sets a fbt handler to dtrace_invop_jump_addr on module load,
which is used to call the dtrace probing function from the trap
handler.
2014-03-15 07:49:15 +00:00
ozaki-r
26e6962bfe Make arm/dtrace_isa.c buildable
This is a band-aid for build, but it works anyway.
We have to do a real fix in the future.
2014-03-15 07:43:01 +00:00
ozaki-r
18c3aa4966 Fix header inclusions 2014-03-10 06:38:22 +00:00
ozaki-r
7ea504b141 Make arm/dtrace_subr.c buildable
The change just imports the code from
http://people.freebsd.org/~gonzo/arm/dtrace-arm.diff
and tweaks for NetBSD.
2014-03-10 03:04:57 +00:00
christos
60a5bae159 Tidy up paths. 2014-03-09 22:01:31 +00:00
christos
0afc3eb7f2 put back our local fixes:
- don't die on unresolved types.
- it is ok to have 0 sized arrays in structs
- forward enum decls.
2014-03-09 20:48:01 +00:00
christos
cf96d463d6 Temporarily add a -S flag to limit the number of threads. 2014-03-09 19:14:15 +00:00
christos
e3afac50d3 fix constant name 2014-03-09 17:07:46 +00:00
christos
7016e57516 use merged ctf rules 2014-03-09 17:05:23 +00:00
christos
abe7c4c08a Merge ctf build rules. 2014-03-09 17:05:01 +00:00
christos
381ca28d6d sync with freebsd 2014-03-09 17:04:00 +00:00
ozaki-r
959d62341c Prepare dtrace_isa.c for build
- Tidy up header file inclusions
- Replace curcpu with cpu_number()
- Fix argument of dtrace_getreg
- Tweak for gcc 4.8

Note that the file is still not buildable.
2014-03-08 11:46:01 +00:00
ozaki-r
e9ddbe399c Fix build of DTrace with GCC 4.8
Use __diagused for a variable which is only referred by KASSERT.

Advised by matt@
2014-03-07 02:37:16 +00:00
tron
f7ff511838 Fix build of DTrace with GCC 4.8. 2014-03-05 20:14:15 +00:00
ozaki-r
f6c17acba3 Add cyclic_machdep.c for ARM
The code is still almost same as i386's one.
2014-03-05 06:35:44 +00:00
ozaki-r
bee7b32afb Add defined(__arm__) 2014-03-05 06:12:00 +00:00
ozaki-r
9d2dfffd73 Use native atomic function instead of DTrace's own one
So we don't need to implement it for each architecture.

This change is from FreeBSD (not as-is though).
2014-03-05 06:06:42 +00:00
ozaki-r
7ee4c5ecd0 Fix dtrace_cas32 logic
- compare with cmp, not new
- return old value
2014-03-05 03:09:17 +00:00
ozaki-r
1bf04388c3 Use uint32_t instead of u_int32_t 2014-03-05 02:00:24 +00:00
ozaki-r
07efccf499 Add missing END for each function 2014-03-04 11:07:40 +00:00
ozaki-r
bc132bbc2a Get rid of unused variable definition za from mount.h
There is no user for it. Even worse, it breaks dtrace build for arm.
2014-03-04 09:24:42 +00:00
ozaki-r
ad5eab92b9 Fix wrong conditional statement in dtrace_debug_output
Reported in PR kern/48547 by ozaki-r.
2014-03-04 03:20:49 +00:00
christos
0d8247f549 Don't core-dump if a type cannot be resolved. Still gives an error. 2014-03-03 00:09:52 +00:00
hannken
97834f7ba0 Change vnode operation lookup to return the resulting vnode *vpp unlocked.
Change cache_lookup() to return an unlocked vnode.

Discussed on tech-kern@

Welcome to 6.99.31
2014-02-07 15:29:20 +00:00
hannken
04c776e5c8 Change vnode operations create, mknod, mkdir and symlink to return
the resulting vnode *vpp unlocked.

Discussed on tech-kern@

Welcome to 6.99.30
2014-01-23 10:13:55 +00:00
hannken
1139274440 Change vnode operations create, mknod, mkdir and symlink to keep the
directory node dvp locked on return.

Discussed on tech-kern@

Welcome to 6.99.29
2014-01-17 10:55:01 +00:00
riz
11beb836b0 Replace llx with PRIx64 and some llu with PRIu64 in format strings. 2014-01-12 17:49:30 +00:00
riz
f664413dc2 Field width is an int, so cast the result of strlen() appropriately. 2014-01-12 17:48:59 +00:00
riz
b3fba11357 Disable the extra-args warning for printf formats in dtrace.c 2014-01-12 17:48:25 +00:00