> Note the strange use of continue and break which both achieve the same!
> What was meant to happen (judging from rmap-13c) is that we break
> out of the for-Loop once SWAP_FAIL or SWAP_ERROR is returned from
> try_to_unmap_one. However, this doesn't happen and a subsequent call
> to pte_chain_free will use the wrong value for prev_pc.
Excellent hunting! Thank you!
Your fix should work too, although in my opinion it's a
little bit too subtle, so I've changed it into:
ret = SWAP_FAIL;
ret = SWAP_ERROR;
This is going into 2.4-rmap and 2.5 right now.
-- Bravely reimplemented by the knights who say "NIH".
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to firstname.lastname@example.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/