Commit Graph

1198 Commits

Author SHA1 Message Date
Brian Behlendorf 7e8fa40f4d Merge branch 'linux-arc' into refs/top-bases/linux-zfs-branch 2009-03-19 15:29:38 -07:00
Brian Behlendorf aa729c745c Merge commit 'refs/top-bases/linux-arc' into linux-arc 2009-03-19 15:29:36 -07:00
Brian Behlendorf db3436fafe Merge commit 'refs/top-bases/zfs-branch' into zfs-branch 2009-03-19 15:29:35 -07:00
Brian Behlendorf 2518c98d9e Merge branch 'fix-branch' into refs/top-bases/zfs-branch 2009-03-19 15:29:34 -07:00
Brian Behlendorf c8c4948d00 Merge branch 'fix-dnode-cons' into refs/top-bases/fix-branch 2009-03-19 15:29:33 -07:00
Brian Behlendorf 60d25f4b93 The patch resolves the extra call to dnode_cons() in dnode_create().
The extra call to the constructor was there to reinitialize the non-
trivial primatives in the dnode (lists, mutexs, condvars, avl tree, etc).
This was safe, although not exactly clean, on Solaris because none of
the primitives allocate memory.  In the Linux port this is not true.
To keep stack usage to a minimum several of the primatives dynamically
allocate memory thus initializing them twice results in a memory leak.

