Project

General

Profile

Bug #6223

libzfs improperly uses an avl tree in namespace_reload

Added by Josef Sipek almost 5 years ago. Updated almost 5 years ago.

Status:
New
Priority:
Normal
Assignee:
Category:
lib - userland libraries
Start date:
2015-09-11
Due date:
% Done:

80%

Estimated time:
Difficulty:
Medium
Tags:
needs-triage
Gerrit CR:

Description

In namespace_reload, libzfs empties the libzfs_ns_avl tree with uu_avl_teardown (really a avl_destroy_nodes in disguise) and then proceeds to insert new items without destroying and recreating the tree.

Recall what avl.h has to say about avl_destroy_nodes:

 * 3. Use avl_destroy_nodes() to quickly process/free up any remaining nodes.
 *    Note that once you use avl_destroy_nodes(), you can no longer
 *    use any routine except avl_destroy_nodes() and avl_destoy().

History

#1

Updated by Josef Sipek almost 5 years ago

  • Description updated (diff)

Also available in: Atom PDF