Commit Graph

256 Commits

Author SHA1 Message Date
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
matt 99de37ccf7 Don't define ptrdiff_t since that's done in the NetBSD <sys/types.h> 2013-12-12 18:20:49 +00:00
christos b90de0d04a fix one more mountlist instant 2013-11-25 22:48:05 +00:00
hannken 65b1f85ab6 Vnode API cleanup pass 1.
- Make these defines and functions private to vfs_vnode.c:

  VC_MASK, VC_LOCK, DOCLOSE, VI_IANCTREDO and VI_INACTNOW
  vclean() and vrelel()

- Remove the long time unused lwp argument from vrecycle().

- Remove vtryget(), it is responsible for ugly hacks and doesn't
  look that effective.

Presented on tech-kern.

Welcome to 6.99.25
2013-10-29 09:53:51 +00:00
christos 419fd4e177 NetBSD does not have vn_in_dnlc 2013-10-21 15:31:26 +00:00
christos e1fe9cc144 use proper format strings. 2013-10-19 23:07:39 +00:00
christos 50a36d05ad don't use IO_APPEND. In the vdev_file.c we end up appending to our virtual
file as a filesystem! With this change:

    $ dd if=/dev/zero of=disk1 count=266144
    $ zpool create crap $PWD/disk1

mounts /crap and it seems to work ok, until I try unmounting
2013-09-23 20:44:24 +00:00
christos 4f1b5d5104 not nice to play with resid before checking for error, but this is how they
fixed it, and I am following suit. I would have preferred if (error && resid)
instead.
2013-09-23 20:41:19 +00:00
christos 618c231990 Hack: Instead of dying in vrele with a kernel assertion, detect that the
usecount of the vnode is 0 and treat it as a noop. This is wrong, buf it
get us through the VN_RELE() after the close in vdev_file.c
2013-09-23 19:44:21 +00:00
christos 54639fcdc3 Don't forget to destroy the mutex we created to the zfsvfs transient object,
otherwise if we load and unload the module the lockdebug code will blow chunks.
2013-09-23 19:42:42 +00:00
joerg 975a152cfc If a library needs a symbol from another library, pull that library in
explicitly, even if the DT_NEEDED closure would normally already ensure
the presence.
2013-09-11 23:04:09 +00:00
christos b964869221 -D and -I are CPPFLAGS 2013-09-10 11:23:20 +00:00
christos 22898e3a43 Make dtrace/zfs compile on arm based on the diff from:
http://people.freebsd.org/~gonzo/arm/dtrace-arm.diff
Completely untested, kernel support not added.
2013-06-21 19:16:00 +00:00
christos 7733018eca rename delay to xdelay to avoid conflicts. 2013-06-21 16:22:45 +00:00
christos ea65093059 stub out for now 2013-04-14 16:52:47 +00:00
christos 1dd1e91a24 add a stub for arm 2013-04-14 16:39:59 +00:00
christos 213aef742a let zfs autoload too. 2013-03-04 01:14:35 +00:00
christos db9ff9a846 print the function name that was not found. 2013-03-03 18:18:13 +00:00
christos c43c276ced autoload tracing modules. 2013-03-03 18:16:35 +00:00
christos 9776ad40b3 need to be a DRIVER class module to be able to autoload when /dev/dtrace/dtrace
is opened.
2013-03-03 16:56:15 +00:00
tron 53529c743e Fix dodgy arguments to snprintf(3) which cause a warning that breaks
the build (at least with "USE_SSP" set to "yes").
2013-02-20 22:45:12 +00:00
christos 55ad42a55f Avoid comparison between pointer and integer. 2013-01-26 20:15:50 +00:00
wiz 3c7ce2aac6 Put optional args before non-optional ones. 2013-01-20 23:51:40 +00:00
wiz 519dc5efd2 Sort options in SYNOPSIS and text.
XXX: please check if SYNOPSIS are correct, I think they missing some .Op.
2013-01-19 01:22:12 +00:00
christos d3d2c27409 add man pages 2013-01-18 19:58:43 +00:00
christos a83c8cf9a9 Handle enum forward declarations. 2013-01-18 16:23:48 +00:00
dsl a34e002f26 Spell cprng_fast() properly 2013-01-03 17:12:05 +00:00
dsl 278835249a Use cprgn_fast() not rnd_extract_data().
The latter isn't in any header files any more.
2013-01-03 16:42:55 +00:00
dsl 51f5533426 Compilation fixes:
- include sys/ioctl.h
- NULL isn't an int constant
- %llf isn't a printf format
2013-01-03 16:41:51 +00:00
tron 888f2d7310 Include "sys/ioctl.h" for the prototype of ioctl(2) which fixes the build. 2013-01-02 21:19:13 +00:00
dsl 6c6b743ee5 I've NFI why this code has userspace stuff playing with 'struct proc *'
nor why it uses &p0 as a magic constant (rather than NULL).
Re-instate the definition of p0, but enable the 'fake' definition
  of 'struct proc' if the relevant part of sys/proc.h seems to have
  been #if'ed away.