This patch resolves this problem for Solaris and Linux by ensuring all
*_inits are called in the constructor, and all *_destroys are called
in the destructor.  Additionally we ensure that all dnode objects are
properly deconstructed before being freed to the slab, and when the
objects are allocated from the slab all required data members are
explicity initialized to correct values.
2009-03-19 15:22:48 -07:00
Brian Behlendorf 8cdd340206 Merge branch 'linux-arc' into refs/top-bases/linux-zfs-branch 2009-03-19 15:07:21 -07:00
Brian Behlendorf fac4873ad7 Merge commit 'refs/top-bases/linux-arc' into linux-arc 2009-03-19 15:07:19 -07:00
Brian Behlendorf 90bbbd109b Merge commit 'refs/top-bases/zfs-branch' into zfs-branch 2009-03-19 15:07:19 -07:00
Brian Behlendorf f07d61a8c1 Merge branch 'fix-branch' into refs/top-bases/zfs-branch 2009-03-19 15:07:18 -07:00
Brian Behlendorf cc032b6337 Merge branch 'fix-list' into refs/top-bases/fix-branch 2009-03-19 15:07:16 -07:00
Brian Behlendorf 9bbf8f1761 Resolve conflict with fix-dnode-cons 2009-03-19 15:02:05 -07:00
Brian Behlendorf 1c925dc4ce Merge branch 'linux-zpios' into refs/top-bases/linux-zfs-branch 2009-03-17 16:33:47 -07:00
Brian Behlendorf 02424a268b Use spl_device_* macro's for portability. 2009-03-17 16:27:57 -07:00
Brian Behlendorf f8cd6b6b49 Merge branch 'linux-have-sysevent' into refs/top-bases/linux-zfs-branch 2009-03-17 16:06:51 -07:00
Brian Behlendorf 80e98bb0f5 Merge commit 'refs/top-bases/linux-have-sysevent' into linux-have-sysevent 2009-03-17 16:06:50 -07:00
Brian Behlendorf a9b0088f48 Use include missing zfs_config.h and use ZFS_META_VERSION (not VERSION) 2009-03-17 16:02:09 -07:00
Brian Behlendorf a0155baaa9 Merge branch 'linux-kernel-disk' into refs/top-bases/linux-zfs-branch 2009-03-17 15:25:57 -07:00
Brian Behlendorf 23c544c884 Add zfs_config.h include for HAVE_2ARGS_BIO_END_IO_T define 2009-03-17 15:14:02 -07:00
Brian Behlendorf 563c0614c4 Merge commit 'refs/top-bases/linux-zpios' into linux-zpios 2009-03-16 16:22:19 -07:00
Brian Behlendorf 4bcfe17f4d Merge commit 'refs/top-bases/linux-kernel-disk' into linux-kernel-disk 2009-03-16 16:21:00 -07:00
Brian Behlendorf 7ca5472963 Merge commit 'refs/top-bases/linux-have-sysevent' into linux-have-sysevent 2009-03-16 16:20:03 -07:00
Brian Behlendorf 5edabb999f Merge commit 'refs/top-bases/linux-kernel-module' into linux-kernel-module 2009-03-16 16:20:02 -07:00
Brian Behlendorf f28a31a09a Merge branch 'linux-arc' into refs/top-bases/linux-zfs-branch 2009-03-16 16:18:01 -07:00
Brian Behlendorf 61926abf0f Merge commit 'refs/top-bases/linux-arc' into linux-arc 2009-03-16 16:17:58 -07:00
Brian Behlendorf df985d53db Merge commit 'refs/top-bases/zfs-branch' into zfs-branch 2009-03-16 16:17:57 -07:00
Brian Behlendorf f86b52a39d Merge branch 'gcc-branch' into refs/top-bases/zfs-branch 2009-03-16 16:17:55 -07:00
Brian Behlendorf 3eebe1bd0e Merge branch 'gcc-uninit' into refs/top-bases/gcc-branch 2009-03-16 16:17:54 -07:00
Brian Behlendorf 3eb4ba3ebd Add 3 more uninit errors detected by gcc 3.4.0 compiler. 2009-03-16 16:06:50 -07:00
Brian Behlendorf 709c447ce6 Merge branch 'linux-arc' into refs/top-bases/linux-zfs-branch 2009-03-16 11:41:18 -07:00
Brian Behlendorf 7bca8f1926 Use vmem_size() only on i386 systems and in the kernel. 2009-03-16 11:27:26 -07:00
Brian Behlendorf abfd24f708 Merge commit 'refs/top-bases/linux-zpios' into linux-zpios 2009-03-13 11:00:47 -07:00
Brian Behlendorf a4f8aecbe8 Merge commit 'refs/top-bases/linux-kernel-disk' into linux-kernel-disk 2009-03-13 10:59:53 -07:00
Brian Behlendorf f21bd57c48 Merge commit 'refs/top-bases/linux-have-sysevent' into linux-have-sysevent 2009-03-13 10:59:15 -07:00
Brian Behlendorf adf984639d Merge commit 'refs/top-bases/linux-kernel-module' into linux-kernel-module 2009-03-13 10:59:14 -07:00
Brian Behlendorf d7f60ff869 Merge branch 'linux-arc' into refs/top-bases/linux-zfs-branch 2009-03-13 10:57:50 -07:00
Brian Behlendorf 648bbdebbe Merge commit 'refs/top-bases/linux-arc' into linux-arc 2009-03-13 10:57:47 -07:00
Brian Behlendorf 486df2d11d Merge commit 'refs/top-bases/zfs-branch' into zfs-branch 2009-03-13 10:57:46 -07:00
Brian Behlendorf 36c46c6031 Merge branch 'gcc-branch' into refs/top-bases/zfs-branch 2009-03-13 10:57:45 -07:00
Brian Behlendorf d2910d2415 Merge branch 'gcc-unused' into refs/top-bases/gcc-branch 2009-03-13 10:57:43 -07:00
Brian Behlendorf c98996ded8 Explicitly cast to prevent 'void *' dereference. 2009-03-13 10:51:11 -07:00
Brian Behlendorf d032066bf3 Merge branch 'linux-zpios' into refs/top-bases/linux-zfs-branch 2009-03-12 10:51:22 -07:00
Brian Behlendorf b625eab814 Move upcall after run_args are initialized. 2009-03-12 10:46:54 -07:00
Brian Behlendorf 58e63ca4cc Merge commit 'refs/top-bases/linux-zpios' into linux-zpios 2009-03-12 10:40:17 -07:00
Brian Behlendorf 71188348b0 Merge commit 'refs/top-bases/linux-kernel-disk' into linux-kernel-disk 2009-03-12 10:39:26 -07:00
Brian Behlendorf 5303323f3a Merge commit 'refs/top-bases/linux-have-sysevent' into linux-have-sysevent 2009-03-12 10:38:45 -07:00
Brian Behlendorf 2ff032fd60 Merge commit 'refs/top-bases/linux-kernel-module' into linux-kernel-module 2009-03-12 10:38:44 -07:00
Brian Behlendorf 9bdbd7c8f7 Merge branch 'linux-arc' into refs/top-bases/linux-zfs-branch 2009-03-12 10:37:18 -07:00
Brian Behlendorf c8368a8daa Merge commit 'refs/top-bases/linux-arc' into linux-arc 2009-03-12 10:37:15 -07:00
Brian Behlendorf b9b399bf04 Merge commit 'refs/top-bases/zfs-branch' into zfs-branch 2009-03-12 10:37:14 -07:00