diff options
author | Brian Behlendorf <[email protected]> | 2009-08-04 15:42:24 -0700 |
---|---|---|
committer | Brian Behlendorf <[email protected]> | 2009-08-04 15:42:24 -0700 |
commit | 7069d048a0b7439575e5d00f85ce28838a3fc731 (patch) | |
tree | b18bd7fb96bf8489f97517a68fe6d756e88813a5 /module/zfs | |
parent | 0ebcbe2e74955971db7b3a41feb295b587222323 (diff) |
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
Diffstat (limited to 'module/zfs')
-rw-r--r-- | module/zfs/txg.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/module/zfs/txg.c b/module/zfs/txg.c index b5fcc8c4a..15745b3e9 100644 --- a/module/zfs/txg.c +++ b/module/zfs/txg.c @@ -446,6 +446,8 @@ txg_sync_thread(dsl_pool_t *dp) rw_exit(&tx->tx_suspend); cv_broadcast(&tx->tx_sync_done_cv); } + + thread_exit(); } static void @@ -490,6 +492,8 @@ txg_quiesce_thread(dsl_pool_t *dp) cv_broadcast(&tx->tx_sync_more_cv); cv_broadcast(&tx->tx_quiesce_done_cv); } + + thread_exit(); } /* |