]> granicus.if.org Git - zfs/commitdiff
Revert traverse_impl() changes
authorBrian Behlendorf <behlendorf1@llnl.gov>
Tue, 29 Jun 2010 17:24:14 +0000 (10:24 -0700)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Tue, 29 Jun 2010 17:24:14 +0000 (10:24 -0700)
These changes are now taken care of by the fix-stack-traverse_impl
topic branch which not only solves the uninit problem but also
moves these locals off the stack and on to the heap.

module/zfs/dmu_traverse.c

index 3350c08bc192188a40dde86fcaf21fc512cc0fda..429c76ae11f12e2a40c9f55a250aa5643dc04f60 100644 (file)
@@ -357,7 +357,7 @@ traverse_impl(spa_t *spa, uint64_t objset, blkptr_t *rootbp,
     uint64_t txg_start, int flags, blkptr_cb_t func, void *arg)
 {
        struct traverse_data td;
-       struct prefetch_data pd;
+       struct prefetch_data pd = { 0 };
        zbookmark_t czb;
        int err;
 
@@ -371,10 +371,7 @@ traverse_impl(spa_t *spa, uint64_t objset, blkptr_t *rootbp,
        td.td_flags = flags;
 
        pd.pd_blks_max = 100;
-       pd.pd_blks_fetched = 0;
        pd.pd_flags = flags;
-       pd.pd_cancel = B_FALSE;
-       pd.pd_exited = B_FALSE;
        mutex_init(&pd.pd_mtx, NULL, MUTEX_DEFAULT, NULL);
        cv_init(&pd.pd_cv, NULL, CV_DEFAULT, NULL);