Does it actually need to go through all of the blocks (only one block should be mapped to this address, right?) It might be able to short-circuit here. This loop should be re-written using a range-based for, anyway.