Brian Behlendorf
a0796cadf7
Merge branch 'fix-branch' into refs/top-bases/zfs-branch
...
Conflicts:
cmd/ztest/ztest.c
2010-06-29 11:34:31 -07:00
Brian Behlendorf
ef01098ef4
Reduce stack used by ztest
...
While ztest does run in user space we run it with the same stack
restrictions it would have in kernel space. This ensures that any
stack related issues which would be hit in the kernel can be caught
and debugged in user space instead.
This patch is a first pass to limit the stack usage of every ztest
function to 1024 bytes. Subsequent updates can further reduce this
2010-06-29 11:25:08 -07:00
Brian Behlendorf
ffeafc898e
Merge branch 'fix-branch' into refs/top-bases/zfs-branch
...
Conflicts:
cmd/ztest/ztest.c
2010-06-29 10:55:38 -07:00
Brian Behlendorf
6fe1e37a5e
Additional pthread related fixes for ztest
...
There are 3 fixes in thie commit. First, update ztest_run() to store
the thread id and not the address of the kthread_t. This will be freed
on thread exit and is not safe to use. This is pretty close to how
things were done in the original ztest code before I got there.
Second, for extra paranoia update thread_exit() to return a special
TS_MAGIC value via pthread_exit(). This value is then verified in
pthread_join() to ensure the thread exited cleanly. This can be
done cleanly because the kthread doesn't provide a return code
mechanism we need to worry about.
Third, replace the ztest deadman thread with a signal handler. We
cannot use the previous approach because the correct behavior for
pthreads is to wait for all threads to exit before terminating the
process. Since the deadman thread won't call exit by design we
end up hanging in kernel_exit(). To avoid this we just setup a
SIGALRM signal handle and register a deadman alarm. IMHO this
is simpler and cleaner anyway.
2010-06-29 10:06:09 -07:00
Brian Behlendorf
eb894076a4
Merge branch 'fix-branch' into refs/top-bases/zfs-branch
...
Conflicts:
cmd/ztest/ztest.c
2010-06-14 16:24:45 -07:00
Brian Behlendorf
f9f342c5f2
Add fix-pthreads topic branch
...
This is a portability change which removes the dependence of the Solaris
thread library. All locations where Solaris thread API was used before
have been replaced with equivilant Solaris kernel style thread calls.
In user space the kernel style threading API is implemented in term of
the portable pthreads library. This includes all threads, mutexs,
condition variables, reader/writer locks, and taskqs.
2010-06-14 16:20:44 -07:00
Brian Behlendorf
d9f910d423
Merge branch 'gcc-missing-case' into refs/top-bases/gcc-branch
2010-06-14 15:36:59 -07:00
Brian Behlendorf
993fa8c15c
Merge branch 'gcc-invalid-prototype' into refs/top-bases/gcc-branch
2010-06-14 15:36:59 -07:00
Brian Behlendorf
b41463f5e8
Update gcc-invalid-prototypes
...
Fix new invalid prototypes, typically just a missing void arg.
2010-06-14 15:25:49 -07:00
Brian Behlendorf
0a8593375e
Update gcc-missing-case
...
Fix new locations of an incomplete case statement.
2010-06-14 15:19:09 -07:00
Brian Behlendorf
fc490c18b6
Merge branch 'gcc-cast' into refs/top-bases/gcc-branch
2010-06-14 14:42:56 -07:00
Brian Behlendorf
dd8f6da3da
Update gcc-cast
...
Fix new instances of missing casts or assumed types.
2010-06-14 14:40:10 -07:00
Brian Behlendorf
97352d5103
Merge branch 'gcc-cast' into refs/top-bases/gcc-branch
...
Conflicts:
cmd/zpool/zpool_main.c
cmd/ztest/ztest.c
2010-05-28 15:37:31 -07:00
Brian Behlendorf
3e2be634a5
Merge branch 'gcc-c90' into refs/top-bases/gcc-branch
...
Conflicts:
cmd/zdb/zdb.c
cmd/zdb/zdb_il.c
cmd/zfs/zfs_main.c
cmd/zfs/zfs_util.h
cmd/zinject/zinject.h
cmd/zpool/zpool_main.c
cmd/zpool/zpool_util.c
cmd/ztest/ztest.c
lib/libnvpair/include/libnvpair.h
lib/libnvpair/libnvpair.c
lib/libzfs/libzfs_changelist.c
lib/libzfs/libzfs_config.c
lib/libzfs/libzfs_dataset.c
lib/libzfs/libzfs_import.c
lib/libzfs/libzfs_mount.c
lib/libzfs/libzfs_pool.c
lib/libzfs/libzfs_sendrecv.c
module/avl/avl.c
module/avl/include/sys/avl.h
module/nvpair/include/sys/nvpair.h
module/nvpair/nvpair.c
module/zcommon/include/zfs_comutil.h
module/zcommon/include/zfs_prop.h
module/zcommon/zfs_comutil.c
module/zfs/arc.c
module/zfs/dbuf.c
module/zfs/dmu.c
module/zfs/dmu_objset.c
module/zfs/dmu_zfetch.c
module/zfs/dnode_sync.c
module/zfs/dsl_dataset.c
module/zfs/dsl_pool.c
module/zfs/dsl_prop.c
module/zfs/dsl_synctask.c
module/zfs/include/sys/dmu_tx.h
module/zfs/include/sys/dmu_zfetch.h
module/zfs/include/sys/dsl_synctask.h
module/zfs/include/sys/refcount.h
module/zfs/include/sys/txg.h
module/zfs/include/sys/uberblock.h
module/zfs/include/sys/zap_leaf.h
module/zfs/include/sys/zfs_debug.h
module/zfs/include/sys/zfs_znode.h
module/zfs/include/sys/zio_compress.h
module/zfs/include/sys/zvol.h
module/zfs/lzjb.c
module/zfs/metaslab.c
module/zfs/refcount.c
module/zfs/sha256.c
module/zfs/spa.c
module/zfs/spa_boot.c
module/zfs/uberblock.c
module/zfs/vdev.c
module/zfs/zap_micro.c
module/zfs/zfs_ioctl.c
module/zfs/zfs_replay.c
module/zfs/zio.c
module/zfs/zio_compress.c
2010-05-28 15:34:57 -07:00
Brian Behlendorf
2591cac812
Merge commit 'refs/top-bases/gcc-invalid-prototype' into gcc-invalid-prototype
...
Conflicts:
cmd/zdb/zdb_il.c
cmd/ztest/ztest.c
lib/libzfs/libzfs_mount.c
2010-05-28 14:42:40 -07:00
Brian Behlendorf
475bf41d1c
Merge commit 'refs/top-bases/gcc-cast' into gcc-cast
...
Conflicts:
cmd/zfs/zfs_main.c
cmd/zpool/zpool_main.c
cmd/ztest/ztest.c
2010-05-28 14:36:18 -07:00
Brian Behlendorf
957b7b41d4
Merge commit 'refs/top-bases/gcc-c90' into gcc-c90
...
Conflicts:
cmd/zdb/zdb.c
cmd/ztest/ztest.c
module/zfs/dbuf.c
module/zfs/dsl_dataset.c
module/zfs/dsl_scrub.c
module/zfs/spa.c
module/zfs/vdev.c
module/zfs/zio.c
2010-05-28 14:19:22 -07:00
Brian Behlendorf
428870ff73
Update core ZFS code from build 121 to build 141.
2010-05-28 13:45:14 -07:00
Brian Behlendorf
38cc41b5fe
Merge commit 'refs/top-bases/gcc-invalid-prototype' into gcc-invalid-prototype
2009-08-18 12:05:26 -07:00
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
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
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
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
b2dcbdf490
Resolve a 2 new cases of for loop variable declared in for()
2009-07-08 09:04:21 -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
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
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
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
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
d641369d38
Merge branch 'gcc-64bit-constants' into refs/top-bases/gcc-branch
2009-03-11 10:32:45 -07:00
Ricardo M. Correia
fd9a7a0fb4
Add 'ull' suffix to 64-bit constants.
2009-03-11 10:31:24 -07:00
Brian Behlendorf
86e39f5e3b
Resolve conflict with removed cleaner type
2009-01-15 14:05:21 -08:00
Brian Behlendorf
3fa768e21b
Resolve conflict with removed cleaner type
2009-01-15 14:04:35 -08:00
Brian Behlendorf
d3df6b2012
Merge commit 'refs/top-bases/gcc-c90' into gcc-c90
2009-01-15 14:01:51 -08:00
Brian Behlendorf
fb5f0bc833
Rebase master to b105
2009-01-15 13:59:39 -08:00
Brian Behlendorf
30b961af2c
Merge branch 'gcc-invalid-prototype' into refs/top-bases/gcc-branch
2008-12-22 16:55:50 -08:00
Brian Behlendorf
683f0b1d6c
Fix cast
2008-12-22 16:50:44 -08:00
Brian Behlendorf
a6152094d0
Merge branch 'gcc-invalid-prototype' into refs/top-bases/gcc-branch
2008-12-22 16:30:27 -08:00