Should fix the build.
2013-01-02 16:31:24 +00:00
dsl be6d96d7d9 Explicitly include sys/ioctl.h 2013-01-02 10:33:49 +00:00
dsl 07465819ee Replace alloca(256) with an array.
The code ended up using alloca() from libc - which 'just can't work' (tm).
It is also pointless!
2013-01-02 10:33:19 +00:00
dsl b4041ccef0 Comment out the unused 'struct proc p0;'
This is userspace, it isn't supposed to know what a 'struct proc' is.
2013-01-01 19:03:26 +00:00
dsl f337b6c74a This needs an explicit include of sys/ioctl.h.
XXX: There is some crappy code in here :-)
2013-01-01 19:02:19 +00:00
chs 8f4ea3c47b adapt the profile dtrace provider to netbsd. 2012-12-07 03:11:17 +00:00
chs 11c69f2d20 adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().
2012-12-02 01:05:16 +00:00
chs a32db86a29 update cyclic module to the freebsd 8-stable version as of svn r219520. 2012-12-02 00:05:38 +00:00
christos 7c1cb982d4 we have _SC_PHYS_PAGES now 2012-11-04 19:12:41 +00:00
riastradh d9310ec72a Use 0 for MS_NOMNTTAB since we have no mnttab anyway. 2012-10-20 22:11:38 +00:00
joerg fdd8614af9 Hack to avoid missing macro to unbuild the tree. 2012-10-20 11:37:37 +00:00
riastradh 0041a2c6fe Let's try that again without the static... 2012-10-19 22:19:15 +00:00
riastradh e75d983bfe Add omitted secpolicy_vnode_utime_modify, for zfs. 2012-10-19 19:58:33 +00:00
riastradh 4797828821 Back out accidental commit of errno kludge for rmdir(".") &c.
Solaris returns EEXIST, whereas we want to return ENOTEMPTY (POSIX
allows both), but this got included in an unrelated commit and should
be separated into a common commit for other related error code fixes.
2012-10-18 14:29:44 +00:00
riastradh 2111fc7126 Take a first whack at making zfs permissions work.
zfs_access uses secpolicy_vnode_access, so it makes no sense for the
latter to call VOP_ACCESS!

Everything seems to return EACCES instead of EPERM, probably because
that's what kauth returns.  This should be fixed, but that may
require some nontrivial surgery to zfs's calls to secpolicy_*, which
is where kauth gets involved.

This commit imports some code from illumos to implement the routine
secpolicy_vnode_setattr.  This shouldn't be outside dist/, but for
now it is expedient to do so.  We ought to fix that, along with all
the other CDDL code outside dist/, when we next import a newer
version of zfs.
2012-10-18 14:22:57 +00:00
riastradh 8e972045d7 Restore _PC_NO_TRUNC in zfs_netbsd_pathconf.
Accidentally clobbered it in a previous commit while moving patches
around between source trees -- oops.
2012-10-16 00:04:15 +00:00