Commit Graph

1779 Commits

Author SHA1 Message Date
Brian Behlendorf c89153393f Merge commit 'refs/top-bases/feature-branch' into feature-branch 2009-03-19 20:51:18 -07:00
Brian Behlendorf f180959bac Merge branch 'feature-pthreads' into refs/top-bases/feature-branch 2009-03-19 20:51:18 -07:00
Brian Behlendorf a32dc3b04b New TopGit dependency: feature-pthreads 2009-03-19 20:51:17 -07:00
Brian Behlendorf 54b5b41a58 Add 'feature-pthreads' branch to features branch. 2009-03-19 20:49:52 -07:00
Brian Behlendorf 29703a5b4e Add 'feature-commit-cb' branch for DMU commit callbacks. 2009-03-19 20:30:14 -07:00
Brian Behlendorf 182e9e0973 Remove 'fix-pthreads' dependency from 'fix-branch' 2009-03-19 19:59:10 -07:00
Brian Behlendorf 8cdcf1ef44 Merge branch 'fix-branch' into refs/top-bases/zfs-branch 2009-03-19 19:49:55 -07:00
Brian Behlendorf 05cec154f5 Merge branch 'fix-pthreads' into refs/top-bases/fix-branch 2009-03-19 19:49:53 -07:00
Brian Behlendorf f681a33757 Merge commit 'refs/top-bases/fix-branch' into fix-branch 2009-03-19 19:49:53 -07:00
Brian Behlendorf 53db4c7b29 Revert fix-pthreads moving to feature-pthreads branch 2009-03-19 19:43:09 -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 97d74db433 Merge commit 'refs/top-bases/fix-branch' into 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 f07d61a8c1 Merge branch 'fix-branch' into refs/top-bases/zfs-branch 2009-03-19 15:07:18 -07:00
Brian Behlendorf 8d41b083fe Merge commit 'refs/top-bases/fix-branch' into fix-branch 2009-03-19 15:07:17 -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 24ea8a1d2a Merge commit 'refs/top-bases/gcc-branch' into gcc-branch 2009-03-16 16:17:55 -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 5ee8a85ba6 Merge branch 'fix-branch' into refs/top-bases/zfs-branch 2009-03-16 10:30:27 -07:00
Brian Behlendorf ab8dbc4a7d Merge commit 'refs/top-bases/fix-branch' into fix-branch 2009-03-16 10:12:02 -07:00
Brian Behlendorf 9818e69640 Merge branch 'fix-deadcode' into refs/top-bases/fix-branch 2009-03-16 10:12:01 -07:00
Brian Behlendorf bb29348bc2 New TopGit dependency: fix-deadcode 2009-03-16 10:11:57 -07:00
Brian Behlendorf 2924858552 Remove two self referential functions.
Newer versions of gcc (4.3.0) detected the following unused
code segments.
2009-03-16 10:02:06 -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 e7c7284c66 Merge commit 'refs/top-bases/gcc-branch' into gcc-branch 2009-03-13 10:57:44 -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 6a5acaa105 Merge branch 'gcc-branch' into refs/top-bases/zfs-branch 2009-03-12 15:44:13 -07:00
Brian Behlendorf 539bf4451c Merge commit 'refs/top-bases/gcc-branch' into gcc-branch 2009-03-12 15:39:28 -07:00
Brian Behlendorf 9fe5b916e2 Merge branch 'gcc-fortify-source' into refs/top-bases/gcc-branch 2009-03-12 15:39:27 -07:00
Brian Behlendorf 76a1c3140f New TopGit dependency: gcc-fortify-source 2009-03-12 15:39:25 -07:00
Brian Behlendorf 9e49df6b20 Add gcc-fortify-source branch 2009-03-12 15:38:51 -07:00
Brian Behlendorf 6a59551cb7 Merge branch 'fix-branch' into refs/top-bases/zfs-branch 2009-03-12 15:26:13 -07:00
Brian Behlendorf c4e10eb3df Merge branch 'fix-strncat' into refs/top-bases/fix-branch 2009-03-12 15:21:30 -07:00
Brian Behlendorf 21a51bafc8 Merge commit 'refs/top-bases/fix-branch' into fix-branch 2009-03-12 15:21:30 -07:00
Brian Behlendorf 56aaaa2617 New TopGit dependency: fix-strncat 2009-03-12 15:21:27 -07:00
Brian Behlendorf f1f9c50dd9 Add fix-strncat branch which corrects a buffer overrun. 2009-03-12 15:20:26 -07:00
Brian Behlendorf a03187bb3b Merge branch 'gcc-branch' into refs/top-bases/zfs-branch 2009-03-12 10:37:12 -07:00
Brian Behlendorf f8fe8a76f4 Merge branch 'gcc-uninit' into refs/top-bases/gcc-branch 2009-03-12 10:37:11 -07:00
Brian Behlendorf 387b58d93e Merge commit 'refs/top-bases/gcc-branch' into gcc-branch 2009-03-12 10:37:11 -07:00
Brian Behlendorf cabd4a69c4 Resolve remaining uninitialized variables
Most of these fixes appear to be harmless and should never occur.
However, there were a few cases in this patch which do concern me,
I doubt we're seeing them but they look possible... mainly in the
user tools.
2009-03-12 10:30:41 -07:00
Brian Behlendorf 193ea156e9 Merge branch 'gcc-branch' into refs/top-bases/zfs-branch 2009-03-12 10:00:03 -07:00
Brian Behlendorf 61980f28b8 Merge commit 'refs/top-bases/gcc-branch' into gcc-branch 2009-03-12 10:00:02 -07:00
Brian Behlendorf eceaf813ad Merge branch 'gcc-missing-case' into refs/top-bases/gcc-branch 2009-03-12 10:00:01 -07:00
Brian Behlendorf f2d72af596 Add remaining missing cases (or a default) to all switch statements.
The previous code was not wrong, but this prevents gcc from warning
us about missing cases for these known safe switch statements.  The
-Wno-missing-cases can now be removed to detect places where we
accidentally forgot a case.
2009-03-12 09:53:08 -07:00
Brian Behlendorf fba88e48f2 Merge branch 'fix-branch' into refs/top-bases/zfs-branch 2009-03-12 09:24:31 -07:00