Brian Behlendorf
ee53c67258
Merge branch 'fix-pthreads' into refs/top-bases/fix-branch
2010-06-28 10:36:17 -07:00
Brian Behlendorf
a2e73b7516
Allow joinable threads
...
There was previous discussion of a race with joinable threads but to
be honest I can neither exactly remember the race, or recrease the
issue. I believe it may have had to do with pthread_create() returning
without having set kt->tid since this was done in the created thread.
If that was the race then I've 'fixed' it by ensuring the thread id
is set in the thread AND as the first pthread_create() argument. Why
this wasn't done originally I'm not sure, with luck Ricardo remembers.
Additionally, explicitly set a PAGESIZE guard frame at the end of the
stack to aid in detecting stack overflow. And add some conditional
logic to set STACK_SIZE correctly for Solaris.
2010-06-28 10:15:29 -07:00
Brian Behlendorf
a2ba5b83f8
Merge branch 'fix-stack-noinline' into refs/top-bases/fix-branch
2010-06-16 14:35:14 -07:00
Brian Behlendorf
bbdb8184ec
Add fix-stack-noinline topic branch
...
Certain function must never be automatically inlined by gcc because
they are stack heavy or called recursively. This patch flags all
such functions I have found as 'noinline' to prevent gcc from making
the optimization.
2010-06-16 14:34:41 -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
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
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
326bb586bd
Merge commit 'refs/top-bases/fix-stack' into fix-stack
2009-07-06 13:13:20 -07:00
Brian Behlendorf
01c3cfc58f
Merge branch 'fix-clock-wrap' into refs/top-bases/fix-branch
...
Conflicts:
module/zfs/zil.c
2009-07-06 13:12:23 -07:00
Brian Behlendorf
9babb37438
Rebase master to b117
2009-07-02 15:44:48 -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
7fe1b71533
Merge commit 'refs/top-bases/fix-stack' into fix-stack
2009-02-18 14:29:19 -08:00
Brian Behlendorf
15f5ddebdf
Merge commit 'refs/top-bases/fix-pthreads' into fix-pthreads
...
Conflicts:
lib/libzpool/kernel.c
2009-02-18 14:29:08 -08:00
Brian Behlendorf
6fe19bd252
Merge branch 'fix-clock-wrap' into refs/top-bases/fix-branch
...
Conflicts:
lib/libzpool/kernel.c
module/zfs/arc.c
2009-02-18 14:28:15 -08:00
Brian Behlendorf
d164b20935
Rebase master to b108
2009-02-18 12:51:31 -08:00
Brian Behlendorf
50735743b7
Err undo that
2008-12-22 16:22:28 -08:00
Brian Behlendorf
bb128e51e6
Use thread so we can add other goodies beyond simply the pthread base
2008-12-22 16:20:36 -08:00
Brian Behlendorf
c9597f9a4f
Merge branch 'fix-pthreads' into refs/top-bases/fix-branch
2008-12-22 13:51:15 -08:00
Brian Behlendorf
6bed331e59
More compat changes
2008-12-22 13:47:58 -08:00
Brian Behlendorf
a68af79057
Merge branch 'fix-pthreads' into refs/top-bases/fix-branch
2008-12-19 10:18:11 -08:00
Brian Behlendorf
d4c39af7a6
Re-add KM_PUSHPAGE
2008-12-19 10:15:52 -08:00
Brian Behlendorf
330840ff2e
Re-add KM_PUSHPAGE
2008-12-19 10:15:27 -08:00
Brian Behlendorf
3d8832a795
Merge branch 'fix-pthreads' into refs/top-bases/fix-branch
2008-12-19 09:52:51 -08:00
Brian Behlendorf
3bc48c3e74
Missing func readd
2008-12-19 09:50:15 -08:00
Brian Behlendorf
111303eeb8
context
2008-12-19 09:47:09 -08:00
Brian Behlendorf
dbc567603d
Readd removed hunk
2008-12-19 09:39:17 -08:00
Brian Behlendorf
33e499be43
Merge branch 'fix-stack' into refs/top-bases/fix-branch
2008-12-18 13:18:15 -08:00
Brian Behlendorf
8e136cf0c9
Add noinline macro for userspace
2008-12-18 13:15:58 -08:00
Brian Behlendorf
893ed2fad0
Properly cast thread functions for pthreads
2008-12-18 09:56:05 -08:00
Brian Behlendorf
ed9a35324d
Not sure why Sun needed to remove these externs, but I need them back
2008-12-17 11:32:47 -08:00
Brian Behlendorf
d0c573f27e
Add in the reset of the pthread changes
2008-12-12 16:16:06 -08:00
Brian Behlendorf
77755a5771
Add a few missing files
2008-12-11 11:14:49 -08:00