Brian Behlendorf
9e903015fd
Merge commit 'refs/top-bases/gcc-cast' into gcc-cast
2009-08-18 12:05:07 -07:00
Brian Behlendorf
e5e4fadc34
Merge branch 'gcc-c90' into refs/top-bases/gcc-branch
...
Conflicts:
module/zfs/dmu.c
module/zfs/dsl_deleg.c
module/zfs/rrwlock.c
module/zfs/vdev_raidz.c
2009-08-18 12:04:53 -07:00
Brian Behlendorf
0f80e41c89
Merge commit 'refs/top-bases/gcc-c90' into gcc-c90
...
Conflicts:
module/zfs/spa_misc.c
module/zfs/vdev_label.c
2009-08-18 11:55:36 -07:00
Brian Behlendorf
45d1cae3b8
Rebase master to b121
2009-08-18 11:43:27 -07:00
Brian Behlendorf
503a1a983c
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2009-08-14 10:22:10 -07:00
Brian Behlendorf
bd586322cc
Merge branch 'gcc-branch' into refs/top-bases/zfs-branch
2009-08-14 10:22:08 -07:00
Brian Behlendorf
f9bab26542
Merge branch 'gcc-fortify-source' into refs/top-bases/gcc-branch
2009-08-14 10:22:07 -07:00
Brian Behlendorf
e6b541db64
All calls to ftruncate() must have their return code checked.
...
Under FC11 rpm builds by default add the --fortify-source option which
ensures that functions flagged with certain attributes must have their
return codes checked. Normally this is just a warning but we always
build with -Werror so this is fatal. Simply wrap the function in a
verify call to ensure we catch a failure if there is one.
2009-08-14 10:11:03 -07:00
Brian Behlendorf
f88cbd6535
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2009-08-04 15:54:21 -07:00
Brian Behlendorf
8c28ed9bff
Merge branch 'feature-branch' into refs/top-bases/zfs-branch
2009-08-04 15:54:19 -07:00
Brian Behlendorf
7069d048a0
Revert kthreads based on pthread thread specific data due to failure.
...
With this patch applied I get the following failure 100% of the time,
I'd prefer to debug it and keep moving forward but I do not have the
time right now so I'm reverting the patch to the version which worked.
Ricardo please fix.
(gdb) bt
0 ztest_dmu_write_parallel (za=0x2aaaac898960) at
../../cmd/ztest/ztest.c:2566
1 0x0000000000405a79 in ztest_thread (arg=<value optimized out>)
at ../../cmd/ztest/ztest.c:3862
2 0x00002b2e6a7a841d in zk_thread_helper (arg=<value optimized out>)
at ../../lib/libzpool/kernel.c:131
3 0x000000379be06367 in start_thread (arg=<value optimized out>)
at pthread_create.c:297
4 0x000000379b2d30ad in clone () from /lib64/libc.so.6
2009-08-04 15:42:24 -07:00
Brian Behlendorf
3e5388907b
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2009-08-04 14:39:07 -07:00
Brian Behlendorf
9aedfd95f6
Merge branch 'feature-branch' into refs/top-bases/zfs-branch
2009-08-04 14:39:06 -07:00
Brian Behlendorf
0ebcbe2e74
Revert unneeded ztest_resume() prototype changes to match upstream.
2009-08-04 14:29:50 -07:00
Ricardo M. Correia
c0ce3b40f2
Reimplement user kthreads based on pthread thread specific data.
...
This resolves previous scalabily concerns about the cost of calling
curthread which previously required a list walk. The kthread address
is now tracked as thread specific data which can be quickly returned.
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
2009-08-04 13:55:15 -07:00
Brian Behlendorf
fef9a2c571
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2009-07-14 14:34:39 -07:00
Brian Behlendorf
9b9f17a585
Merge branch 'feature-branch' into refs/top-bases/zfs-branch
2009-07-14 14:34:37 -07:00
Brian Behlendorf
864e44e7e0
Provide correct kthread API semantics using pthreads.
...
The intent here is to fully remove the previous Solaris thread
implementation so we don't need to simulate both Solaris kernel
and user space thread APIs. The few user space consumers of the
thread API have been updated to use the kthread API. In order
to support this we needed to more fully support the kthread API
and that means not doing crazy things like casting a thread id
to a pointer and using that as was done before. This first
implementation is not effecient but it does provide all the
corrent semantics. If/when performance becomes and issue we
can and should just natively adopt pthreads which is portable.
Let me finish by saying I'm not proud of any of this and I would
love to see it improved. However, this slow implementation does
at least provide all the correct kthread API semantics whereas
the previous method of casting the thread ID to a pointer was
dodgy at best.
2009-07-14 14:16:26 -07:00
Brian Behlendorf
c4c4afd8fd
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2009-07-09 12:23:41 -07:00
Brian Behlendorf
6db8882b78
Merge branch 'gcc-branch' into refs/top-bases/zfs-branch
2009-07-09 12:23:39 -07:00
Brian Behlendorf
76bf02aebb
Merge branch 'gcc-unused' into refs/top-bases/gcc-branch
2009-07-09 12:23:36 -07:00
Brian Behlendorf
f1d99c0653
Revert to original debugging code and wrap any variabled used only
...
within an ASSERT with the ASSERTV macro which will ensure it will
be removed when the ASSERTs are commented out. This makes gcc much
happier, makes the variables usage explicit, and removes the need
for the compiler to detect it is unused and do the right thing.
2009-07-09 12:10:52 -07:00
Brian Behlendorf
8070ba7bea
Untracked pthread changes which must have accidentally crept in.
...
This is exactly the reason why I want a new topgit command which
takes the base, then incrementally applies all the patches and
compares them againsts what is actually committed. This would
ensure this sort of thing doesn't happen!
2009-07-08 15:58:28 -07:00
Brian Behlendorf
058a25a017
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2009-07-08 15:00:43 -07:00
Brian Behlendorf
275d66171b
Merge branch 'feature-branch' into refs/top-bases/zfs-branch
2009-07-08 15:00:41 -07:00
Brian Behlendorf
57ae3b59e9
Merge commit 'refs/top-bases/feature-pthreads' into feature-pthreads
2009-07-08 15:00:39 -07:00
Brian Behlendorf
2caba8e240
Add new DMU_READ_PREFETCH flag to dmu_read().
2009-07-08 14:51:55 -07:00
Brian Behlendorf
1ab1b8502b
Stop the kthread/thread/pthread mixing and matching insanity. Update all
...
code to only use the kthread API regardless of if it is compiled in the
kernel or user space. The kthread API will be layered on top of pthreads
as best as possible in zfs_context, this is non optimal but much clearer.
2009-07-08 14:47:23 -07:00
Brian Behlendorf
33077ad631
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2009-07-08 09:16:05 -07:00
Brian Behlendorf
f00e6fe5c3
Merge branch 'gcc-branch' into refs/top-bases/zfs-branch
2009-07-08 09:16:04 -07:00
Brian Behlendorf
23cff295e2
Merge branch 'gcc-cast' into refs/top-bases/gcc-branch
2009-07-08 09:16:02 -07:00
Brian Behlendorf
5fc46112cb
Merge branch 'gcc-c90' into refs/top-bases/gcc-branch
2009-07-08 09:16:01 -07:00
Brian Behlendorf
b2e459dab0
Add explicit casts for (u_longlong_t) when printing uint64_t.
2009-07-08 09:07:13 -07:00
Brian Behlendorf
5534447477
Add explicit casts for (u_longlong_t) when printing uint64_t.
2009-07-08 09:06:03 -07:00
Brian Behlendorf
b2dcbdf490
Resolve a 2 new cases of for loop variable declared in for()
2009-07-08 09:04:21 -07:00
Brian Behlendorf
69b2257940
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2009-07-06 15:38:51 -07:00
Brian Behlendorf
8463b9e01e
Merge branch 'feature-branch' into refs/top-bases/zfs-branch
2009-07-06 15:38:50 -07:00
Brian Behlendorf
3a8e684d73
Additional lock calls were added to ztest and they must be updated
...
to use the pthread's API in favour of Solaris threads.
2009-07-06 15:31:54 -07:00
Brian Behlendorf
658459249e
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2009-07-06 13:17:28 -07:00
Brian Behlendorf
926b04acba
Merge branch 'feature-branch' into refs/top-bases/zfs-branch
...
Conflicts:
cmd/ztest/ztest.c
2009-07-06 13:17:16 -07:00
Brian Behlendorf
cd098f87c8
Merge commit 'refs/top-bases/feature-pthreads' into feature-pthreads
...
Conflicts:
cmd/ztest/ztest.c
2009-07-06 13:16:29 -07:00
Brian Behlendorf
8795d8f034
Merge commit 'refs/top-bases/feature-commit-cb' into feature-commit-cb
2009-07-06 13:15:43 -07:00
Brian Behlendorf
95ba24ed69
Merge branch 'feature-zap-cursor-to-key' into refs/top-bases/feature-branch
...
Conflicts:
cmd/ztest/ztest.c
2009-07-06 13:15:35 -07:00
Brian Behlendorf
a1ccb00b7e
Merge branch 'gcc-branch' into refs/top-bases/zfs-branch
...
Conflicts:
cmd/ztest/ztest.c
module/zfs/zil.c
2009-07-06 13:11:34 -07:00
Brian Behlendorf
dbaf4f6c0f
Merge commit 'refs/top-bases/gcc-fortify-source' into gcc-fortify-source
...
Conflicts:
cmd/ztest/ztest.c
2009-07-02 17:08:30 -07:00
Brian Behlendorf
44703f0029
Merge commit 'refs/top-bases/gcc-uninit' into gcc-uninit
...
Conflicts:
lib/libzfs/libzfs_dataset.c
module/zfs/arc.c
module/zfs/spa.c
2009-07-02 16:57:09 -07:00
Brian Behlendorf
5a2a5d64a5
Merge commit 'refs/top-bases/gcc-invalid-prototype' into gcc-invalid-prototype
2009-07-02 16:51:09 -07:00
Brian Behlendorf
b095bf444a
Merge commit 'refs/top-bases/gcc-cast' into gcc-cast
...
Conflicts:
cmd/zfs/zfs_main.c
lib/libzfs/libzfs_dataset.c
2009-07-02 16:50:53 -07:00
Brian Behlendorf
e2b2597751
Merge branch 'gcc-c90' into refs/top-bases/gcc-branch
...
Conflicts:
cmd/zdb/zdb_il.c
cmd/zfs/zfs_main.c
cmd/zinject/zinject.c
cmd/ztest/ztest.c
lib/libzfs/libzfs_dataset.c
lib/libzfs/libzfs_graph.c
module/zcommon/include/sys/fm/fs/zfs.h
module/zcommon/include/zfs_deleg.h
module/zcommon/include/zfs_namecheck.h
module/zcommon/zfs_deleg.c
module/zcommon/zfs_namecheck.c
module/zcommon/zprop_common.c
module/zfs/arc.c
module/zfs/dmu.c
module/zfs/dmu_object.c
module/zfs/dmu_objset.c
module/zfs/dsl_pool.c
module/zfs/dsl_prop.c
module/zfs/fletcher.c
module/zfs/include/sys/dsl_deleg.h
module/zfs/include/sys/dsl_prop.h
module/zfs/include/sys/metaslab_impl.h
module/zfs/include/sys/spa_boot.h
module/zfs/include/sys/zap.h
module/zfs/include/sys/zap_impl.h
module/zfs/include/sys/zfs_context.h
module/zfs/include/sys/zfs_ctldir.h
module/zfs/include/sys/zfs_dir.h
module/zfs/include/sys/zfs_fuid.h
module/zfs/include/sys/zfs_ioctl.h
module/zfs/spa.c
module/zfs/spa_errlog.c
module/zfs/spa_history.c
module/zfs/zap.c
module/zfs/zap_leaf.c
module/zfs/zap_micro.c
module/zfs/zfs_ioctl.c
module/zfs/zio.c
2009-07-02 16:49:11 -07:00
Brian Behlendorf
e9f14862a5
Merge commit 'refs/top-bases/gcc-c90' into gcc-c90
...
Conflicts:
module/zfs/dmu_objset.c
module/zfs/spa.c
module/zfs/vdev.c
module/zfs/vdev_label.c
module/zfs/zio.c
2009-07-02 16:18:03 -07:00
Brian Behlendorf
9babb37438
Rebase master to b117
2009-07-02 15:44:48 -07:00
Brian Behlendorf
e1d6e67473
Merge branch 'gcc-branch' into refs/top-bases/zfs-branch
2009-05-22 16:36:23 -07:00
Brian Behlendorf
9c53917bd5
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2009-05-22 16:36:23 -07:00
Brian Behlendorf
e56aa929e8
Merge branch 'gcc-cast' into refs/top-bases/gcc-branch
2009-05-22 16:36:22 -07:00
Brian Behlendorf
8e9605062a
Explictly use signed char for portability. On x86/x86_64
...
systems the default char type is signed, on ppc/ppc64 systems
the default char type is unsigned.
2009-05-22 16:30:47 -07:00
Brian Behlendorf
f53e5a851d
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2009-03-20 09:29:22 -07:00
Brian Behlendorf
0c88bc3ccd
Merge branch 'feature-branch' into refs/top-bases/zfs-branch
2009-03-20 09:29:21 -07:00
Brian Behlendorf
13814fe220
Merge commit 'refs/top-bases/feature-pthreads' into feature-pthreads
2009-03-20 09:29:16 -07:00
Brian Behlendorf
99da5f93e8
Fix uninitialized variable error in ztest_dmu_commit_callbacks()
2009-03-20 09:20:49 -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
63781842e3
Update mutex_lock to pthread_mutex_lock for zcl->zcl_callback_locks.
2009-03-19 21:21:35 -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
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
8c43ad3853
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2009-03-19 19:49:56 -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
53db4c7b29
Revert fix-pthreads moving to feature-pthreads branch
2009-03-19 19:43:09 -07:00
Brian Behlendorf
70407622a7
Move `make check` ztest under ./scripts where the module stack is loaded.
2009-03-18 14:19:04 -07:00
Brian Behlendorf
be112b3f57
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2009-03-16 10:30:31 -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
9818e69640
Merge branch 'fix-deadcode' into refs/top-bases/fix-branch
2009-03-16 10:12:01 -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
82ce8b00f3
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2009-03-12 15:44:14 -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
9fe5b916e2
Merge branch 'gcc-fortify-source' into refs/top-bases/gcc-branch
2009-03-12 15:39:27 -07:00
Brian Behlendorf
9e49df6b20
Add gcc-fortify-source branch
2009-03-12 15:38:51 -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
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
2e9568b6be
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2009-03-12 09:24:32 -07:00
Brian Behlendorf
fba88e48f2
Merge branch 'fix-branch' into refs/top-bases/zfs-branch
2009-03-12 09:24:31 -07:00
Brian Behlendorf
9de6723b83
ztest_resume should be ztest_resume_thread in pthread_create()
...
Fix an accidental bug introducted by the pthreads changes. When creating
a resume thread the handler function was accidentally changed from
ztest_resume to ztest_resume_thread. There's a decent chance this
may explain some/all of the crashes that have be observed running
ztest. This issue was exposed and easily fixed once the -Wno-unused
check was removed from the build system. Happily at least one real
bug fix resulted from that cleanup.
2009-03-12 09:13:40 -07:00
Brian Behlendorf
4c042de40b
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2009-03-11 20:59:43 -07:00
Brian Behlendorf
60ac8152fe
Merge branch 'gcc-branch' into refs/top-bases/zfs-branch
2009-03-11 20:59:42 -07:00
Brian Behlendorf
9915249546
Merge branch 'gcc-missing-braces' into refs/top-bases/gcc-branch
2009-03-11 20:53:11 -07:00
Brian Behlendorf
d4dbc7dca8
Resolve all instances of missing braces.
2009-03-11 20:52:21 -07:00
Brian Behlendorf
1ca6578ebc
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2009-03-11 14:08:51 -07:00
Brian Behlendorf
8a3b1a5ff5
Merge branch 'gcc-branch' into refs/top-bases/zfs-branch
2009-03-11 14:08:50 -07:00
Brian Behlendorf
e5011401cd
Merge branch 'gcc-no-parenthesis' into refs/top-bases/gcc-branch
2009-03-11 14:08:48 -07:00
Brian Behlendorf
3226eea157
Resolve additional cases where gcc wants extra parenthesis.
...
These were introduced by the rebase to b108.
2009-03-11 13:57:47 -07:00
Brian Behlendorf
dff484a388
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2009-03-11 11:09:13 -07:00
Brian Behlendorf
5f30a3cb0e
Merge branch 'gcc-branch' into refs/top-bases/zfs-branch
2009-03-11 11:09:11 -07:00