Rev 1147 | Rev 1150 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1147 | Rev 1148 | ||
---|---|---|---|
Line 540... | Line 540... | ||
540 | spinlock_unlock(&a->lock); |
540 | spinlock_unlock(&a->lock); |
541 | } |
541 | } |
542 | 542 | ||
543 | /* |
543 | /* |
544 | * Second, locate the left sibling and test its last record. |
544 | * Second, locate the left sibling and test its last record. |
545 | * Because of its position in the B+-tree, it must have base < va. |
545 | * Because of its position in the B+tree, it must have base < va. |
546 | */ |
546 | */ |
547 | if ((lnode = btree_node_left_sibling(&as->as_area_btree, leaf))) { |
547 | if ((lnode = btree_node_left_sibling(&as->as_area_btree, leaf))) { |
548 | a = (as_area_t *) lnode->value[lnode->keys - 1]; |
548 | a = (as_area_t *) lnode->value[lnode->keys - 1]; |
549 | spinlock_lock(&a->lock); |
549 | spinlock_lock(&a->lock); |
550 | if (va < a->base + a->pages * PAGE_SIZE) { |
550 | if (va < a->base + a->pages * PAGE_SIZE) { |