Print this page
3992 mdb ::stacks segv

*** 19,28 **** --- 19,29 ---- * CDDL HEADER END */ /* * Copyright (c) 1999, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2013, Josef 'Jeff' Sipek <jeffpc@josefsipek.net> */ #include <mdb/mdb_modapi.h> #include <mdb/mdb_ctf.h>
*** 338,347 **** --- 339,350 ---- } if (stacks_array != NULL) mdb_free(stacks_array, stacks_array_size * sizeof (*stacks_array)); + mdb_free(stacks_hash, STACKS_HSIZE * sizeof (*stacks_hash)); + } else if (stacks_array != NULL) { for (idx = 0; idx < stacks_array_size; idx++) { if ((cur = stacks_array[idx]) != NULL) { while ((next = cur->se_dup) != NULL) { cur->se_dup = next->se_dup;
*** 358,367 **** --- 361,372 ---- stacks_findstack_cleanup(); stacks_array_size = 0; stacks_state = STACKS_STATE_CLEAN; + stacks_hash = NULL; + stacks_array = NULL; } /*ARGSUSED*/ int stacks_thread_cb(uintptr_t addr, const void *ignored, void *cbarg)