Commit Graph

434 Commits

Author SHA1 Message Date
Brian Behlendorf 8c684c8d85 Merge commit 'refs/top-bases/linux-kernel-module' into linux-kernel-module 2009-07-01 11:10:24 -07:00
Brian Behlendorf ef0a712858 Distro friendly build system / packaging improvements.
These changes bring the zfs-0.4.4 tree in to compliance with
the spl-0.4.4 packaging changes.  The bottom line is 2 source
rpms and 4 binary rpms will now be generated when creating
packages there will be:

zfs-<version>.src.rpm
- Fully rebuildable source rpm for libzfs and utils.
zfs-modules-<version>.src.rpm
- Fully rebuildable source rpm for kernel modules.

zfs-<version>.<arch>.rpm
- Binary rpm for libzfs and utils.  The utils in this package are
  compatible with all zfs-module rpms of the same version.
zfs-devel-<version>.<arch>.rpm
- Binary rpm containing headers for building against libzfs libraries.

zfs-modules-<verion>-<kernel>.arch.rpm
- Binary rpm containing the kernel modules for a specific kernel build.
  The package name contains the kernel version and you should have one
  of these packages installed to match every kernel on your system.
zfs-modules-devel-<verion>-<kernel>.arch.rpm
- Binary rpm containing development header and module symbols needed
  for building additional kernel modules which are dependent on the
  zfs module stack.

Expect minor interations on these changes as I validate they work
properly on CHAOS, RHEL, Fedora, and SLES style distros.
2009-07-01 10:53:05 -07:00
Brian Behlendorf 96da8b0db7 Add missing EXPORT_SYMBOL() to dmu_tx_callback_register(). 2009-06-08 13:08:14 -07:00
Brian Behlendorf 9bee47e648 Export additional txg_* symbols. 2009-03-20 13:17:23 -07:00
Brian Behlendorf 61914d7403 Merge commit 'refs/top-bases/linux-kernel-module' into linux-kernel-module 2009-03-19 21:30:15 -07:00
Brian Behlendorf bd1685ee4e Merge commit 'refs/top-bases/zfs-branch' into zfs-branch 2009-03-19 21:28:51 -07:00
Brian Behlendorf 1769e10f17 Merge branch 'feature-branch' into refs/top-bases/zfs-branch 2009-03-19 21:28:50 -07:00
Brian Behlendorf 6d883d7d40 Merge branch 'feature-pthreads' into refs/top-bases/feature-branch 2009-03-19 21:28:48 -07:00
Brian Behlendorf fed604c844 Add extra () requested by gcc 2009-03-19 21:18:54 -07:00
Brian Behlendorf 275f4aae5d Merge commit 'refs/top-bases/linux-kernel-module' into linux-kernel-module
Conflicts:

	module/zfs/dmu_tx.c
2009-03-19 21:08:17 -07:00
Brian Behlendorf e7f02d3b41 Merge commit 'refs/top-bases/zfs-branch' into zfs-branch 2009-03-19 20:59:33 -07:00
Brian Behlendorf eb811f7fa9 Merge branch 'feature-branch' into refs/top-bases/zfs-branch
Conflicts:

	module/zfs/include/sys/dmu_tx.h
	module/zfs/include/sys/txg.h
2009-03-19 20:59:12 -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 29703a5b4e Add 'feature-commit-cb' branch for DMU commit callbacks. 2009-03-19 20:30:14 -07:00
Brian Behlendorf e1540e9cbb Merge commit 'refs/top-bases/linux-kernel-module' into linux-kernel-module 2009-03-19 15:30:32 -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 fd3db92fe7 Merge commit 'refs/top-bases/linux-kernel-module' into linux-kernel-module 2009-03-19 15:08:17 -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 a9b0088f48 Use include missing zfs_config.h and use ZFS_META_VERSION (not VERSION) 2009-03-17 16:02:09 -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 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 adf984639d Merge commit 'refs/top-bases/linux-kernel-module' into linux-kernel-module 2009-03-13 10:59:14 -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 2ff032fd60 Merge commit 'refs/top-bases/linux-kernel-module' into linux-kernel-module 2009-03-12 10:38:44 -07:00
Brian Behlendorf b9b399bf04 Merge commit 'refs/top-bases/zfs-branch' into zfs-branch 2009-03-12 10:37:14 -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 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 165b2611d2 Merge commit 'refs/top-bases/linux-kernel-module' into linux-kernel-module 2009-03-12 10:01:25 -07:00
Brian Behlendorf dd30dba016 Merge commit 'refs/top-bases/zfs-branch' into zfs-branch 2009-03-12 10:00:04 -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 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 dadb99c29a Merge commit 'refs/top-bases/linux-kernel-module' into linux-kernel-module 2009-03-11 22:48:55 -07:00
Brian Behlendorf 909582a95e Merge commit 'refs/top-bases/zfs-branch' into zfs-branch 2009-03-11 22:47:56 -07:00
Brian Behlendorf 6211d1a370 Merge branch 'gcc-branch' into refs/top-bases/zfs-branch 2009-03-11 22:47:54 -07:00
Brian Behlendorf a2dc88da2a Merge branch 'gcc-c90' into refs/top-bases/gcc-branch 2009-03-11 22:47:53 -07:00
Brian Behlendorf 462f864365 Check should be in ASSERT to minimize stack and prevent unused var. 2009-03-11 22:38:16 -07:00