| 475 | } |
| 476 | |
| 477 | void |
| 478 | dir_free_entry(Dir *e, int s, Stripe *stripe) |
| 479 | { |
| 480 | Dir *seg = stripe->directory.get_segment(s); |
| 481 | unsigned int fo = stripe->directory.header->freelist[s]; |
| 482 | unsigned int eo = dir_to_offset(e, seg); |
| 483 | dir_set_next(e, fo); |
| 484 | if (fo) { |
| 485 | dir_set_prev(dir_from_offset(fo, seg), eo); |
| 486 | } |
| 487 | stripe->directory.header->freelist[s] = eo; |
| 488 | } |
| 489 | |
| 490 | int |
| 491 | dir_probe(const CacheKey *key, StripeSM *stripe, Dir *result, Dir **last_collision) |
no test coverage detected