Home | History | Annotate | Download | only in disk_cache

Lines Matching refs:next

258   node->Data()->next = my_head.value();
264 node->Data()->next = my_tail.value();
281 // y, prev is x and next is z):
286 // 4. r(0, 0), head(0), tail(0) next.Store()
290 // 2. a(x, r), r(a, b), b(a, y), head(x), tail(y) next.Store()
297 // 3. r(r, b), b(b, y), head(b), tail(y) next.Store()
304 // 4. a(x, a), r(0, 0), head(x), tail(a) next.Store()
307 node->Data()->next, node->Data()->prev, list);
312 Addr next_addr(node->Data()->next);
322 CacheRankingsBlock next(backend_->File(next_addr), next_addr);
324 if (!GetRanking(&next) || !GetRanking(&prev))
327 if (!CheckLinks(node, &prev, &next, &list))
331 prev.Data()->next = next.address().value();
332 next.Data()->prev = prev.address().value();
348 my_head.set_value(next.address().value());
349 next.Data()->prev = next.address().value();
355 prev.Data()->next = prev.address().value();
367 node->Data()->next = 0;
372 next.Store();
378 UpdateIterators(&next);
401 ScopedRankingsBlock next(this);
406 next.reset(new CacheRankingsBlock(backend_->File(my_head), my_head));
415 Addr address(node->Data()->next);
418 next.reset(new CacheRankingsBlock(backend_->File(address), address));
421 TrackRankingsBlock(next.get(), true);
423 if (!GetRanking(next.get()))
426 ConvertToLongLived(next.get());
427 if (node && !CheckSingleLink(node, next.get()))
430 return next.release();
497 if ((!data->next && data->prev) || (data->next && !data->prev))
501 if (!data->next && !data->prev && from_list)
508 if ((node->address().value() == data->next) && !IsTail(data->next, &list))
511 if (!data->next && !data->prev)
514 Addr next_addr(data->next);
653 node->Data()->next = my_tail.value();
664 Addr next_addr(node->Data()->next);
678 CacheRankingsBlock next(backend_->File(next_addr), next_addr);
680 if (!next.Load() || !prev.Load())
684 DCHECK(prev.Data()->next == node_value ||
685 prev.Data()->next == prev_addr.value() ||
686 prev.Data()->next == next.address().value());
687 DCHECK(next.Data()->prev == node_value ||
688 next.Data()->prev == next_addr.value() ||
689 next.Data()->prev == prev.address().value());
692 prev.Data()->next = node_value;
694 next.Data()->prev = node_value;
704 } else if (my_head.value() == next.address().value()) {
706 prev.Data()->next = next.address().value();
710 next.Data()->prev = prev.address().value();
714 next.Store();
729 CacheRankingsBlock* next, List* list) {
731 if (prev->Data()->next == node_addr &&
732 next->Data()->prev == node_addr) {
738 prev->Data()->next, next->Data()->prev);
741 node_addr != next->address().value() &&
742 prev->Data()->next == next->address().value() &&
743 next->Data()->prev == prev->address().value()) {
746 node->Data()->next = 0;
752 if (prev->Data()->next == node_addr ||
753 next->Data()->prev == node_addr) {
755 if (prev->Data()->next != node_addr && IsHead(node_addr, list))
758 if (next->Data()->prev != node_addr && IsTail(node_addr, list))
768 CacheRankingsBlock* next) {
769 if (prev->Data()->next != next->address().value() ||
770 next->Data()->prev != prev->address().value()) {
812 address.set_value(node->Data()->next);