Changeset 152b2b0 in mainline for generic/src/mm/as.c


Ignore:
Timestamp:
2006-06-01T14:11:29Z (19 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
7c95658c
Parents:
bd571f44
Message:

Implement recursive function for deallocating the whole B+tree.
Make use of this function in address space management.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • generic/src/mm/as.c

    rbd571f44 r152b2b0  
    162162                ASSERT(!list_empty(&as->as_area_btree.leaf_head));
    163163                node = list_get_instance(&as->as_area_btree.leaf_head.next, btree_node_t, leaf_link);
    164                 if ((cond = node->keys)) {
     164                if ((cond = node->keys))
    165165                        as_area_destroy(as, node->key[0]);
    166                         btree_remove(&as->as_area_btree, node->key[0], node);
    167                 }
    168         }
    169        
     166        }
     167       
     168        btree_destroy(&as->as_area_btree);
    170169        page_table_destroy(as->page_table);
    171170
     
    461460                                page_table_unlock(as, false);
    462461                        }
    463                         if (!used_space_remove(area, b, i))
    464                                 panic("Could not remove used space.\n");
    465462                }
    466463        }
     
    14901487                        if ((cond = node->keys)) {
    14911488                                frame_free(ADDR2PFN((__address) node->value[0]));
    1492                                 btree_remove(&sh_info->pagemap, node->key[0], node);
    14931489                        }
    14941490                }
Note: See TracChangeset for help on using the changeset viewer.