diff options
author | avg <avg@FreeBSD.org> | 2013-07-24 09:15:59 +0000 |
---|---|---|
committer | avg <avg@FreeBSD.org> | 2013-07-24 09:15:59 +0000 |
commit | 0a4136d3530f88ddcec3af09ad403f557fba393b (patch) | |
tree | 69587d46c72a6dc6d269e0190565df233cbcaaa0 /sys/kern/sched_4bsd.c | |
parent | de45286f858c8751ce5dbe524c912ffae439a765 (diff) | |
download | FreeBSD-src-0a4136d3530f88ddcec3af09ad403f557fba393b.zip FreeBSD-src-0a4136d3530f88ddcec3af09ad403f557fba393b.tar.gz |
zfs: move vnode creation from zfs_znode_cache_constructor to zfs_znode_alloc
All other places where a znode is allocated do not need z_vnode at all.
These are:
- zfs_create_share_dir
- zfs_create_fs
This chnage ensures two things:
- VN_LOCK_ASHARE is not erroneously called for VFIFO vnodes
- vn_lock is called on a fully constructed vnode with correct v_ops
The change also allows to make zfs_znode_cache_constructor a normal
kmem_cache constructor again (as it is in upstream).
This allows to avoid a problem where zfs_znode_cache_destructor
may be called on un-constructed znodes.
MFC after: 17 days
Diffstat (limited to 'sys/kern/sched_4bsd.c')
0 files changed, 0 insertions, 0 deletions