Brian Behlendorf
48ca6d3590
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2010-06-16 14:27:31 -07:00
Brian Behlendorf
7f979b27f4
Merge branch 'fix-branch' into refs/top-bases/zfs-branch
2010-06-16 14:27:30 -07:00
Brian Behlendorf
30c03a0914
Merge branch 'fix-stack' into refs/top-bases/fix-branch
2010-06-16 14:27:29 -07:00
Brian Behlendorf
2115c30515
Revert fix-stack topic branch
...
This patch will be broken in to several independent stack reductions
and reapplied as new topic branches.
2010-06-16 14:23:31 -07:00
Brian Behlendorf
08060ef853
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2010-06-14 16:25:02 -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
2969945552
Merge branch 'fix-pthreads' into refs/top-bases/fix-branch
2010-06-14 16:22:00 -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
c430e23552
Update zfs-branch with build system updates
...
Required Makefile modifications for updated ZFS code.
2010-06-14 15:46:11 -07:00
Brian Behlendorf
812761eac5
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
...
Conflicts:
cmd/ztest/ztest.c
2010-05-28 15:46:10 -07:00
Brian Behlendorf
e27754d9e8
Merge branch 'gcc-branch' into refs/top-bases/zfs-branch
...
Conflicts:
cmd/ztest/ztest.c
lib/libzfs/libzfs_sendrecv.c
module/zfs/dmu_objset.c
module/zfs/dnode.c
module/zfs/dnode_sync.c
module/zfs/dsl_dataset.c
module/zfs/include/sys/dmu_tx.h
module/zfs/include/sys/txg.h
module/zfs/spa_history.c
2010-05-28 15:45:38 -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
89089d1e4b
Merge commit 'refs/top-bases/fix-stack' into fix-stack
...
Conflicts:
module/zfs/dmu_objset.c
module/zfs/spa_history.c
2010-05-28 13:54:08 -07:00
Brian Behlendorf
31630287ca
Merge branch 'fix-dbuf_dirty_record_t' into refs/top-bases/fix-branch
...
Conflicts:
lib/libzfs/libzfs_sendrecv.c
module/zfs/dmu_objset.c
module/zfs/dnode.c
module/zfs/dsl_dataset.c
module/zfs/spa_history.c
2010-05-28 13:51:29 -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
06da6ccf97
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2010-05-28 12:42:30 -07:00
Brian Behlendorf
818eafca5b
Merge branch 'gcc-branch' into refs/top-bases/zfs-branch
2010-05-28 12:42:30 -07:00
Brian Behlendorf
c91169c7c5
Merge branch 'gcc-shadow' into refs/top-bases/gcc-branch
...
Conflicts:
lib/libzfs/libzfs_util.c
2010-05-28 12:42:27 -07:00
Brian Behlendorf
fb72c6ef81
Revert gcc-shadow using -Wno-shadow I can live with
...
While I would rather fix all the instances where something is shadowed
it complicates tracking the OpenSolaris code where they either don't
seem to care or have different conflicts. Anyway, this ends up being
more simply gratutous change than I care for.
2010-05-28 12:34:45 -07:00
Brian Behlendorf
ea431b4dc6
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2010-05-27 16:14:04 -07:00
Brian Behlendorf
319f69734b
Merge branch 'feature-branch' into refs/top-bases/zfs-branch
...
Conflicts:
cmd/ztest/ztest.c
2010-05-27 16:13:19 -07:00
Brian Behlendorf
390995db28
Revert all remaining changes.
2010-05-27 14:25:06 -07:00
Brian Behlendorf
c17d3e05eb
Merge branch 'feature-branch' into refs/top-bases/zfs-branch
2010-05-27 13:32:58 -07:00
Brian Behlendorf
51536ea5f4
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2010-05-27 13:32:58 -07:00
Brian Behlendorf
a082023842
Merge commit 'refs/top-bases/feature-branch' into feature-branch
...
Conflicts:
cmd/ztest/ztest.c
lib/libzpool/include/sys/zfs_context.h
lib/libzpool/kernel.c
lib/libzpool/taskq.c
2010-05-27 13:30:48 -07:00
Brian Behlendorf
099e8e493a
Remove feature-pthreads prior to b141 update.
...
The pthreads change will need to be reworked and reapplied.
This will be easier to do from scratch rather than sort out
the merge.
2010-05-27 13:23:58 -07:00
Brian Behlendorf
4d5d0f9ef5
Include FMA source and headers in build system
2010-04-29 10:55:27 -07:00
Brian Behlendorf
7223b8df33
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2010-03-10 09:58:04 -08:00
Brian Behlendorf
54cf7ab2bc
Merge branch 'fix-branch' into refs/top-bases/zfs-branch
2010-03-10 09:58:03 -08:00
Brian Behlendorf
166355dcf0
Merge branch 'fix-error-handling' into refs/top-bases/fix-branch
2010-03-10 09:54:43 -08:00
Ricardo M. Correia
62a0ac8f22
Fix some incorrect error handling.
...
In vn_open(), if fstat64() returned an error, the real errno
was being obscured by calling close().
Add error handling for both pwrite64() calls in vn_rdwr().
2010-03-10 09:53:53 -08:00
Brian Behlendorf
8f63d438cd
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2010-03-09 12:30:18 -08:00
Brian Behlendorf
48e74ed68b
Merge branch 'feature-branch' into refs/top-bases/zfs-branch
...
Conflicts:
cmd/ztest/ztest.c
2010-03-09 12:30:03 -08:00
Brian Behlendorf
9a3d5378c6
Clean up emulation of kernel threads in userspace.
...
Updated to use pthread thread specific data rather than keeping
a global list. This also fixes at least one easily reproducible
crash in ztest
2010-03-09 12:25:28 -08: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
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
db3967ba86
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2009-07-24 11:08:43 -07:00
Brian Behlendorf
9a2275c1c5
Merge branch 'feature-branch' into refs/top-bases/zfs-branch
2009-07-24 11:08:42 -07:00
Ricardo M. Correia
51760e3c7e
Change VERIFY() into VERIFY3U() when creating threads in ztest, so that we can see the return code when it fails.
...
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
2009-07-24 11:00:23 -07:00
Brian Behlendorf
5753d78dcd
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2009-07-14 16:49:29 -07:00
Brian Behlendorf
e9d7526fb3
Merge branch 'feature-branch' into refs/top-bases/zfs-branch
2009-07-14 16:49:27 -07:00
Brian Behlendorf
a13cdecdd2
Remove debug printf
2009-07-14 16:35:13 -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
058a25a017
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2009-07-08 15:00:43 -07:00